The Cochlea Firmware

A project log for Hear Hear

An open source adaptive hearing aid

Liam MarshallLiam Marshall 08/16/2014 at 18:310 Comments


The Cochlea firmware is configured and built with Antares. The standard functions are provided by AVR Libc. It is compiled with avrgcc. Serial libraries are courtesy of Nekromant/Antares. BC127 libraries are adapted to plain AVR C from Sparkfun's BC127 library.

The Firmware Design

The firmware simply searches for transmitters in range and pairs to the first found, and then requests new audio. The status from the firmware is outputted on an LED near a button controlling most firmware functions.

By pressing the button, the audio is muted both on the BC127 and on the headphone amp (which reduces hiss). The button triggers an ISR to do this. While the button is muted, the LED will fade in and out.

On the side of the device, a Volume+ and Volume- button exist. They are wired such that each button triggers an interrupt which checks to see which button is pressed. Upon doing so, the BC127's volume is modified.