Microcontroller Control Of Audio DSPs
Canonical definition: Microcontroller-to-DSP control is the documented exchange of program, parameter, state, command, status, and fault information through a supported control interface such as I2C or SPI. It is distinct from the audio sample path.
Control Path Versus Audio Path
ESP32-S3 or other controller
→ I2C / SPI control
→ DSP program, parameters, registers, state and readback
source or converter
→ analog / I2S / TDM audio
→ DSP audio core
→ DAC / amplifier / speaker
One controller can configure several DSPs while their audio clocks, serial-audio links, converters, and sample timing remain completely separate.
ADAU1701 Boot Choices
| Mode | Owner | Required proof |
|---|---|---|
| self-boot | serial EEPROM loads the DSP after reset | EEPROM image, reset timing, boot completion, live state |
| host boot | controller writes program, parameters, and registers | exported data, order, error handling, version match |
| hybrid | self-boot baseline followed by controller updates | known baseline, wait state, address map, overrides, fallback |
The ADAU1701 supports standalone self-boot and communicates through I2C or four-wire SPI. The exact enclosed Wondom board must still be inspected to learn which pins, EEPROM, address straps, programmer connections, and protections are accessible.
Version The Memory Map
Compile and export the DSP project, then bind the firmware to that exact build. A schematic edit may move parameter addresses or change formats even when a control looks identical in SigmaStudio.
- project and compiler version
- program, parameter, and register exports
- symbol or address map
- fixed-point formats and ranges
- preset and safe-default values
- readback and validation method
Safe Runtime Updates
Single controls may use slew-enabled DSP blocks. Multi-coefficient filters and related parameter groups require the device's documented safe-update method so a partially written state cannot reach the audio core. Mute or bypass when an atomic or safe update cannot be guaranteed.
Controller State Machine
- hold output and amplifier path safe
- reset or wait for self-boot
- verify communication and project identity
- read or apply the protected baseline
- enable audio with slew
- validate every command and range
- log errors and read back critical state
- mute and fall back on communication loss or watchdog fault
- save only approved persistent values
Do not expose unrestricted DSP addresses, vehicle-network transmit, limiter bypass, or unsafe gain controls through Wi-Fi, Bluetooth, web, or CAN interfaces. Use named commands, range checks, authentication, rate limits, logs, and a protected fallback.
Wondom Bench Demonstration
Use OUT 1 and OUT 2 as left/right references, OUT 3 as a derived-center experiment, and OUT 4 as rear ambience. Commission controller writes for level, mute, routing coefficient, preset, and limiter state at line level. Then test reset, self-boot, lost communication, stale address map, interrupted update, power cycle, and known-good reload.