Tools
Cue Monitor
A pyro countdown that reads the same timecode the show does, so nobody has to keep the running order in their head.
The server listens for SMPTE timecode on the audio input and takes the cues straight from the grandMA3 timecode export. On the iPad you see what fires next, how long until it does, and how long it stays open — a big ring in the colour of the family about to go: flame, CO₂, spark, confetti. Every hold-to-test output has a real dead-man behind it.
If anything drops, it closes
A monitor next to a flame line is only worth having if it fails safe. Cue Monitor is built around the moment the network hiccups or a hand leaves the tablet, not around the moment everything is fine.
The dead-man applies to your own button grid. A button pressed on the console's built-in Web Remote is a raw console press — that path is the console's responsibility, and the page says so.
Hold to fire, let go to close
A test button holds its output open only while your finger is on it. Lift off and it closes immediately — no toggle to remember, no second press.
300 ms of silence and it shuts
Holding sends a steady “still here”. If the Wi-Fi drops or the app freezes, those stop arriving, and the output closes on its own within 300 ms — with nobody touching anything.
It never guesses on your behalf
A button with no fresh feedback from the console is not shown as ready. It greys out and wears a question mark, so “armed” always means the console actually said so.
You can see the link, and the battery
A dropped connection is a red bar, and it reconnects by itself. Below 20 % battery it warns you — before the tablet quietly dies in the dark.
What you watch, standing by the stage
One screen answers the only two questions that matter mid-show: what is next, and is there time between this shot and the one after it.
The ring, in the family's colour
The big ring counts down to the next shot and takes the colour of what it is — flame, CO₂, spark, confetti. The number is accurate to a tenth of a second, it flashes for the last five, and on an iPhone it buzzes with them. Next to it sits the time of the cue after that, so you know at a glance whether you can breathe.
A timeline in lanes, with your notes
One lane per track, the NOW line fixed while events arrive from the right. An instant shot is a thin line; something that holds open is drawn as long as it stays open. A cue you asked to be warned about starts blinking yellow the lead time you set, and your notes ride along beside each one.
Timecode off the audio input
The server decodes LTC at whatever rate the card runs — 44.1, 48, 88.2, 96, 176.4 or 192 kHz — without resampling. A per-channel meter shows where signal is arriving; tap a channel and it reads timecode from there, no restart. If you don't know which input it's on, the LTC search walks the channels and stops where it finds a sane frame.
The console stays within reach
Flip the side panel to the grandMA3 Web Remote and your own layout comes up with the real state colours. Or to your own button grid — safety switches and hold-to-test buttons, each showing what the console reports back. It also sends OSC to a cue light and to Companion.
It also keeps count of what actually went out — CO₂ blasts, sparks, confetti, and the seconds of anything that held open — and logs every crossed cue to a fire log and every signal drop or input switch to an operations log. Both print. The simulation you run at rehearsal is never counted into either.
The show comes off the console
Drop the grandMA3 timecode XML export into the xml/ folder, or upload it through the browser song manager. A few tenths of a second later it reads it in on its own, recognising songs by the timecode slot in the export. You tick which track shows on the display and can override the offset per song. Broken or empty exports get listed before the stage finds out for you.
Set up from the tablet
You build the button grid on the server's setup page — which button calls which executor, in what colour, a switch or a hold-to-test — and every button shows what the console says back. Input and channel switch with a live meter in front of you, the sample rate can be pinned by hand, and you step between servers from here too. The server's machine can stay in the rack.
Two ways to run the server
The app is the display. The server is the piece that hears timecode and holds the show, and it runs wherever your rack already is.
macOS · Apple Silicon
Portable Mac app
Unzip, double-click, and the server starts and opens the display in the browser. Node and ffmpeg are inside the bundle, so nothing gets installed on the target machine. Grant the microphone once — without it there is no LTC.
Linux · tour mini PC
Docker package
The server runs in a container; the mini PC only needs Docker. It takes the sound card over ALSA, comes back on its own after a power cut, and advertises itself to the iPad over Bonjour where Avahi is running.
The iPad app finds the server by itself over Bonjour (_pyromonitor._tcp). If more than one server is on the network, you pick — so it never latches onto the wrong machine.
Free to run. You pay for scale.
The app is free on the App Store and the whole show runs on the free tier — one tablet and one browser. The subscription only lifts how many displays your own server will serve at once. It is bought in the app through Apple and unlocked by the server from the receipt; the count is never taken from the client's word.
Free
0 Ft no purchase
1 iPad · 1 browser
The whole show runs. One tablet by the desk and one browser window, which is exactly one operator.
Basic
€4.99 / month · €29.99 / year
3 iPads · 3 browsers
A second position and a spare. Front-of-house sees the same countdown the deck does.
Pro
€9.99 / month · €59.99 / year
10 iPads · 10 browsers
A crew. Every position on a big show, plus the browser displays in the wings.
Advanced
€19.99 / month · €119.99 / year
unlimited
As many displays as the venue has. No count to think about on a festival day.
A subscription is tied to the App Store account that bought it, not to the server. If a paid device leaves the network the server keeps the higher limit for 24 hours, then settles back to free — so a self-hosted rack is never locked out mid-run by a dropped phone.
Support
Write to gergo@riegergeri.com. If something misbehaved during a show, the operations log has the signal drops and input switches with times — send it, and the answer is usually in it.
Privacy
No accounts, no analytics, no cloud. The app only ever talks to your own server on your own network, and the microphone is used for timecode alone — nothing is recorded. Full detail on the privacy policy page.
Also from the workshop
DMX GatewaysACN ↔ Art-Net for show networks →