Every 192.0.2.0/24 value on this public demo page is deterministic IANA TEST-NET example data, not the current state of a CUE/IO unit.

User guide

CUE/IO help

A practical guide to setting up and using CUE/IO day to day. You do not need to know Linux commands.

Search checks the entire Help page as you type.

Quick start

Five steps to your first recording or playback.

  1. Connect power and a network cable to the Raspberry Pi.
  2. The mDNS setting is currently Enabled. When enabled, open http://cueio-demo.local/ on the same network; no port is needed. Otherwise use the Raspberry Pi IP address. Fallback Wi-Fi is configured as Enabled; use it only when Network shows its status as Active.
  3. In Settings, select the physical network interface connected to your Art-Net devices.
  4. On the Control screen, choose only one mode: RECORD, TIMECODE, or PLAYER.
  5. When finished, stop the active operation and shut down the Pi with CUE/IO's shutdown button.

Guide sections

CUE/IO is a Standalone Show Recorder & Player for Raspberry Pi that records Art-Net lighting data and audio and plays them back in sync.

  1. It stores incoming Art-Net universes in one show session and can record audio at the same time.
  2. Only one main mode runs at a time. This protects the audio device, network, and files from conflicts.
  3. Control happens in a browser; the Raspberry Pi does not need its own screen, mouse, or keyboard.

CUE/IO opens on any phone or computer connected to the same control network.

  1. Use a stable power supply suitable for your Raspberry Pi model and wait about a minute for the system to start.
  2. Connect the Pi's Ethernet port to your router or Art-Net switch. Internet can use the same Ethernet connection or Wi-Fi.
  3. The mDNS setting is currently Enabled. When enabled, open http://cueio-demo.local/; this local address works on the same network without internet. When mDNS is disabled, use the Raspberry Pi IP shown in Network settings.
  4. If http://cueio-demo.local/ does not open, disable VPN, check that you are not using a guest network, and use the Raspberry Pi IP address shown in Network settings. No port needs to be added.
  5. Fallback Wi-Fi is currently configured as Enabled. Before changing the network, open Network > CUE/IO management access > Independent fallback Wi-Fi and confirm its status is Active. Write down SSID “CUE/IO Demo Setup” and address http://192.0.2.42/. The existing WPA2 passphrase is not displayed; leaving the passphrase field blank preserves the configured passphrase.
  6. When fallback Wi-Fi is enabled and its status is Active, join SSID “CUE/IO Demo Setup” and open http://192.0.2.42/. This network may have no internet—that is normal; no port is needed.
  7. If the main page disappears after changing the Ethernet IP, stay connected to fallback Wi-Fi and open http://cueio-demo.local/ or the fallback address shown in Network settings.

The Network section selects the Ethernet port, DHCP or static IP, subnet, and broadcast. Fallback Wi-Fi and the current address http://cueio-demo.local/ remain available as an independent management path.

  1. Before changing anything, stop RECORD, PLAYER, the TIMECODE listener, and Benchmark. Write down the current http://cueio-demo.local/, Raspberry Pi IP, fallback network “CUE/IO Demo Setup”, and http://192.0.2.42/. If Wi-Fi already provides internet, the fallback access point needs a separate Wi-Fi adapter.
  2. Choose the Ethernet port carrying the Art-Net cable. DHCP or a configured gateway/DNS means a shared Art-Net and internet port; a static IP without gateway and DNS means an isolated Art-Net port.
  3. Under Network > CUE/IO management access > Independent fallback Wi-Fi, choose an open network or enable WPA2. The existing passphrase is not displayed: a blank field preserves it, a new value replaces it, and Remove passphrase returns the network to open mode.
  4. Choose DHCP or static IP. For a static port enter IP, subnet, and broadcast; leave gateway and DNS empty for an isolated Art-Net port. CUE/IO validates all fields before changing the system.
  5. Press Save and apply. CUE/IO stores the selected port configuration in one operation. Do not switch off the Raspberry Pi while it is being applied.
  6. If the IP or .local name changed, the page may disappear briefly. Reconnect using the new exact address; if it cannot be reached, use fallback Wi-Fi.
  7. After saving, open the new IP address or http://cueio-demo.local/ and use Monitor to verify that Art-Net packets arrive.
  8. If the new Ethernet address cannot be reached, join fallback Wi-Fi, open http://cueio-demo.local/, and enter the correct IP, subnet, and broadcast again.

