Initial commit: Arduino Uno Q USB Audio Synth project

- USB gadget (UAC1 + MIDI) with boot persistence
- USB host mode with auto-detection
- Pure Data synth patch with ALSA + UDP netreceive MIDI input
- MIDI rawmidi-to-UDP bridge (midi-bridge.py)
- LED matrix visualization (led-matrix-viz.py via arduino-router RPC)
- MCU sketch for LED matrix control (Arduino_RouterBridge + ArduinoGraphics)
- Conftest/OPA Rego policy validation suite for .pd files
- gen_synth_pd.py: programmatic .pd file generator
- System services: midi-bridge, led-matrix-viz, pd-synth-auto, usb-role-detect
- Justfile with deploy, enable, diagnostic recipes
- Diagnostic script (diag.sh)
This commit is contained in:
2026-06-22 22:46:36 -07:00
commit 8cd796e3dd
38 changed files with 2681 additions and 0 deletions
+44
View File
@@ -0,0 +1,44 @@
# ALSA configuration for USB gadget audio
# The UAC1 gadget appears as a ALSA card (typically card 1 or 2).
# This config routes Pd audio output to the USB gadget.
# Default PCM device for USB gadget audio
pcm.!default {
type plug
slave {
pcm "hw:UAC1Gadget,0"
format S16_LE
channels 2
rate 48000
}
}
# Control device
ctl.!default {
type hw
card UAC1Gadget
}
# Software volume control via ALSA (hardware may not have mixer)
pcm.softvol {
type softvol
slave.pcm "hw:UAC1Gadget,0"
control {
name "Master Playback Volume"
card UAC1Gadget
}
min_dB -51.0
max_dB 0.0
resolution 256
}
# Null sink for testing when no USB gadget is connected
pcm.loopback {
type plug
slave {
pcm "hw:Loopback,0,0"
format S16_LE
channels 2
rate 48000
}
}