tabula

Tools for Behringer X32 / Midas M32 consoles — emulator, remote GUI, show recording.

View the Project on GitHub yoda-jm/tabula

tabula

Tools for Behringer X32 / Midas M32 digital consoles, written in Go.

Download

The latest build, made from the main branch each time its tests pass:

System Download
Linux, x86-64 tabula-linux-amd64.tar.gz
Linux, ARM 64-bit (Raspberry Pi 3/4/5 with a 64-bit system) tabula-linux-arm64.tar.gz
Linux, ARM 32-bit (Raspberry Pi 2 or later with a 32-bit system) tabula-linux-arm.tar.gz
macOS, Apple silicon tabula-darwin-arm64.tar.gz
macOS, Intel tabula-darwin-amd64.tar.gz
Windows, x86-64 tabula-windows-amd64.zip

Each archive holds both programs, tabula-emu and tabula, with the web GUI built in: unpack it and run them, nothing to install. Checksums: SHA256SUMS. On macOS, the binaries are not signed: allow them once with xattr -d com.apple.quarantine tabula tabula-emu.

Versioned releases, with their notes, are on the releases page.

tabula-emu — a console on your laptop

tabula-emu speaks the console’s OSC protocol on UDP port 10023, so remote apps — X32-Edit, M32-Edit, Mixing Station, the tabula client — can connect to it as if it were a console. Use it to prepare a show offline, to develop and test software, or to learn the console without one.

tabula-emu -scene my-show.scn -save my-show.scn -http :8032

The debug page: the connected clients and their meter subscriptions, the requests the emulator did not understand, and every parameter

What works today

How the emulator simulates the console: audio flow, meters, RTA, effects, and exactly what linking two strips does.

Not yet

Scene safes and snippet filters on recall: see the plan.

tabula — the client

tabula connects to a console (or to tabula-emu) and serves a web GUI, from the same binary, to any browser on the network — a laptop at the desk or a phone on stage.

tabula -console 192.168.1.62 -http :8033

The mixer: inputs 1-16 of a show with the names and colours of the console, meters, faders and mutes

The Channel page of a vocal: config, preamp with its headamp, and the EQ with the RTA after the EQ A musician's in-ear mix on a phone: one tall fader per source and their own volume

It is read-only until writes are armed, after a confirmation: on a real console, nothing moves by accident. Every page of the GUI in detail. -record starts recording as soon as the console is synced, for unattended recording of a concert (-audio-device hw:CARD=X32,DEV=0 -audio-tracks 1-16 adds the audio).

Later: more band-specific screens.

Reference

The protocol work relies on Patrick-Gilles Maillot’s Unofficial X32/M32 OSC Remote Protocol and his tools: https://sites.google.com/site/patrickmaillot/x32.

Source code: https://github.com/yoda-jm/tabula