The selected interface decides which physical network port CUE/IO uses to receive and send Art-Net data.

  1. CUE/IO and the Art-Net nodes must be on the same IP subnet. For example, 2.0.0.10 and 2.0.0.20 with mask 255.255.255.0 are on the same subnet.
  2. In Settings, choose the Ethernet or USB Ethernet interface where the Art-Net cable is connected. Do not choose Wi-Fi when Art-Net physically uses Ethernet.
  3. Broadcast sends data to the whole subnet; unicast targets send only to specified IP addresses. Use the option that matches your lighting system.
  4. For shows whose type is not Manual, open Settings → Network → Art-Net unicast targets, enter one IPv4 address per line, and press Save and apply. At least one valid global target completely replaces broadcast; an empty list or no valid address restores the configured broadcast. Recorded, imported, or generated describes origin rather than routing—the stored show type is authoritative.
  5. The full Live DMX channel graph, selected U/CH live monitor, and DMX-channel recording trigger currently work only with Art-Net. For sACN recording, use manual start or first-packet start.
  6. Open Monitor and check that the packet count rises and the expected universes appear. If not, check the cable, IP address, subnet mask, and selected interface.
  7. Send test rainbow transmits real DMX data to the selected output. Run it only when connected lights and mechanical fixtures are allowed to react.
  8. Change the DMX playback offset only after a measurable audio and lighting synchronization test. A positive value delays DMX relative to audio.

In Art-Net mode, Monitor displays the incoming DMX frame and helps verify a signal without recording or sending anything to the output. In sACN mode, the full universe and 512-channel graph is not currently available.

  1. Open More → Monitor from the top menu. The signal indicator shows whether CUE/IO is currently receiving DMX.
  2. Select the required universe. The graph displays all 512 channels with values from 0 to 255.
  3. Choose a channel in the field or tap and drag across the graph. The selected channel value updates live.
  4. Check the signal source, active channel count, packet count, and last-packet time. Open technical details only for deeper diagnosis.
  5. Monitor does not write every DMX packet to the log and does not modify show files.

RECORD mode stores the Art-Net stream and optional audio using one shared time base.

  1. Choose the audio input, turn audio recording on or off, and select the Art-Net interface.
  2. Enter a clear show name using up to 120 visible characters. CUE/IO creates the safe file ID; control characters are not allowed in the name.
  3. Under Recording start, choose one of three methods: start immediately, wait for the first DMX packet, or start and stop from one Art-Net universe channel. Save these settings before recording.
  4. In DMX channel mode, the start value must be higher than the stop value. The recording-start summary shows the selected universe and channel's current value; verify it before recording.
  5. Before starting, check free disk space, the audio level, and that Art-Net packets are arriving.
  6. Press Start Recording. Start immediately begins at once; the other two methods prepare the session and wait for their DMX condition. If audio is enabled but unavailable, the session will not start.
  7. Press Stop Recording and wait for confirmation that the files were saved. Only then change modes or unplug devices.

TIMECODE mode listens for LTC and plays the assigned shows with synchronized Art-Net and audio at the times defined in the editor.

  1. Enable the configuration in the Timecode editor, add cues, and assign a show to each cue. Enter times as HH:MM:SS:FF. In Settings, select the LTC audio input and an audio output when any cue show has audio.
  2. A start cue launches the selected show; an optional end time stops it. A Stop playback only cue stops the active Timecode show without starting another one.
  3. Cues can be edited and saved only while the Timecode listener is stopped. Editing cues does not modify the show files themselves.
  4. Press Arm. CUE/IO validates cue shows and audio devices, reserves the LTC input, and moves to Waiting for timecode.
  5. When LTC reaches a cue start time, CUE/IO starts the assigned show with one shared Art-Net and audio origin.
  6. If LTC disappears, a show that already started keeps playing, but no new cues are started. When the signal returns, CUE/IO does not chase into the middle of a cue — it waits for the next cue start.
  7. To stop waiting, use Cancel or switch modes; CUE/IO closes the listener and releases the audio device.

Connect the audio device before preparing a mode so CUE/IO can test and reserve it safely.

  1. Connect the USB audio device, then open or refresh the CUE/IO page.
  2. In Settings, choose the correct input for recording and output for playback. The device name must match the physically connected device.
  3. Under Settings > Audio, press Test audio output. The check plays an audible test signal through the selected output, so lower the amplifier or speaker volume first.
  4. In RECORD view, speak or send a signal: the level meter and waveform should move without staying at maximum.
  5. If the device disappears, stop the active mode, reconnect the USB cable, and select the device again. Never unplug an audio device while RECORD, PLAYER, or TIMECODE is active.

PLAYER sends the saved Art-Net stream and plays the show's audio in sync.

  1. Select a show and check its duration, universe count, and audio status.
  2. Press Play. The progress bar shows the current position; Loop repeats the show until stopped.
  3. If Pause is disabled, the current audio engine does not support safe pause. Use Stop; it always releases audio and Art-Net resources.
  4. The volume slider and Mute change playback volume only. The original audio file is never modified.
  5. When another show is selected during playback, CUE/IO fully stops the previous show before starting the new one.
  6. Before changing modes or unplugging audio, press Stop and wait until the status is no longer Playing.

A playlist plays finished shows in the selected order and gives every item an exact, finite repeat count.

  1. In the PLAYER library, switch from Shows to Playlists and press New playlist. A playlist does not change show files; it stores only their order and repeat counts.
  2. Enter a name, add at least one show, set every repeat count, and use the arrow buttons to arrange the order. At the bottom choose whether to Repeat the whole playlist, then check the summary and press Save.
  3. Example: Show A ×10 → Show B ×5 completes exactly 10 plays of Show A followed by exactly 5 plays of Show B. With whole-playlist repeat off it ends; with it on the complete sequence starts again from Show A. The normal Player Repeat button does not control playlists.
  4. One item accepts 1–1,000 repeats; one playlist accepts up to 64 items and 10,000 repeats in total. The device stores up to 100 playlists, each with a name of up to 100 characters.
  5. The playback card shows the playlist name, current show, item number, repeat, and overall progress. “Item 2 of 2 · repeat 3 of 5” means the first item is complete.
  6. Stop playlist, the global Stop action, starting another show manually, changing mode, updating, or shutting down ends the current Player session, releases audio and Art-Net, and prevents the next repeat, show, or whole-playlist cycle from starting. The next start begins at the first item.
  7. CUE/IO validates the complete sequence before starting. If a referenced show was deleted or is damaged, the playlist is not started, existing playback is left untouched, and an error is shown. Remove or replace that show in the editor.
  8. The playlist definition remains after a CUE/IO update and Raspberry Pi restart, but active progress does not persist and playback never resumes automatically. This prevents unexpected lighting or audio output after power is restored.

The DMX playback offset is read when each PLAYER session starts. You do not need to restart Raspberry Pi or CUE/IO — stop the current playback and start the show again.

  1. 0 ms keeps the recorded timing without an additional correction.
  2. A positive value sends DMX later than audio; for example, +100 ms delays lighting by 0.10 seconds.
  3. A negative value sends DMX earlier than audio. If lighting appears about 350 ms after sound, start with −350 ms.
  4. Latency can come from the audio interface and ALSA buffer, a DAC or audio processor, the loudspeaker path, the Art-Net node or switch, fixture response, and the physical network.
  5. Use a test show with an audible click and visible flash. Stop playback, change the offset in 20–50 ms steps, start again, and check several points in the recording.
  6. File Manager's Art-Net duration is the time of the last valid packet. It can be shorter than audio when the console stops transmitting or holds its last value; this alone does not mean packets were dropped or synchronization failed. Also check dropped packets, sequence errors, and real playback.

In Settings > Startup, choose the single action CUE/IO should perform after the application or Raspberry Pi starts.

  1. Choose Do nothing, Show Sequence, or Wait for timecode. Only one startup action can be saved at a time.
  2. For PLAYER, build a Show Sequence with an optional Warmup show, Wait time, required Main Show, and optional Loop. Shutdown safely closes PLAYER resources but does not power off Raspberry Pi. After an unplanned restart, a previously active Loop resumes directly at Main Show and skips Warmup and Wait.
  3. For Timecode, CUE/IO arms the LTC listener after startup. Timecode configuration must be enabled, an LTC input selected, and an output selected when any cue show has audio.
  4. After startup, CUE/IO does not chase into a cue that has already begun. If the current LTC time is past its start, it waits for the next cue start.
  5. Save Settings. The choice takes effect the next time CUE/IO or the Raspberry Pi starts.

The Files section lets you inspect, duplicate, download, import, rename, and delete shows.

  1. Open the action menu for a show. It contains rename, duplicate, trim, Complete show (ZIP) and separate Art-Net or audio downloads, export, and delete.
  2. Before renaming, deleting, or trimming, make a duplicate or download the complete show.
  3. Complete show (ZIP) downloads a normal backup ZIP, while Export creates a .showcore.zip for transfer and import into another CUE/IO; both archives contain metadata, the Art-Net file, and audio. Separate buttons download only the chosen part.
  4. Import only a trusted CUE/IO archive. After importing, check the duration, audio name, and universe count.
  5. If a duration mismatch warning appears, open its details and compare metadata, Art-Net, and audio durations before playing or trimming the show.
  6. An active show cannot be renamed or deleted. Stop recording or playback first, then try again.

Settings → Updates checks and installs a signed CUE/IO OTA release without an SSH or Linux account.

  1. Before installation, download backups of important shows and stop Record, Player, a playlist, Timecode, preview, and any manual live test.
  2. Press Check again and review the available version and release notes. Internet access is required for checking and downloading, but losing it does not interrupt other CUE/IO modes.
  3. Press Install update once and do not disconnect Raspberry Pi power. If another update operation is already in progress, wait for it to finish instead of starting a second one.
  4. OTA preserves shows, configuration, the licence, playlists, fixture profiles, and the service-event journal. Writing a complete IMG is a different operation and erases the microSD card.
  5. CUE/IO verifies the download and new release; if the release is unhealthy, it attempts to restore the previous healthy version. After completion, check the installed version and Status.

The manual builder creates a playable CUE/IO show either from fixed DMX scenes or from one of eight configurable generated effects.

  1. In the PLAYER show list, press Manual show. Use Fixed scenes for the existing start, middle, and end editor, or Effect generator for Static, Pulse, Chase, Rainbow, Unique random, Random, Rain, and Wave. Each effect uses one Art-Net universe. Choose generic RGB/RGBW or a fixture profile that follows the actual DMX mode.
  2. Fixed scenes and generated effects may include audio; when selected, it defines the duration and CUE/IO creates a playback copy without modifying the original. Without audio, enter a silent-show duration from 0.1 seconds to 1 hour. When editing either builder, choose Keep, Replace, or Remove for existing audio; Remove uses the entered silent duration. Generated effects use a fixed 30 FPS.
  3. For fixed scenes, enter “1=255” for one channel or “10-16=255” for a range. For an effect, choose its universe and first channel, then add every fixture in physical order and drag the grip to reorder it; the arrow buttons remain the keyboard fallback. Generic RGB and RGBW let you choose a pixel quantity and add the whole bounded group at once. Show DMX address list displays every automatically assigned range, mode, and absolute fixed channel. Choose one of 15 ready-made palettes—the buttons show their 1–10 color counts—or add, remove, and reorder 1 to 16 custom colors. The RGB preset remains exact red, green, and blue. Set intensity (brightness), amount, spacing, variation, speed, and duration; Pattern number makes a random-looking layout repeatable. A custom profile maps R/G/B and optional W and may hold dimmer, shutter or mode channels at fixed 0–255 values only while the show plays. Select a custom profile and press Edit to reopen and update all of its fields.
  4. Fixed scenes use their configured start, middle, and end values. Effect preview is a simplified, local-only browser animation: it does not contact the Raspberry Pi output engine, transmit Art-Net, or touch the network. Playback timing and channel data are created only when the show is saved.
  5. A generated effect writes a complete 512-channel frame for its one universe. Every channel outside the selected RGB or RGBW fixture range is explicitly set to zero, so use a dedicated universe unless blacking out all other channels on that universe is intentional.
  6. For a Manual show, press Manual show in the PLAYER list or Edit on an existing Manual show. Under Art-Net output choose Broadcast or Unicast to one IP address; for Unicast, fill in Target IP address and save. For every Manual-type show—fixed scenes, effects, and imported Manual shows—this saved choice is authoritative: Unicast sends only to the show's one IP and ignores global targets, while Broadcast ignores global targets and uses the configured broadcast address.
  7. Start live test renders the current unsaved editor values without audio or saving a show, then physically sends them to the selected Broadcast or Unicast Art-Net output for at most 30 seconds. Use it only when fixtures may safely react. Stop test, natural completion, errors, and navigation trigger blackout. If an active Record, Player, or Timecode session blocks an action, use the Stop show button on the right of that error; it safely stops the current show without leaving the editor. If another manual show is already being built, the button is not offered: wait and try again. Input errors open the relevant tab or fixture editor, highlight the exact field, and show a localized explanation.
  8. Saving generates show files only; it does not play anything or send data to the network. Physical Art-Net output starts only when the saved show is played in PLAYER. The current release supports playback, trimming, duplication, export, and import of generated effect shows.
  9. Edit opens the same complete builder used for creation. You can change the name, output, fixed scenes and audio, or every effect, palette, fixture and pattern setting. Saving safely regenerates the show while keeping its show ID, original creation time and playlist references; a durable backup is created before replacement.

