Hear Hear

An open source adaptive hearing aid

Similar projects worth following

The percentage of humans age ≥ 65 in the US is going up; and many seniors have

moderate to severe hearing loss.

The original aim of this project was to design and build a system whereby audio from a television could be replicated in a pair of headphones that a hearing-impaired person would wear.

That system worked amazingly, and, after thinking about it for a while, I've decided to build, instead of just a television hearing aid, a general-purpose DSP'ed hearing aid. I aim to construct something that a person would not feel uncomfortable wearing for an entire day, yet is much cheaper and works better than many expensive but low-performance commercial hearing aids.

The size constraints I've set myself necessitate a stack of boards. Each board is going to be approximately 1x1cm, and will stack using vertical push-fit SMT connectors.

  • 1 × STM32F4 Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 1 × MPU-6050 9-axis IMU/Motion Processor
  • 1 × CC8520 TI PurePath 2-channel wireless I2S audio chip
  • 1 × CC2590 RF Extender/Matcher/Filter

  • PCBs for γ-FM transmitter assembled and working

    Liam Marshall12/13/2014 at 17:58 0 comments

    Super cool to see my code running on a board I made:

    The exception was freaking out when I unplugged the board :)

  • Progress update

    Liam Marshall12/07/2014 at 00:51 0 comments

    This Christmas, I'm working on a new FM-based system, and PCBs for it.
    Most of the files are under the vf0.1 heading

    I've also been working on Stirrup, a new firmware for that system.

    I'll be putting up some pictures soon too.

  • System Design Document

    Liam Marshall08/20/2014 at 22:55 0 comments

    Knocked together from what's in my head. It'll be updated later.

  • Moving Cochlea to Arduino (powered by Ino) and various updates

    Liam Marshall08/20/2014 at 21:15 0 comments

    Well, it turns out that the BC127 library was beyond my skills to port in a small amount of time to plain C.

    Thus I've moved to Arduino, and dropped the Arduino IDE in favor of Ino.

    Development is commencing today. ISRs will be assigned soon, as well as pins. Board layout is nearly done, with only the headphone amp to route. The system design document will be finished today, as well as the video.

  • Moving along with firmware

    Liam Marshall08/18/2014 at 21:48 0 comments

    Hey all,

    Cochlea's progressing pretty quickly right now.
    I've got some pretty cool stuff planned, including bare C(++) BC127 libraries.

    See what I've done and not done (yet) on my Waffle board.

  • The Cochlea Firmware

    Liam Marshall08/16/2014 at 18:31 0 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.

  • Design, and why I haven't posted for a while

    Liam Marshall07/11/2014 at 16:25 0 comments

    First of all, sorry I haven't posted for so long: I've been working with MAYDAY.US, and working on my Mendel90, so I haven't had much time to work on this.

    But I thought I'd let people know that I've worked out *generally* how the units will look and work.

    The receiver

    The receiver will be a little larger than a Square credit card reader, as I said before.
    Here's a picture of a Square reader, if you haven't seen one before:

    The credit-card accepting side will be closed, obviously, and the headphones will plug in where the TRRS jack sticks out in the Square reader. If anyone knows of 3d models of Square devices, post them in the comments below.

    The "square" in the centre of the top will be a button with a RGB LED behind to signal status.

    The transmitter

    The transmitter will be fairly large, in fact larger than it needs to be, about the size of a WRT54G router.
    The reason for this is that it's going to sit in the TV cabinet, it needs to be large and heavy enough to counteract the torsion of the cables connecting to it.

    Very little of the inside space will be used, the front panel, and connector/transmitter PCBs will be separate, with ribbon cable connecting the front to the back.

    The lights on the front will be such as power, paired, that sort of thing.

    And what's the point of this post?

    Because I need to know around what size I'm aiming for to be able to better understand constraints, positioning, etc.

  • FM radio α version of Hear Hear

    Liam Marshall05/21/2014 at 20:00 0 comments

    As an α-test for user interface design, I knocked up a transmitter and reciever using the NS73M FM transmitter and the Si4703 FM tuner.

    Ahh, ugly cardboard boxes. I can't wait to be rid of thee ;)

    It worked well; I alpha tested it on Star Wars ;)

    The volume knob was a *bit* strange, gave the illusion of analog sensitivity *but* only had 16 levels.
    The mute button works well; but the horrendous flashing of the power light when it's muted has to go.
    Same with the debugging startup flashes. And *never* use a 10mm led on anything that's going to be used in a darkened room that should stay dark ;)

View all 8 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates