AudioX is a Raspberry Pi audio workstation with USB audio, a configurable signal-routing graph, effects, a soundboard, MIDI control, Bluetooth audio, and named Lua automations. Control it from a browser, a MIDI controller, or a supported touchscreen.
AudioX is under active development and is not yet stable. Raspberry Pi 4 Model B and Raspberry Pi 5 are hardware-tested; the Pi 5 framebuffer UI has not been tested with a connected display. Keep a configuration backup and a known-good image. Automatic update reversion cannot recover from every early-boot failure.
- Download the image for your board from the AudioX website.
- Flash an SD card using the installation guide.
- Connect the Pi's USB-C device port to a computer with a data-capable cable.
- Open
http://audiox.local/orhttp://172.31.73.1/. - Follow the routing guide to connect an input to an output.
Flashing erases the selected drive. The device serves an unauthenticated, plain-HTTP control interface; keep it on a trusted local connection and do not expose it to the internet.
- Route USB, ALSA, Bluetooth, and soundboard audio through processing nodes.
- Apply gain, distortion, pitch, reverb, noise gate, and multi-channel cut.
- Play short soundboard clips from the browser, MIDI, or local display.
- Map MIDI controls, drive controller lighting, and use one-way MIDI passthrough to a USB host.
- Run bounded Lua scripts for sound, effects, volume, MIDI, lighting, and keyboard actions.
- Back up and restore settings, inspect logs, and install firmware updates.
AudioX uses a custom C++ audio engine and two-stage initramfs image. It is not a Raspberry Pi OS application and does not use PipeWire or JACK.
The documentation site covers setup, operation,
and development. Markdown sources are in docs/.
| Topic | Guide |
|---|---|
| Installation, hardware, and networking | Getting started, Hardware, Networking |
| Web control and local display | WebUI, Display and touch |
| Signal flow and levels | Routing, Effects, Volume |
| Clips, MIDI, and Bluetooth | Soundboard, MIDI, Bluetooth |
| Automation | Scripts, Lua API, Cookbook |
| Native effect development | Plugins and AXM format |
| Backups, updates, and diagnostics | Config, System, Troubleshooting |
| Builds and releases | Development, Publishing |
| Persistent files and HTTP API | Reference |
Use Linux with the AArch64 cross toolchain and dependencies in the development guide.
make pi4_defconfig
make menuconfig
make initramfsThe build produces out/initramfs.cpio.gz and out/program.cpio.gz.
make image creates an SD image; make update_archive creates an AXU firmware
archive. Build targets create host-side files. make dev, make upload_update,
and export targets modify a device or card; review their instructions first.
Test targets are defined in tests/Makefile and included
from the root Makefile. Run the relevant targets from the repository root.
QEMU and desktop audio tests do not replace physical hardware validation.
To build the documentation:
npm ci --prefix docs
npm run docs:build --prefix docsFocused contributions, hardware testing, reliability work, and documentation updates are welcome. Read CONTRIBUTING.md and docs/TODO.md before starting a larger change. Issue reports are most useful with the Pi model, firmware and kernel versions, connected hardware, reproduction steps, and relevant logs.