Question/Issue:
I am working on an embedded AI project using an ESP32 board. I want to integrate motion data from an MPU6050 IMU and audio data from an INMP441 microphone into a single Edge Impulse machine learning model (sensor fusion).
Currently, I’m unsure what the best recommended method is:
- Record motion + audio together as one fused dataset and train one model, or
- Train two separate models (IMU model + audio model), then merge the deployment code and adjust metadata / axis names to avoid clashes.
I found the Edge Impulse tutorial on embeddings sensor fusion, but it does not explain how to collect/record both IMU (x,y,z) and audio together from an ESP32 in the Data Acquisition stage:
I would like guidance on the recommended approach and how to structure data collection correctly.
Context/Use case:
The goal is to develop an embedded AI classification application using both motion (MPU6050) and sound (INMP441).
Example use case: fall detection + distress voice detection.
Final model will be deployed on ESP32.
Steps Taken:
- Connected MPU6050 to ESP32.
- Connected INMP441 microphone to ESP32.
- Recorded audio samples using
edge-impulse-daemonat 16 kHz. - Recorded IMU samples using
edge-impulse-data-forwarderat 20 Hz (ax, ay, az). - Attempted to combine both datasets into one Edge Impulse project for sensor fusion.
Expected Outcome:
I expected to be able to collect synchronized audio + IMU data for the same label (same recording session), configure an impulse that uses both signals, train a fused model, and deploy it on ESP32.
Actual Outcome:
I can record accelerometer data at 20 Hz and audio data at 16 kHz, but not simultaneously as one recording.
I am unsure how to correctly acquire both IMU + audio together in Edge Impulse (i.e., one sample containing both x/y/z and audio), and whether the recommended method is:
- One fused dataset + one model, or
- Two separate models then merging firmware/code and modifying metadata/axis names to avoid clashes.
The embeddings sensor fusion tutorial explains combining embeddings/features but does not show how data is recorded/ingested from ESP32 with both sensors at once.