The Snoring Guardian listens while you sleep and vibrates when you start to snore
Snoring is an annoying problem that affects nearly half of all adults and can cause others to lose sleep. Additionally, the ailment can be a symptom of a more serious underlying condition, so being able to know exactly when it occurs could be lifesaving. To help solve this issue, Naveen Kumar designed the Snoring Guardian — a device that can be embedded into a pillow to automatically detect when someone is snoring and begin to vibrate as an alert.
The Snoring Guardian features a Nano 33 BLE Sense to capture sound from its onboard microphone and determine if it constitutes a snore. He employed Edge Impulse along with the AudioSet dataset that contains hundreds or even thousands of labeled sound samples that can be used to train a TensorFlow Lite Micro model. The dataset within Edge Impulse was split between snoring and noise, with the latter label for filtering out external noise that is not a snore. With the spectrograms created and the model trained, Kumar deployed it to his Nano 33 BLE Sense as an Arduino library.
The program for the Snoring Guardian gathers new microphone data and passes it to the model for inference. If the resulting label is “snoring,” a small vibration motor is activated that can notify the wearer. As an added bonus, the entire thing runs off rechargeable LiPo batteries, making this an ultra-portable device.
Kumar’s project was recently named a winner in the TensorFlow Lite for Microcontrollers Challenge. You can check out his snore-no-more setup here.