The effect generator creates one complete playable Art-Net show in one universe without programming.

  1. In the PLAYER show list, press Manual show and select Effect generator. Static holds colours; Pulse breathes; Chase moves a head and tail; Rainbow moves palette colours; Unique random reshuffles pairwise different non-black RGB values across all fixtures; Random lights deterministic groups; Rain moves drops and tails; Wave creates flowing crests.
  2. Enter a name. Attach optional audio, whose length sets the generated effect duration; without audio, enter a silent-show duration from 0.1 seconds to 1 hour. Choose one of 15 ready-made palettes with 1–10 colors, or add, remove, and reorder 1 to 16 custom colors; the built-in RGB palette is exactly #ff0000, #00ff00, #0000ff. Intensity is normally 1–100%; Unique random requires 2–100% so all 170 supported fixtures can stay distinct, and its speed is 1–240 shuffle changes per minute. Amount, Spacing, and Variation reshape effects that show those controls; Unique random hides them and uses Palette, Shuffle speed, Intensity, and Pattern number. Pattern number makes random-looking layouts repeatable, while New variation creates another deterministic pattern. Every effect uses a fixed 30 FPS.
  3. The built-in library contains only Generic RGB (3 channels) and Generic RGBW (4 channels). Select either, choose the pixel/fixture quantity with −/+, and Add fixture inserts that whole group in physical order while limiting it to 170 rows and channel 512. Custom profiles add one fixture at a time and can be reopened with Edit. Drag rows by their grip to any position, use the arrow buttons as the keyboard fallback, or remove them; CUE/IO immediately recalculates consecutive ranges from every trusted footprint after a drop. Show DMX address list displays every order, profile, mode, universe, channel range, and absolute fixed dimmer/shutter/mode address. A removed library profile may still appear as an immutable saved snapshot only while editing a show that already uses it.
  4. The visual preview is only a simplified browser animation. It does not contact the Pi output engine, transmit Art-Net, or activate lights; its on-screen colours and timing are not physical-output measurements.
  5. Effect-generator shows may include audio, and its length sets the generated Art-Net show duration. Without audio, CUE/IO uses the entered 0.1–3600 second silent duration. Edit can Keep, Replace, or Remove existing audio. Live Test alone remains audio-free and is limited to 30 seconds.
  6. Create show generates files only. Wait for the completion message, return to PLAYER, and use Play for the first physical test when connected devices may react.
  7. Every effect frame writes all 512 channels in one universe; channels outside the selected fixture range are zero. Fixed profile values are sent only while that show plays. Stop and end-of-show still send blackout (0). Use a dedicated universe unless blacking out other channels is intentional.
  8. A generated effect can be fully edited, played, renamed, trimmed, duplicated, exported, imported, and added to a playlist. Edit can also convert it to a fixed-scene show; saving keeps the same show ID and playlist references. Custom fixture profiles can be edited in place with revision protection. Every show stores a trusted fixture-layout snapshot, so it remains usable and editable after a profile is changed, removed from the library, or no longer offered as a built-in choice.

