DIY Arduino Hearing Test Device

Arduino hearing test device overview

Hearing loss is a common problem for many – especially those who may have attended too many loud concerts in their youth. [mircemk] had recently been for a hearing test, and noticed that the procedure was actually quite straightforward. Armed with this knowledge, he decided to build his own test system and document it for others to use.

audiogram showing the results of the arduino hearing test device
Resultant audiogram from the device showing each ear in a different color

By using an Arduino to produce tones of various stepped frequencies, and gradually increasing the volume until the test subject can detect the tone, it is possible to plot an audiogram of hearing threshold sensitivity.  Testing each ear individually allows a comparison between one side and the other.

[mircemk] has built a nice miniature cabinet that holds an 8×8 matrix of WS2812 addressable RGB LEDs.  A 128×64 pixel OLED display provides user instructions, and a rotary encoder with push-button serves as the user input.

Of course, this is not a calibrated professional piece of test equipment, and a lot will depend on the quality of the earpiece used.  However, as a way to check for gross hearing issues, and as an interesting experiment, it holds a lot of promise.

There is even an extension, including a Class D audio amplifier, that allows the use of bone-conduction earpieces to help narrow down the cause of hearing loss further.

There’s some more information on bone conduction here, and we’ve covered an intriguing optical stimulation cochlear implant, too.

