crosspad_audio_route
Read or set audio routing on a connected CrossPad: query current mic source, ADC inputs, DAC outputs, volumes, and mutes, or apply changes to input sources, output routes, volume, and mute per codec.
Instructions
[ESP HW] Runtime audio routing control on a connected CrossPad, over USB MIDI SysEx (CROSSPAD_CMD_AUDIO_ROUTE 0x1D; Linux, needs alsa-utils amidi). Works in both USB modes.
• action='query' → read back the full routing state (mic_src, ADC inputs, DAC outputs, volumes, mutes).
• action='set' → apply any subset of: adc_input ('diff'|'line1'|'line2'), mic_src (0|1), dac_output ('line1'|'line2'|'all'), volume (0-100), mute. Per-codec fields need codec (0|1).
Notes: codec1 LINE1 is the near-unity PCB loopback path (compresses above ~0.2 FS input); routing reverts to firmware defaults on device reset.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mute | No | Codec output mute. | |
| codec | No | Target codec for adc_input/dac_output/volume/mute (0 = stock mic path, 1 = PCB-loopback codec). | |
| action | Yes | 'set' applies routing changes; 'query' reads the current state. | |
| volume | No | Codec output volume 0-100. | |
| mic_src | No | Which codec feeds the USB mic path. | |
| adc_input | No | ADC input mux of `codec`: differential, LINE1 (PCB loop on both codecs) or LINE2 (floating). | |
| dac_output | No | DAC output route of `codec`. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| port | No | ||
| sent | No | ||
| error | No | ||
| state | No | ||
| success | Yes |