Trimming changes Art-Net and audio by the same amount so they stay synchronized.

  1. CUE/IO creates a backup before trimming, but important shows should also be downloaded to another device.
  2. Use the start and end sliders to choose the interval to keep. Audio preview lets you listen to that exact fragment without modifying the original file.
  3. Output preview works only in an idle PLAYER mode and physically sends the selected segment through the configured Art-Net and audio outputs—lights and other devices may actually react. Stop the preview before saving.
  4. When the start and end are verified, press Trim. CUE/IO trims Art-Net and audio equally; then check the new duration in File Manager.

Scheduler starts a selected show automatically on a date, at a time, or on chosen weekdays.

  1. Choose a show and start time, then provide exactly one of end time or duration. An end time earlier than the start means the next day; one occurrence cannot exceed 24 hours. Check the Pi clock before saving.
  2. Choose a specific date, every day, weekdays, weekends, or selected days of the week.
  3. With Loop enabled, the show repeats until the scheduled interval ends; without it, the show plays once. The scheduled end stops only the Player session started by that schedule.
  4. CUE/IO rejects enabled schedules that overlap. One schedule may end exactly when the next begins; the previous show is then stopped before the next one starts.
  5. A schedule does not interrupt active RECORD recording or a playing Timecode cue. If either is active at the exact start boundary, that occurrence is skipped and is not retried within the same interval. An idle Timecode listener is stopped, while a normal Player show is safely replaced.
  6. If you manually stop or replace a show started by Scheduler, it is not restarted within that same scheduled interval. The next occurrence works normally.
  7. After enabling a schedule, check Next action to confirm that the date, time, and show are correct.
  8. Schedules remain enabled after CUE/IO or Raspberry Pi restarts. If CUE/IO returns while an interval is still active, its show starts once and stops at the scheduled end; an interval that has already ended is not replayed.

An RTC with a working battery preserves time when the Raspberry Pi starts without internet access.

  1. The DS3231 is a small battery-backed clock board. It is especially important for schedules at sites without permanent internet.
  2. In the summary at the top of Scheduler, check that the RTC is detected, the status reads Ready, and the displayed time is correct.
  3. At startup CUE/IO checks the system NTP status. If NTP is already synchronized, system time is not overwritten from the RTC and the RTC is updated from system time. If NTP is not confirmed but the RTC time is valid, system time is set from the RTC.
  4. The program works without an RTC, but after complete power loss check the time before relying on Scheduler.

Benchmark generates, records, and plays a controlled Art-Net stream to estimate a safe universe count.

  1. Before testing, stop recording, Player, and Timecode, and disable schedules that could start during the test. The benchmark temporarily owns CUE/IO resources.
  2. CUE/IO tests 1, 4, 8, 16, 32, 64, and 128 universes in sequence. Choose FPS from 1 to 120, a per-level duration from 1 to 300 seconds, a scenario, and audio checking; strict safety confirmation requires Full cycle and at least 10 seconds per level.
  3. Do not remove Pi power during the test. Watch CPU, temperature, memory, disk, and packet errors.
  4. An enabled audio test uses the configured audio devices: during Full cycle it records the input and plays an audible test tone through the output. Device errors, underruns, and overruns are checked, but physical audio/DMX synchronization measurement requires an external or ALSA loopback marker.
  5. A completed benchmark shows the recommended universe count and the first level that exceeded limits. Recommended may include warnings; a strictly safe limit can be confirmed only by a full cycle with matching data, zero dropped or late packets, zero sequence, network, or audio errors, and sufficient CPU, RAM, and temperature headroom.
  6. A single Raspberry Pi's internal test does not fully test physical Ethernet cables, switches, or external Art-Net devices. Follow it with a real-network test.

The Status screen helps identify load, network, audio, and disk problems quickly.

  1. Under System, inspect CPU, RAM, temperature, and free disk space. Fix sustained high temperature or a nearly full disk before a show.
  2. Under Art-Net, check active universes, packets per second, dropped packets, sequence errors, and network errors.
  3. Under Audio, check the selected device, sample rate, channels, underruns, overruns, and synchronization offset.
  4. Under Program, see the active mode, show, and most recent error. Write down the exact time, version, and error text; if it returns, send this information to info@cueio.app.