18 thoughts on “DIY Arduino Hearing Test Device

    1. It could have a use in conjunction with professional hearing checks… i.e. get a hearing test done by a qualified professional using calibrated equipment to establish a baseline… then use your own device to periodically monitor for changes.

      If you notice things turn south, go get another professionally-conducted hearing check and bring along your homebrew test results.

      It most definitely isn’t a 100% replacement, but it may save having to do proper tests quite so often.

        1. Indeed there are apps to do this with a smartphone. As others have pointed out the DACs and DDS on a smartphone will probably give better pure sinewave tones. (Search for ‘hearing test’ for your sort of phone OS.) As (different) others have pointed out this is perhaps not so much an absolute test but a relative one whereby a person can look for CHANGES in the results of the test indicating that professional testing may be required.

      1. It sure is, for starters, the reading is in volume (amplitude) not dB’s as the picture shows. Also, there’s that equal loudness curve, the way we perceive sound. Eg 200 Hz needs about the most dB’s to be audible, 3500 Hz, the most sensitive tone for our ears only need a fraction of the 200 Hz in energy (dB). This equal loudness curve has no formula, it’s determined by numerous hearing test. Also, the frequency scale needs to be logarithmic or the spectro graph is not very useful.
        But anyway, a good tip, I’m a sound engineer. I like to check my ears, I love my ears. Next week scheduled for dokters appointment for a ‘professional’ cleaning of the ear canals. It’s like my eardrum get’s stuck and I often think something is out of phase, like when you’re in a descending airplane.

    2. Perhaps it’s more foolish to jump to conclusions, the word diagnose or self-diagnose doesn’t occur in the article. Personally i think it’s a nice build and i can see various uses. In some cases it might even lead to someone visiting an audicien.

    3. Why not? The KBEAR musician’s earbuds seem to be taken directly from an old hearing aid design, as good a jumping off point as any. Also would be useful for the tester as they are quite accurate.

      I always feel like the medical stuff is locked up instead of open. Which is ridiculous.

    4. Doctors who actually diagnose are very very rare. I like to say that the show “House” is science fiction. Most of them just collect data and do what software tells them to do. “Theodoric of York” is still the modern reality.

    5. I hope so! I worked in the hearing aid industry for 7 years and it’s a racket. The first hearing aids up thru the early 2000s had 3 transistors, a few resistors, a mic, and a “speaker”. The parts cost around $7, and the hearing aids sold for $800-$3500 at the time. Digital Aids probably actually cost less in quanity because the gain curve can be programmed with a tablet, phone, or PC saving the custom circuitry and is much more accurate and can offer multiple presets. So yes someone get on an open source design!
      Need a graphic equalizer chip or DSP processor that runs on ~1.25 VDC.
      There’s no secret sauce in a hearing aid, the sellers would like that you continue to believe that though so they can continue marking them up 6000%.

  1. The key word is “pure”. It’s supposed to be as close to a perfect sine wave as possible. Tones generated by an arduino using simple DDS, you’ll get a lot of modulation especially at the higher frequencies that approach the Nyquist limit of the tone generator. That tends to cause audible artifacts in the lower frequencies while you’re listening to the higher frequencies.

    If you take the simple tone generator code and do a frequency sweep across the band, you’ll probably hear two sounds – one ascending and the other one descending. The descending sound is the folding of the tone frequency against the sample rate. If you’re generating a tone with higher harmonics, like a square or a triangle wave, those harmonics get folded downwards and make a complex pattern that looks on a spectrogram like the tail end of the harmonic series was folded or mirrored backwards.

  2. Sure. Why the heck not? The FDA now allows OTC hearing aids. In part because ‘professional’ audiology and testing and hearing aids suck for a significant portion of the hearing impaired population.

    About 16 years ago, it became an imperative (per my wife) that I get hearing aids. After 4 years and three pairs of hearing aids, and dozens of trips to the audiologist for adjustments, and almost $20,000USD, it became obvious that these people did not know squat. It was time to take matters into my own hands.

    I bought into the Teensy 3.0 kickstarter and started researching codecs. I had a programmable, and cumbersome hearing aid in about 14 months. Using the correct processing, I could discern my wife’s speech in a crowded restaurant, I could understand TV speech without blasting out my wife’s ears, and I understood multiple speech sources in conference-room environs. The Teensy 3.2 greatly improved processing and the number of ‘profiles’ available. And I added an SD socket to record stuff.

    Then came the PJRC audio boards (multiple I2S codec channels) which made each subsequent design iteration easy. Then came the Tympan project – bought the first one. I am now about to buy the Rev E Tympan. My tympan performs better than FDA-approved stuff that costs one or two orders of magnitude greater.

    When the available medical technology sucks, screw the FDA and their corporate minions. Do it yourself. And this is from a retired engineer that used to design and build medical stuff.

    As my gunny used to say, ‘too many stupid people, not enough napalm’.

    1. I’ll agree with you there. I went to one recently and the equipment he used looked like it came out of a 50’s horror film. I expect that the results of this arduino unit are at least as good, and probably much better.

      These guys are typically in the business of selling hearing aids. They are not really interested as much in helping your hearing as they are selling high priced hearing aids.

      My father had poor high frequency hearing and all they could do was amplify it until everyone in the room could hear it but I always wondered why the hearing aids couldn’t transform the high frequencies down to a frequency that he could hear. Wouldn’t be too great for music but at least he could hear women’s voices and understand speech.

      I think you’re on to something by designing your own. Don’t have the software skills to do it myself.

      1. The problem is: where do you set a crossover frequency, and how do you detect which sounds near the crossover need to be pitch shifted, and which should be left alone.

        For your father’s example, you could find the frequency he hits -25dB, and pitch shift everything above that down. Let’s pretend that’s right around 600 Hz. (Just above C5) Sure, someone speaking at around 880Hz can have their voice shifted down to 440 pretty easily. But someone speaking right at that 600Hz point . . . half of what they say will be shifted down and half left alone. I will sound really weird.

        Keeping the same knee point in the plot, any voice sounds over 2400 will need to be shifted down by two octaves. So you get to deal with the same problem again.

      2. It depends. I went to an EENT who worked with an attached audiologist. As part of the exam, they wanted to determine if a sinus condition might affect hearing. The audiology equipment was quite up to date – almost. Tympanic back pressure was measured, bone conduction and pure sine sweeps similar to this DIY project. The headset seemed a little cheap, but given the very fancy control console, I assume the headset must have been calibrated despite looking like it belonged on a 1950s Hallicrafters ham radio.

      3. The local university has an audiology program and offers testing and hearing aid fitment to the public. I have not availed myself of their services, but several friends are satisfied with the service. It still expensive, but it is probably more honest than some questionable pop-up strip mall outfit selling hearing aids.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.