Due to the ongoing pandemic, Nathaniel Felleke’s family dog, Clairette, had gotten used to having people around her all the time and thus developed separation anxiety when the family would leave the house. But thanks to some clever thinking, Felleke came up with the idea to automatically detect when his dog started to bark and play some sounds of his family speaking to calm her down.
In order to detect when the dog is barking, Felleke collected plenty of audio samples from Google’s Bark Audioset, his own samples, speech commands, and miscellaneous cat and dog noises to distinguish background audio from a bark. After passing them into Edge Impulse’s Studio and creating a keyword spotting model, he downloaded the resulting model, which was then loaded onto a Nano 33 BLE Sense. If a bark is detected using the BLE Sense’s onboard microphone, it toggles a pin high to alert a separate Arduino Nano that a random human speech sound needs to be played by sending a command an attached Music Maker Feather Board.
To see this project in action, you can watch Felleke’s demonstration video below. For the code and resulting tinyML model, his files are available here on GitHub.