Device settings control disk safety limits and system actions, while GPIO settings can assign physical Raspberry Pi buttons to show control.

  1. The minimum free-space limit blocks a new recording; the critical limit safely stops an active recording. Do not lower these limits without a tested reason.
  2. Restart CUE/IO restarts only the application, Restart Raspberry Pi reboots the whole computer, and Shut down Raspberry Pi prepares it for safe power removal. Stop active work first.
  3. Use GPIO only on a Raspberry Pi with a correctly built 3.3 V button circuit. Shut down the Raspberry Pi safely before adding or moving wires.
  4. Enter the BCM pin number, HIGH or LOW active level, action, and required show. GPIO show actions use PLAYER mode.
  5. Debounce prevents one button press being read multiple times; 80–150 ms is a sensible starting range.
  6. Enable ignore-during-recording or playback when a physical button must not interrupt active work. Also verify repeat count and the after-show action.
  7. Test every button for the first time while all modes are stopped and using a safe test show. Only then use it at an event.

The language menu at the top changes the CUE/IO language and can add a complete new translation JSON file without editing application code.

  1. Open the flag menu and search by language name or code. The selected language is saved in this browser.
  2. At the bottom of the menu, download the translation template. It contains every current text key.
  3. In the template's `_meta` section, change `code`, `name`, `flag`, and `direction` when needed. The new code must differ from installed languages.
  4. Translate text values only; preserve every JSON key and placeholders such as `{count}` or `{name}`. Save the file as UTF-8 JSON.
  5. Choose Add translation and upload the completed file. CUE/IO validates the JSON and full key schema before installation; imports cannot overwrite an existing language.

Pulling the Raspberry Pi power cable can damage configuration, a show file, or the storage card.

  1. First stop recording, playback, timecode waiting, and any benchmark.
  2. Open Settings > Device and press the Raspberry Pi shutdown button. Confirm the warning.
  3. Wait until the CUE/IO page stops responding and the Pi activity light stops blinking. Only then disconnect power.
  4. Never remove power while saving, importing, updating, or actively recording.

Troubleshooting

Common errors and solutions

Start with the safe checks below; no Linux commands are required.

The CUE/IO page does not open

Solution: Check Pi power, network port lights, and that the phone is on the same network. Disable VPN and open the exact URL from Network settings; no port is needed. Use fallback Wi-Fi only when it is configured as Enabled and Network shows the status Active; then join “CUE/IO Demo Setup” and open http://192.0.2.42/.

The page disappeared after applying network settings

Solution: Try the new IP address or http://cueio-demo.local/. If the main network cannot be reached, join CUE/IO fallback Wi-Fi, open http://cueio-demo.local/, and correct the Ethernet IP, subnet, or broadcast in Network settings.

Art-Net packets do not appear

Solution: Check the selected interface, cables, sender IP, and subnet mask. In Monitor, confirm whether any universe is arriving.

CUE/IO is still waiting after Start Recording

Solution: This is expected when First DMX packet or DMX channel trigger is selected. Check the saved start method, incoming packets, and the selected U/CH live value; the DMX start threshold must be higher than the stop threshold.

The audio device is unavailable

Solution: Stop the active mode, reconnect the USB device, refresh the page, and select it again. With audio enabled, recording cannot start without a valid device.

Recording cannot start because space is low

Solution: In Files, download important shows and try deleting unneeded ones, then check free space in Status. Deletion first creates a backup ZIP and itself needs free space; if it fails on a critically full disk, do not lower the safety limit—send the error to info@cueio.app.

Timecode remains in the waiting state

Solution: Check the signal source, selected input, and timecode format. Cancel waiting, verify the device, and arm the mode again.

Playback has no audio or lighting output

Solution: Check the show file details, audio output, Mute, and volume. For Art-Net, check the output interface and unicast targets.

A schedule starts at the wrong time

Solution: Check system time, time zone, and RTC status. Without an RTC, connect internet for time synchronization or install a DS3231.

CUE/IO is running in limited mode

Solution: Write down the unavailable command or feature shown in the page warning, along with the CUE/IO version and exact time. The remaining features should keep working; send a recurring problem to info@cueio.app. You do not need to enter Linux commands.

More