Arduino TeamJuly 20th, 2021

Hyperedge- . IoT, Embedded Systems, Artificial Intelligence,

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 built the Snoring Guardian — a device that can 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, Naveen deployed it to his Nano 33 BLE Sense as an Arduino library.

Hyperedge- . IoT, Embedded Systems, Artificial Intelligence,

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 alert the wearer. As an added bonus, the entire thing runs off rechargeable LiPo batteries, making this an ultra-portable device. You can see a real-time demonstration below as well as read more about this project on

This post was first published on: Arduino Blog