.wav
files (e.g. from Pixabay, Mixkit, Zapsplat, etc.). Other methods to collect data are from devices such as a connected smartphone with QR code link, or a connected Nicla Vision with Edge Impulse audio firmware flashed to it. For ease of labelling, when collecting and uploading data, fill in the name according to the desired label, for example rain
, thunder
, or z_unknown
for your background noise data.
.elf
output generated by the Arduino CLI and change its name to “firmware.ino.elf”firmware.ino.elf
from the default audio firmware, which [needs to be downloaded from here] https://docs.edgeimpulse.com/docs/development-platforms/officially-supported-mcu-targets/arduino-nicla-voice.ino
code here: https://github.com/Jallson/SensorFusion_SmartBuilding/blob/main/weathersoundfusion_niclavoice.ino
Once downloaded, you can upload the .ino code to your Arduino Nicla Voice using the Arduino IDE.
When rain sound is detected, the built in LED will blink blue and send a 1
via I2C. When thunder is detected, the LED will blink red and send a 2
via I2C.
.zip
file. Place this zipped file into your Arduino Library folder.
Now download the .ino
code here https://github.com/Jallson/SensorFusion_SmartBuilding/blob/main/weathersoundfusion_nano_ble33.ino.
Once downloaded, you can upload the .ino code to your Arduino Nano 33 BLE Sense using the Arduino IDE.
In this program, when a byte variable containing 1
or 2
is received via I2C, the Arduino Nano 33 BLE Sense will adjust the window and louver accordingly. If there is no rain or thunder, the sensor fusion inference will start running and the louver and window will be controlled based on the inference result; comfortable, overcast, sunny humid, or sunny dry.