Question/Issue:
When I follow the guide for the nRF54L15 + X-NUCLEO-IKS02A1, edge-impulse-daemon fails to upload the accelerometer data to the Ingestion API.
Project ID:
1048257
Context/Use case:
This bug is relevant to anyone who follows the nRF54L15 guide.
Steps to Reproduce:
- Install
edge-impulse-cli - Follow the nRF54L15 guide
- Open up the project page that
edge-impulse-daemonoutputs - Start sampling accelerometer data
- When sampling finishes,
edge-impulse-daemonwill fail to upload the data.
Expected Results:
I expect edge-impulse-daemon to either successfully upload the data, or provide me with a file to upload to the studio myself.
Reproducibility:
Always
Environment:
- Platform: nRF54L15 DK
- Build Environment Details: NA
- OS Version: Windows 11 and Linux (NixOS)
- Edge Impulse Version (Firmware): v0.0.0
- Edge Impulse CLI Version: 1.39.2
- Project Version: No versions created yet
-
Custom Blocks / Impulse Configuration: NA
Logs/Attachments:
edge-impulse-daemonoutput on Windows:
Edge Impulse serial daemon v1.39.2
Endpoints:
Websocket: wss://remote-mgmt.edgeimpulse.com
API: https://studio.edgeimpulse.com
Ingestion: https://ingestion.edgeimpulse.com
? Which device do you want to connect to? (š type to search) COM7
[SER] Connecting to COM7
[SER] Serial is connected, trying to read config...
[SER] Retrieved configuration
[SER] Device is running AT command version 1.8.0
[SER] Device is not connected to remote management API, will use daemon
[WS ] Connecting to wss://remote-mgmt.edgeimpulse.com
[WS ] Connected to wss://remote-mgmt.edgeimpulse.com
[WS ] Device "nRF54L15" is now connected to project "Anthony24851-project-1". To connect to another project, run `edge-impulse-daemon --clean`.
[WS ] Go to https://studio.edgeimpulse.com/studio/1048257/acquisition/training to build your machine learning model!
[WS ] Incoming sampling request {
path: '/api/training/data',
label: 'Test',
length: 10000,
interval: 10,
hmacKey: 'hidden',
sensor: 'Accelerometer'
}
[SER] Configured upload settings
[SER] Sampling started
[SER] Sampling done
[SER] Device not connected to WiFi directly, reading from buffer (bytes 0 - 16071, expecting to read ~21428 bytes...
[SER] Reading 46% complete...
[SER] Reading 99% complete...
[SER] Reading from buffer OK
[SER] File is 16071 bytes after decoding
[SER] Uploading to https://ingestion.edgeimpulse.com/api/training/data
[SER] Failed to upload to https://ingestion.edgeimpulse.com/api/training/data Error: Failed to upload: 400 Bad Request
at SerialDevice.sampleRequest (C:\Users\user\AppData\Roaming\npm\node_modules\edge-impulse-cli\build\cli\daemon.js:409:35)
at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
at async WebSocket.<anonymous> (C:\Users\user\AppData\Roaming\npm\node_modules\edge-impulse-cli\build\cli-common\remote-mgmt-service.js:247:21)
Note: daemon.js:409:35 corresponds to this line in the edge-impulse-cli repo.