Audio & Show Control
Behringer X32 / Midas M32 Control Software BETA
Controls Behringer X32 and Midas M32 consoles — full size, Compact, Producer, Rack, Core, M32R and M32C — over OSC on UDP port 10023, the same protocol X32-Edit uses. Fader levels in dB, relative fader moves for dials and +/- buttons…
Handlers run inside Fantago — the file is a plugin, not a standalone program. Start with the free 60-day trial.
How to connect Behringer X32 / Midas M32 to Fantago
- Open the Fantago Dashboard and click Add Device.
- Pick the Behringer X32 Midas M32 handler from the device type list (internal id
behringer_x32). - Enter the IP address of your Behringer X32 / Midas M32, then set protocol OSC-UDP and port
10023. - Save and connect. Fantago starts polling the device and publishes its feedback variables, ready to use in panels, sequences and logic flows.
- Drag the actions below onto a panel button, a Stream Deck key, a schedule or a logic flow node.
| Protocol | OSC-UDP |
|---|---|
| Default port | 10023 |
| Handler version | 1.0.1 |
| Author | Fantago |
| Internal ID | behringer_x32 |
Description & Instruction
/xremote, so the variables follow what
the operator does on the surface.
Setup: protocol OSC, enter the IP of the console, leave the port on 10023 and leave Connection is Persistent unchecked — the handler holds its own socket. The console needs no setting: OSC is always on. Choose in the device settings which strips publish variables.
Variables written (prefix = sanitized device name), four per published strip:
{prefix}ch01_fader_db — fader in dB, one decimal (-inf at the bottom){prefix}ch01_fader_pos — fader position 0–100: the dB scale is not linear (0 dB sits at 75), so a panel fader or rotary follows this one{prefix}ch01_mute (1 muted, 0 live), {prefix}ch01_name (the scribble strip)Strip keys:
ch01–ch32, auxin01–auxin08, bus01–bus16, dca1–dca8, main{prefix}connected, {prefix}model, {prefix}console_name
Command Integration Guide
Behringer X32 and Midas M32 consoles are remote controlled over OSC on UDP port 10023 —
the protocol X32-Edit and the mixing apps use. This handler holds its own socket, subscribes with
/xremote and mirrors fader, mute and name of the chosen strips into Fantago variables.
Connection
- Protocol OSC (over UDP), port 10023. Leave Connection is Persistent unchecked: the handler holds a socket of its own, because it also receives every change made on the console.
- The console needs no setting. Fantago and the console must reach each other both ways — the console answers to the port the request came from.
- On the first answer the handler reads the state of every published strip, and again whenever the console comes back after being unreachable.
- Only the commands sent from Fantago are logged. Log every message received adds the full trace for troubleshooting.
- Four variables per strip are published, for the groups chosen in the device settings (default: channels 1–32 and Main LR, 132 variables). Commands work on every strip, published or not.
Relative fader moves
Fader: Adjust starts from the level the console holds now, including a move just made on the surface, so a +/- button or a dial never makes the fader jump. Two units:
- dB — natural for buttons (+3 dB, −6 dB). From
-infa raise starts at −60 dB. - % of the travel — the same feel over the whole range, like the console fader itself: use it for dials (1 % ≈ 0.4 dB around 0 dB).
Never go above caps a raise (for example at 0 dB); a fader already above it is left where it is.
Panel faders, rotaries and Stream Deck + dials
- Fader or rotary in value mode: action Fader: Set Position with position
{{control_percent}}and position variabledevicename_ch01_fader_pos. - Rotary or dial in steps mode: action Fader: Adjust, unit %, adjust by
{{control_delta}}— each step moves the fader from where the console holds it.
Integration via HTTP GET (device named "X32")
http://<Fantago_IP>:3000/sendTo/X32?cmd=adjust_fader&strip=main&delta=-3&unit=db
http://<Fantago_IP>:3000/sendTo/X32?cmd=set_mute&strip=ch05&state=toggle
Integration via TCP/UDP Listener
X32:adjust_fader&strip=ch02&delta=2&unit=percent
X32:set_mute&strip=dca1&state=on
Notes
- The console ignores a fader sent as an integer. Send Raw OSC Message follows the generic OSC rules (
1is an int,1.0or(f)1a float): write(f)for faders. - A name longer than 12 characters is cut, as on the console.
- Not covered yet: sends, scenes and snippets, EQ and dynamics, meters. Send Raw OSC Message reaches any of them.
Behringer X32 / Midas M32 control — frequently asked questions
Does Fantago support Behringer X32 / Midas M32?
Yes. Fantago includes a ready-made Behringer X32 Midas M32 handler (version 1.0.1) that talks to the device over OSC-UDP, default port 10023. It is bundled with every licence and with the 60-day free trial — there is no per-device fee.
What protocol does the Behringer X32 / Midas M32 handler use?
OSC-UDP, default port 10023. Fantago connects straight to the device over your production network, so no gateway, middleware or vendor software is needed in between.
Can I control Behringer X32 / Midas M32 from a Stream Deck?
Yes. Every Behringer X32 / Midas M32 action can be mapped to an Elgato Stream Deck key, to a button on a custom Fantago touch panel, to a timed schedule, or to a logic flow triggered by another device — including devices from a different manufacturer.
Can I modify the Behringer X32 / Midas M32 handler?
Yes. The handler is a plain JavaScript file (behringer_x32.js) that you can download from this page, edit and drop back into Fantago. You can also write your own handler from scratch — see the Developer Guide.
Control Behringer X32 / Midas M32 from a single interface
Fantago drives Behringer X32 / Midas M32 alongside 50+ other broadcast, lighting, audio and smart home devices — from custom touch panels, an Elgato Stream Deck, a schedule or a logic flow. One-time licence, no subscription, runs offline.