Remote Control
Modulaser has a built-in web remote. Turn it on, open a browser on your phone or tablet, and you get a live operator panel for the running show: trigger clips, step cues, run the timeline, tap tempo, and arm lasers, all from your hand.
This is entirely over the local network, no cloud is involved.
Turning It On
Open Settings (CmdCtrlCmd/Ctrl + ,), go to the Remote tab, switch on Enable remote control, and pick the port (default 9620). Access must be Local network (the default) for other devices to reach it. This computer limits the remote to a browser on the show machine.
The tab shows Listening on 0.0.0.0:9620. From your phone or tablet, browse to http:// followed by the show computer's IP address and that port. The Open button opens the page on the show computer itself.
Keep both devices on the same network. If the show machine is wired, put your phone or tablet on the matching Wi-Fi.
Pairing a Device
Every device pairs once. This keeps a random phone on the venue Wi-Fi from arming a laser.
- In Settings → Remote, click Generate pairing code. It is a 6-digit code that works once and expires after 2 minutes.
- Open the address in a browser on your phone or tablet.
- Enter the code and a device name in the browser.
Paired devices are listed in Settings → Remote with a name and a last-seen time. Revoke one, or revoke all, whenever you want.
What You Can Control
These are the features you can control with the remote:
- Clip grid: connect clips to output groups and focus a clip, with thumbnails
- Output groups: retarget or clear each group, ride its opacity, and toggle and adjust its effects
- Cue transport: GO, next, previous, stop
- Timeline transport: play, pause, stop, seek, loop (internal clock only; with external timecode the remote shows the position but can't control it)
- Blackout and arm all / disarm
- BPM tap
- Macros: ride the focused clip's six macro faders
Because everything routes through the same control core as MIDI and OSC, a change from any surface shows up everywhere. The remote is another way in, not a separate control path.
Arming and Safety
The remote can arm lasers. The remote panel arms every connected laser at once: tap Arm all, then Confirm arm within 5 seconds. Arming acts at the DAC level, exactly like the desktop, so arming one laser through the API arms every laser sharing that DAC. Never arm output unless you have checked projector position, output zones, and safety settings, and you are operating within local regulations.
Before you arm, the laser view shows each laser's DAC connection health, so you can see whether light will actually emit. A DAC connecting or dropping updates the view on its own.
Every output-affecting action from the remote passes through the same non-bypassable safety pipeline as the desktop: motion limits, blind zones, and arming interlocks all apply. A dropped connection or a malformed request never holds light on and never blocks output. Deliberate kill-switch duty still belongs to the venue's hardware E-stop, not to Wi-Fi.
Build Your Own
Under the remote is a REST and WebSocket API for controlling a running instance from your own scripts or tooling. A running Modulaser serves interactive API docs at /docs on the same address, where you can explore every endpoint and drive the live instance to try them out. The API uses the same pairing as the phone: a script POSTs a pairing code and a device name ({"code": "123456", "name": "my-script"}) to /api/v1/pair to receive a bearer token, which /docs also needs before it can send live requests.