SchwiftyEx — Manual
SchwiftyEx is a wireless button-to-message controller. Pair one or more RF remotes, map each button to a MIDI or OSC message, and trigger your lighting, audio, or video software live — without cables.
The Device
USB — Plug into your computer. The device appears as a USB-MIDI controller named SchwiftyEx in your DAW.
WiFi — Connect to the device's access point (or your network) to open this web UI in a browser.
B1–B4 — Four physical buttons on the device, each with an RGB LED ring (B1 green, B2 yellow, B3 blue, B4 red). Each can be mapped to a function just like a remote button.
SETUP — The setup button under the antenna. Hold 5 s to toggle between AP mode and Wi-Fi mode. Tap 5 times for temporary open access (see “Login without password” below).
LED ring — Status indicator. Colour and behaviour shows the current state (see below).
SETUP button LED status
Login without password
Locked out or forgot the UI password? Tap the SETUP button 5 times quickly:
- Connected to Wi-Fi — the settings UI opens without the password for 10 seconds; the ring flashes red/blue. Open the settings page within 10 s — the first load logs you in and closes the window. No network switch happens.
- AP mode — opens a passwordless recovery access point so you can set a new AP password; the ring flashes red/purple. Closes when the password is set, or after 10 seconds.
LED Brightness
Go to Settings → Device Settings → LED Intensity and drag the slider (0–100%). It dims all LEDs together in real time — the four button rings and the SETUP button ring, including the status pulses. Click Save Device Settings to keep the level across reboots.
Step 1 — Pair a Remote
Go to Pairings, click Add Pairing, then press any button on the remote within 10 seconds. Give the remote a friendly name. Each remote card looks like this:
The ⠿ drag handle (left edge) lets you reorder pairing slots by dragging. The order here determines which slot number is assigned when a new remote is paired.
🔋 Battery voltage is shown here. Replace batteries when it shows LOW or CRITICAL.
When a button is pressed the card flashes green.
💡 Swap a broken or lost remote instantly: All functions are bound to the pairing name, not the serial number. To reassign every function to a new remote, simply click Pair on the same slot and press the new remote — all functions follow automatically. Alternatively, name a second remote the same name (e.g. Stage Left) and all bindings work on both remotes simultaneously.
Step 2 — Create a Function
Go to Functions, click Add Function. Name it, bind it to a remote button, choose a message type and set the values. A function card looks like this:
The ⠿ drag handle (left edge) lets you reorder functions by dragging. The binding chip shows which remote button triggers this function (Stage Left-1 = remote named "Stage Left", button 1). The Pressed checkbox enables the action. Released is optional — useful for Note Off. When the function fires, the card flashes green.
Message Types
Sends a Note On (or Note Off) on a given channel, note number, and velocity. Use for triggering clips, cues, or samples in your DAW.
Sends a Control Change message. Use for toggling effects, switching scenes, or any CC-addressable parameter.
Sends an Open Sound Control message over Wi-Fi UDP to any IP address and port. Use for QLab, Resolume, TouchDesigner, and other OSC-capable software.
Sends a raw MIDI System Exclusive message. Use for device-specific commands, patch changes, or custom protocols.
Presets
Save reusable OSC Endpoints (IP + port) and OSC Messages (address + value) so you can assign the same destination to many functions without retyping it. SysEx Presets work the same way for MIDI SysEx data.
Console generators — build ready-made GrandMA3, QLab and other console commands on the SchwiftyThing OSC / MIDI generators. Copy an address and value straight into an OSC Message, or paste a whole CSV block into Preset CSV Import → Upload & Add. The device stays lean — new consoles are added on the web, not in firmware.
Import and export all presets as a CSV file for backup or bulk editing.
Serial Terminal
The serial terminal at the top of every page shows live events from the device in real time. It is always visible so you can monitor activity while editing functions or pairings.
Each line shows a timestamped event: button presses and releases (with remote name, button number, battery voltage, RSSI signal strength, and which function fired), system messages, pairing events, and Wi-Fi status changes.
Use the Download CSV button to export the full terminal history as a spreadsheet — useful for troubleshooting or show logs. Use Clear Window to reset the view without losing history on the device. Use Hide / Show to collapse the terminal and give more screen space to the current page.
Drag the bottom-right corner of the terminal to resize it to your preferred height — the size is remembered across page navigation.
Firmware Updates
Go to Settings → Firmware Update. Upload a .bin file. The device validates the image, reboots into it, and rolls back automatically if the new firmware crashes on startup.
The previous firmware is always kept in the inactive OTA partition and can be restored by the rollback mechanism.
Wi-Fi & Access Point
AP mode — On first boot the device creates its own password-protected Wi-Fi network (Schwifty, default password schwiftyAP — change it in Settings). The access point is never open unless you open it deliberately. Connect with the AP password, then open http://192.168.4.1 to configure. Set a Wi-Fi network in Settings and the device will connect to it on next boot. Forgot the password? Tap the SETUP button 5 times to open the AP for 10 seconds so you can log in and set a new one.
Hold the SETUP button for 5 seconds to toggle between AP mode and station (Wi-Fi) mode at any time.
The web UI is accessible from any browser on the same network. Bookmark the device IP shown in the status bar.