Skip to content
Ohmic Audio

Vehicle Networks, DSP Control, And Retained Functions

Intermediate → expertEstimated lesson: 90 minutesBench-firstVehicle-specific service data required

What You Will Be Able To Do

The Rule That Replaces “Tap The CAN Wires”

Name every layer, start on an isolated bench, use the least privilege required, and prove that the integration fails quietly, sleeps correctly, preserves every required function, and can be restored.

The Seven Layers

Vehicle architecture

modules, domains, gateways, service paths, security boundaries, and retained functions

Physical network

CAN, LIN, A2B, MOST, Ethernet, wiring, transceivers, topology, termination, and power

Protocol and data

frames, schedules, streams, diagnostics, counters, checksums, timing, and application meanings

Audio transport

PCM or encoded payload, clocks, receiver, decoder, renderer, channel map, DSP, DAC, and amplifier

DSP control

boot, I2C/SPI, program, parameter map, presets, safe updates, readback, watchdog, and fallback

Vehicle state

off, standby, accessory, run, crank, retained power, shutdown, sleep, wake, update, and fault

Verification

loading, errors, parked current, audio, retained functions, security, bypass, evidence, and regression

Reference Bench

bench supply with current limit
→ ESP32-S3 controller
  ├─ I2C or SPI → Wondom ADAU1701 control port
  ├─ TX/RX → correct external CAN or LIN transceiver → isolated bench bus
  └─ USB / local UI → named commands, logs, and test control

stereo reference source → Wondom analog inputs
OUT 1 → left reference
OUT 2 → right reference
OUT 3 → derived-center experiment
OUT 4 → rear-fill / ambience experiment
→ safe line-level scope or analyzer first
The ESP32-S3 is not a direct vehicle-bus interface.

Its TWAI controller needs an external CAN transceiver and supports Classical CAN frames, not CAN FD. LIN also needs a LIN transceiver. Keep all active communication on an isolated bench until a vehicle-specific approved interface and complete safety case exist.

1Define The Integration Contract

Record vehicle, trim, factory audio, software, sources, controls, chimes, calls, cameras, microphones, ANC, alerts, amplifier, required presets, service access, parked-current limit, and acceptance criteria.

State what the added controller is allowed to do. Prefer named audio commands such as preset select, volume within range, mute, status read, and fault reset. Do not expose arbitrary CAN transmission or DSP memory writes.

2Draw The Vehicle Network Map

  1. Identify head unit, factory amplifier, body controller, gateway, diagnostic connector, audio network, and local subnetworks.
  2. Separate network domains and gateway sides.
  3. Record connector, physical layer, transceiver, topology, termination, power, wake, and sleep behavior.
  4. Mark safety-critical and prohibited domains.
  5. Choose the lowest-risk integration boundary.

3Build An Isolated CAN Bench

  1. Use two known Classical CAN nodes, correct transceivers, correct termination, and current-limited power.
  2. Verify controller and transceiver logic levels and powered-off behavior.
  3. Demonstrate standard and extended frames, arbitration, acknowledgement, errors, and bus-off recovery.
  4. Enable listen-only or hardware transmit inhibit for observation exercises.
  5. Do not attach the ESP32-S3 TWAI peripheral to CAN FD traffic.

4Build An Isolated LIN Bench

  1. Define one commander, one responder, schedule table, bit rate, identifier, payload, checksum, and wake behavior.
  2. Use LIN transceivers rather than direct UART pins.
  3. Capture header and response timing.
  4. Test missing response, checksum error, sleep, wake, and unpowered states.
  5. Keep actuator commands off the vehicle network.

5Separate OBD From General Vehicle Control

The diagnostic connector, transport, standardized emissions services, manufacturer-specific diagnostics, gateway authorization, and application data are separate layers. Preserve codes and context before clearing anything. An installed telemetry adapter must also pass sleep-current, security, service-tool, and retained-function tests.

6Map The Automotive Audio Network

QuestionRecord
transportA2B generation, MOST speed and physical layer, Ethernet profile, analog, or another defined path
payloadstereo PCM, discrete PCM, encoded surround, microphones, control, or metadata
timingclock owner, sample rate, slot or stream allocation, synchronization, latency
processingreceiver, decoder, renderer, SRC, DSP map, DAC and analog output
functionscalls, chimes, alerts, ANC, microphones, controls, diagnostics and fallback

