Introduction
Machine Learning in the wireless edge-device space leverages the processing power of the local microprocessor to minimize the amount of data being transmitted. Since radio transmissions are high current events, this lowers the overall power being used and extends the battery life. Machine learning can be used in many applications where transmission of the raw data is less useful and more costly than only transmitting an indicator that a given state has been detected.
Setup
In this blog I used a X-NUCLEO-IKS02A1 expansion board to provide an IMP34DT05 microphone sensor for the nRF52840-DK. Using the Edge Impulse machine learning system and firmware, I trained the system to recognize the sound of a whistle in various environments. I then used Nordic UART service to implement a BLE peripheral to transmit the presence of the whistle to a mobile device. Other use-cases of this setup might be to detect a leaking water pipe, a barking dog, breaking glass, pre-detonation in an internal combustion engine or many others.
Build and Test the Audio Classifier
Following these steps from Edge Impulse, perform the following tasks to train and deploy an audio classification impulse to the nRF52840-DK:
Now that we have a trained machine learning impulse running and generating accurate results, it’s time to add that to a Nordic BLE peripheral and send the whistle detection to a mobile device. We'll use the Nordic UART Service to easily transmit the whistle detections to the UART app within nRF Connect for Mobile.
Modify the peripheral_uart Example to Send Whistle Detections
These steps will be added soon ...
Happy to see this post.