Repository for the Haptic Headband project, an accessibility device for users with limited directional hearing using microphones and vibration motors worn on a headband. It is open source and currently in development.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
s0 652ef6225d Fix embedded board images in README this time 6 months ago
Haptic Headband Control Module Corrected battery connectors in Control Module, updating to v1.3; Added detail and images to README. 6 months ago
Haptic Headband Mic Module First commit. Haptic Headband prototype v1.1/v1.2 6 months ago
Images Corrected battery connectors in Control Module, updating to v1.3; Added detail and images to README. 6 months ago
Haptic Headband BOM & Budget.ods Corrected battery connectors in Control Module, updating to v1.3; Added detail and images to README. 6 months ago
LICENCE.md First commit. Haptic Headband prototype v1.1/v1.2 6 months ago
README.md Fix embedded board images in README this time 6 months ago

README.md

HapticHeadband

Repository for the Haptic Headband project, an accessibility device for users with limited directional hearing using microphones and vibration motors worn on a headband. It is open source and currently in development.

License

Haptic Headband project is Open Source and licensed under the Cooperative Non-Violent Public Licence v7+ (CNPLv7+).

Status

As of 2022-06-19:

  • Overall prototype design settled
  • Control PCB designed V1.3
  • Mic module PCB designed V1.1
  • Both PCBs ordered
  • All components for v1 ordered

Hardware Design Summary

The broad technical design is as follows.

Control Module

52*30mm PCB, populated on only one side. Supports 1S lithium cell (2 Molex 2-pin PicoBlade connectors), allowing two small cells in parallel) charging via USB-C connector. ATTiny424 MCU with I2C bus linked to two PCA9517 I2C buffers, to two external 4-pin PicoLock connectors on either side, which connect to the mic modules. Three tactile buttons and corresponding orange LEDs for user interface. One green LED controlled by MCU and positioned beside slide power switch, probably used to indicate power/standby state. One red LED controlled by MCP73831-2 Li-ion charge chip, to indicate battery charging.

The Control Module will be positioned at the back of the head in the centre, where the buttons can be reached by either hand. Li-ion cell(s) will be either behind the Control Module (hence smooth bottom side), or on either side, symmetrically (hence 2 battery connectors).

ControlModule v1.3 PCB

ControlModule v1.3 3D Front

ControlModule v1.3 3D Back

Mic Module

25*28.25mm PCB, populated on both sides. Two 4-pin PicoLock connectors for the shared I2C bus, which daisychain through. ATTiny424 MCU for control is linked to the I2C bus. A directional electret microphone is populated in the centre of the PCB. Two MCP6007 dual op-amps and passives create a peak detector circuit with 1N4148 diode, which is buffered and goes to an analog input. A BC847 transistor operates the reset for the peak detector. A vibration motor is mounted in the round cutout, controlled by the MCU via another NPN transistor. A TC1055 2.5V LDO provides the op-amp supply, and a 1.25V virtual ground/reference is generated from it by voltage divider and buffer op-amp. The 1.25V reference is provided to the MCU as external analog reference as the MCU is powered by the unregulated battery voltage.

There are options for populating gain resistor with either trimpot or fixed resistor to set the best preamp gain with in-person testing. Likewise the best value of peak detector cap will be decided out of 1u or 10u.

MicModule v1.1 PCB

MicModule v1.1 3D Front

MicModule v1.1 3D Back

Software Design Summary

Software is not yet written, so this is 'as intended'.

The Control Module keeps a Gain variable, which can be manually adjusted using the buttons, to make the device more or less sensitive.

On startup or change, it will inform Mic Modules over I2C of the current Gain value.

Mic modules will operate a simple polling loop translating audio levels to vibration output PWM level, with the given gain value to govern sensitivity in software.

It is hoped that the vibration motors won't have a large interference on the peak detection circuit, by mounting them on shock-absorbing rubber. If they do, software filtering will be added to avoid positive feedback.