Difficulty uploading 1,000+ small WAV files: Browser timeouts and API 415 errors

Question/Issue: Difficulty uploading a batch of 1,121 small WAV files via the web interface and Ingestion API.

Project Details:

  • Target hardware: ESP32-S3 (M5Stack CoreS3).
  • Dataset: Audio anomaly detection (ToyADMOS/MIMII).
  • Files to upload: 1,121 files (anomalies).
  • File Format: WAV PCM, 16,000 Hz, 16-bit, Mono, 1 second duration (~32KB per file).

Project ID:

904532


**Context/Use case:** Building an industrial predictive maintenance sensor (AudioSentinel). I am currently in the "Robustness" phase (v0.5), adding environmental noise and large batches of anomalous samples to the testing set to improve model generalization.

**Steps Taken:**

1. **Web Uploader**: Attempted to drag and drop the full folder of 1,121 files. The browser stalls during the "Listing files" phase or concludes with "0 files uploaded".
2. **ZIP Upload**: Compressed the files into a .zip archive (35MB) to reduce request overhead. The uploader returned: *"Failed to upload: Extract any archive files before uploading"*.
3. **Python Ingestion API**: Developed a script using the requests library to POST raw binary data to https://ingestion.edgeimpulse.com/api/testing/data

Even with Content-Type: audio/wav and valid API keys, I received 415 Unsupported Media Type or 404 errors.

Expected Outcome: The 1,121 files should be ingested and categorized as Testing with the label anomaly.

Actual Outcome: Total failure of the batch. No files are uploaded via web uploader (timeout/stall) or API (415 error).

Reproducibility:

  • Always (consistently happens with batches over 1,000 files).

Environment:

  • Platform: ESP32-S3 (M5Stack CoreS3).
  • Build Environment Details: PlatformIO on VS Code, using Edge Impulse C++ SDK.
  • OS Version: Windows 10.
  • Edge Impulse Version (Firmware): Studio version v1.46.0 (as seen in deployment).
  • Edge Impulse CLI Version: We attempted to install edge-impulse-cli via npm but encountered version conflicts on the local machine.
  • Project Version: 0.5.0
  • Custom Blocks / Impulse Configuration: Standard Audio MFE/Spectrogram processing followed by a Convolutional Autoencoder for Anomaly Detection.

Logs/Attachments:

  • The files are verified as valid WAV PCM via Python’swavelibrary (16kHz, mono, 16-bit).
  • Upload error log (from Python script): Error 415: Content-type application/cbor or application/json header has invalid value

Additional Information: Earlier in the same session, I successfully uploaded a batch of 3,200 samples to the Training category using the same browser, but theTesting batch (1,121 files) is consistently failing. I have already renamed files to short patterns (anom_1.wav) to avoid path length issues.