7Choose Wondom Boot Ownership

Self-boot

EEPROM provides the protected known-good project; controller attaches after boot.

Host boot

Controller writes program, parameters and registers in the documented order.

Hybrid

Self-boot baseline followed by limited versioned controller updates.

For the enclosed Wondom, inspect the actual board revision, EEPROM, address straps, reset, programmer connector, supply, and accessible control pins before selecting the architecture.

8Create A Versioned DSP Control Contract

A DSP schematic change can invalidate controller addresses. Firmware and DSP project must therefore be released together.

9Implement Safe Commands

command received
→ authenticate / authorize
→ validate project and state
→ validate name, range, rate and sequence
→ mute or use safe update if required
→ write parameter group
→ read back or verify result
→ log event
→ restore audio with slew

Reject malformed, stale, repeated, out-of-range, unauthorized, and wrong-version commands.

10Control More Than One DSP Correctly

A controller may address several DSPs through separate chip addresses, buses, enables, or multiplexers. That still does not distribute audio or synchronize sample clocks.

FunctionRequired path
parameter and preset controlI2C, SPI, GPIO, or another supported control bus
audio between DSPsdefined analog, I2S, TDM, A2B, or other audio transport
sample synchronizationdocumented common or recovered audio-clock architecture
simultaneous state transitioncontroller transaction, mute sequence, acknowledgement and verification

11Build The Wake And Sleep State Machine

  1. Keep outputs muted through boot and project verification.
  2. Load or confirm the protected preset.
  3. Enable amplifier remote only after the DSP path is valid.
  4. Slew audio to the approved level.
  5. On shutdown, mute first, disable amplifiers, save only approved state, then sleep.
  6. Measure current from key-off through final vehicle sleep.
  7. Test crank, stop-start, brownout, retained accessory, door wake, reconnect, and update.

12Design Telemetry Without Creating A New Failure

Telemetry should report named, bounded states such as source, preset, temperature, voltage, limiter activity, communication health, and fault status. Define sampling rate, timestamp, validity, missing-data behavior, privacy, storage, and network load. Do not poll a vehicle network so aggressively that the logger changes the system it is measuring.

13Verify Retained Functions

14Run Fault And Security Tests

  1. controller reset during a parameter write
  2. communication loss
  3. wrong DSP project map
  4. invalid and unauthorized command
  5. network bus-off or missing node
  6. power loss during update
  7. sleep or wake during an unfinished operation
  8. remote connection lost
  9. bypass and known-good recovery

Every result must define output mute, amplifier state, retry, log, user indication, and service action.

15Commission And Release

Tie the network map, controller firmware, DSP project, EEPROM, address map, interface configuration, retained-function matrix, parked-current log, fault results, bypass procedure, and regression evidence to one system release record.

Troubleshooting Matrix

FindingDo not assumeMeasure next
CAN logger sees no framesvehicle bus is deadbus type, gateway side, transceiver, bit timing, sleep state, CAN FD compatibility
DSP responds but audio is wrongI2C communication proves correct stateproject version, address map, data format, route, live readback, audio path
vehicle battery drainscontroller current alone is the causegateway wake, transceiver state, USB back-power, polling, amplifier remote, delayed sleep
music works but chimes disappearaudio interface is completenetwork node roles, retained channels, mixer, source priority, fault and fallback states
preset name is correct after rebootall live parameters restoredreadback, routing, limiter, mute, source offsets, EEPROM and controller state

Quick Knowledge Check

Why does the ESP32-S3 need an external CAN transceiver?

The TWAI peripheral is a protocol controller. The transceiver provides the ISO-compatible physical bus interface and automotive electrical behavior.

Why does I2C control not synchronize two DSPs?

I2C moves control information. Audio timing requires a defined sample-clock and audio-transport architecture.

Why is network lock not proof of correct multichannel audio?

The payload, decoder, renderer, channel map, DSP, DAC and analog output may still be wrong.

What is the default development order?

Documentation, isolated bench, read-only observation, approved interface, low-level vehicle validation, then complete commissioning.

The complete 12-question data set is stored beside this lesson for future interactive use.

Continue