JMB Zone / 4our / 8ight · Firmware 2.x · 2026-09-16 · 4-port shown (1/8-port variants identical unless noted)
One rotary encoder: turn = scroll / adjust, click = select, hold (1.2 s) = back one level, keep holding (3 s) = straight home + lock from any depth. The home screen shows the JMB mark; hold to unlock into the menu. The panel relocks after inactivity (running tests and effects keep going). When no source is decoding, the lock screen reads No Data — whatever the CRMX link state — so a linked-but-silent radio can never masquerade as a live source.
| Item | What it does |
|---|---|
| Test Mode | Fade / Step RGBW output tests (click cycles, hold exits) |
| Ports | per-port or All Ports setup, incl. Presets — see below |
| Sources | the input hub — wired DMX and CRMX each with live status (the active source + Hz shows inline and in the header); Chain Listen arms here |
| Health | worst fault inline; Clear Faults + the live universe viewer |
| Setup | system only: ID, Bluetooth + PIN, curve, encoder, language, protection, cal, reset |
DMX Address and Head Number open the digit editor (turn = digit, click = next, SAVE commits; hold cancels; the footprint hint shows the span). Personality cycles the list in the DMX chart's order — Dim 1ch / Dim 2ch / CW/WW 8 / CW/WW 16 / RGB 8 / RGB 16 / RGB FX / RGBW 8 / RGBW 16 / RGBW FX / RGBWA 8 / RGBWA 16 / RGBWA FX — skipping the RGBW and RGBWA entries on a port whose module has three outputs. Effect opens the effect picker. PWM Mode cycles the PWM library: Smooth 8 kHz / Silent 20 kHz / Camera 15.6 kHz, then any custom entry that has been set in the app (shown as C1 12.3k; see §8). Current and Temp limits step their trip points and push to the port hardware immediately. Clear Fault re-arms a latched port. Presets opens the presets sub-menu (below).
All Ports adds two rows: - Chain: Local / Global — Local edits this unit. Global also passes a baton down the DMX line after you commit (see §4). - Apply: Same / Seq / Offset — how a base address fans out: everyone the same; follow-on by each port's real footprint; or fixed 10-channel spacing (re-personality later without re-patching).
Three rows: - Dimmer — a live master brightness. On a single port it opens straight on that port; on All Ports it walks each port in turn (turn = level, click = next port). The output follows the encoder live — no need to confirm to see it. 1 % steps on a slow turn, coarser when you spin. Hold = cancel and restore the levels you started with. - Colours — the factory colour / CCT looks. - Scenes — your four user looks (U1–U4).
When Port Settings is on All Ports and Chain: Global, the Dimmer row becomes a Chain Master: you set one level and, after a DEPLOY DIMMER? confirm, it sets every port on this unit and every armed unit down the DMX line (see §4). Deploy from the first controller in the chain to reach the whole rig.
One screen answers "what's driving the rig": the header names the active source and its refresh rate, and each row carries live status — DMX In (Hz or silent; click = the line analyser), CRMX (no link / NO DATA / Hz — data-driven, so "linked but nothing arriving" is visible at a glance; click = link/unlink/antenna) and Chain Listen (arms this unit to accept ONE Global baton — always Off at power-up, disarms itself after use).
Controller ID (shows on screens, in the Bluetooth name after reboot, and in the RDM label) · Bluetooth on/off + PIN · Dimmer Curve (Lin / Soft 1.6 / Thtr 2.2) · Reverse Encoder · Language · Thermal Fold · Sensor Cal · Factory Reset (confirmed).
Test mode → Identify (RDM/app) → live DMX → Effect → Manual → hold-last. Live DMX always outranks manual and effects; when the desk vanishes, the last DMX look holds until you set something else. Outputs soft-start over ~1 s at power-up. All sources pass the dimmer curve.
"Live DMX" is the wired input or the CRMX radio — they merge into one universe, so everything downstream (patch, FX personality, the diagnostics viewer, RDM) treats the radio exactly like a cable. The header on every screen names the winner: DMX or CRMX.
DMX thru is active, not a loop-through. The OUT socket is re-driven by its own line transceiver, so the signal leaving the unit is a fresh copy of what arrived (bit-for-bit, no software in the path) and a long daisy-chain stays clean however many units are in it. Downstream fixtures' RDM answers are relayed back up to the desk through the same path.
The controller updates its own firmware straight over Bluetooth from the app — no USB, no cable.
Keep the app open and the phone unlocked until an update finishes. Outputs hold their last look during a controller update; they go dark during a port module update.
Twenty-one built-in dynamic looks per port (Candle, Fire, Fireworks, Water, Siren, Laser, Club, Lightning, Rainbow, Aurora, Sunset, TV Sim, Strobe, Police, Pulse, Party, Traffic, Fluoro, Paparazzi, Explosion, Clouds). Set from Port Settings → Effect, the app, or DMX channel 8 of the FX personality. Speed 0–255 (128 = designed tempo) from the app or DMX channel 9. While an effect runs, the app's RGB sliders are greyed out — the effect owns the colour; clear the effect to get them back (the dimmer and speed wheels stay live). Speed 0 stops an effect: a continuous look freezes on its current frame, Strobe and Police go dark. Strobe and Police are clocked on the port module itself — the controller sends the flash pattern once and the port keeps time on its own clock, so the rate is exact at every speed and identical across every unit running it. The top of the Strobe speed wheel is compressed: above the mid-point the rate rises more gently, and 255 is about 30 flashes a second, the fastest the eye still reads as a strobe. Effects never start on their own. When DMX is absent, an effect runs only from the moment you deliberately pick it (panel or app) — a saved effect does not auto-run at power-up, and a desk dropout (cable or CRMX) always holds the last DMX look rather than starting one. Pick the effect again after a loss to run it. Siren/Police alternate across ports like a lightbar; Party pulses fully-saturated colour on a 128 BPM bar clock; Fireworks bursts out of true darkness; Sunset is a one-shot arc — from golden hour it eases through ember red down to black over ~2 minutes and stays there; re-select it (or dip the port dimmer to 0 and back up) to run another sunset. Traffic plays passing-headlight sweeps with independent timing per port. The film gags: Fluoro is a failing fluorescent tube — rapid failed strikes, then it catches and holds with a faint mains buzz; Paparazzi fires irregular hard white pops, independent per port, like a press pit; Explosion is a white-hot flash blooming to an orange fireball with an ember-flicker decay; Clouds drifts daylight slowly dimmer and cooler as cloud crosses the sun, then back.
Rig-wide effect controls (the app's Tempo pop-up, from the Tempo button at the top of the Control tab): Tap tempo sets the whole rig's beat-effect speed to the music — tap the app's Tap button in time (or type a BPM, 60–240; 128 is the designed tempo). Spread offsets each port in time (0–100 %) so effects sweep across the rig as a wave instead of every port in lockstep. Both persist across reboots.
Capture to scene: the app's Scenes tab saves the current look — Save scene… (named) or Capture live (one tap, auto-named). Both keep the same thing: each port's colour, level, effect and effect rate. An effect is kept as a setting, so it runs again from the start on recall; tempo and spread are rig-wide and not part of a scene. A scene recalls with a crossfade and rides in the show file. Up to 100 scenes per phone (they live in the phone's browser storage, and in any show file you export).
To address a whole chain of controllers from one screen:
Head numbers chain the same way. A unit accepts one baton per arming.
The dimmer chains too. With the same arming in place, Port Settings → All Ports → Chain: Global → Presets → Dimmer gives a single Chain Master level. Set it, confirm DEPLOY DIMMER?, and every armed unit down the line takes the same brightness. Only a downstream unit hears the baton, so deploy from the first controller in the chain. (Addresses are untouched — this only moves the dimmer.)
Looks, blackout and full chain too. All Ports → Chain: Global → Presets → Colours → pick a colour/CCT and confirm DEPLOY LOOK? to set that look on every armed unit. Choosing Off blacks out the whole chain; White takes it to full. The app's Universe section (Setup, under CRMX) has one-tap Blackout / Full / DMX In buttons for the same thing, and Send settings sends this unit's settings to every armed unit: curve, PWM, white balance, limit and trip per port, the controller's current limit and lock, folds, DMX hold, Apply mode, tempo and spread, and the custom PWM entries; never addresses, modes, heads, numbers, names, labels, the PIN or the custom presets (it needs a firmware that carries the settings baton and is greyed until then). A port's white balance sheet has Universe to send its trims down the line the same way. (Dimmer, looks and white balance never re-address or renumber — they only change the output.)
The controller is a full E1.20 responder: discovery, identify (flashes the ports and strobes the main screen HERE), device info, start address, personality — the root device carries the rack view (a SET fans out per the Apply mode) and each port is addressable individually as a sub-device. E1.37-1 dimmer curve and PWM frequency are settable from the desk, on the root for the whole rack and on each port. White balance (one parameter per output, raw 0–255: red, green, blue, and white and amber on a five-output module), its preview, and the PWM library's custom entries are manufacturer parameters that a console can list and edit; the table is in the DMX chart. The controller also publishes per-port temperature and current as E1.20 sensors on the root device ("Port 1 Temp", "Port 1 Current", …), so any RDM console reads fixture health live. The main screen also flashes the moment discovery finds the unit. The powered DMX thru forwards everything downstream; downstream fixtures' RDM responses are relayed back to the desk automatically.
RDM controller (the app's Diagnostics tab). The controller is also an RDM controller for everything plugged into its thru line — a full RDM tester built into the rack. Scan discovers every downstream RDM fixture and lists it as a card: model, label, UID, start address, footprint, personality and sensor count. Tap a card to edit it in place — identify (flash the fixture to find it), start address, personality, label, and live sensor reads. Scanning takes over the output line while it runs, so with an upstream desk live the app asks before taking over; the session releases the thru automatically when you stop, or 3 minutes after your last command — the app then reads stopped — idle for 3 minutes, thru released, so a scan left open at a gig never holds the rig.
Discovery flashes fixtures. When a desk (or this app) runs RDM discovery, every fixture it finds — this controller's ports included — flashes its output at full for a moment, and E1.20 Identify flashes it until switched off. That is the standard behaviour every RDM device shares; it is not the same as the app's Flash to find, which never touches an output (§6 Setup).
https://app.jmblighting.co.uk/ — runs in Chrome or Edge on Android or a desktop (on iPhone, open it in the Bluefy browser, which supplies the Bluetooth that iOS Safari lacks). Choose Add to Home screen for a full-screen, offline-capable app. Tap Connect and pick your controller from the list. The factory PIN (0123) is tried for you, so a new controller opens straight away. A controller with its own PIN (set in Setup → Change PIN) asks for it once per phone, then remembers it for that controller only — a PIN typed for one unit is never offered to another. If a controller has just been reflashed, toggle the phone's Bluetooth off and on once first. The pairing list shows each controller by its name and ID (Setup → Controller and Bluetooth name / ID; the Bluetooth name changes at the next restart), so give every unit its own before a multi-unit job; two Zones with the factory name look identical in that list.
Once connected, tap the Bluetooth mark in the header for the connection sheet: which controller this is, its Bluetooth name and port count, the link quality and firmware, and the ways out — Flash to find, Connect to another controller (drops this link and reopens the chooser) and Disconnect.
Everything the app sends goes straight to the controller over Bluetooth — no account, no cloud, no internet needed once it has loaded, and nothing about your rig leaves the phone. The app also updates itself: opened with any connection it loads the newest version, then keeps working from its cached copy at a venue. There is nothing to install from a store and no updates to chase.
One card per output. Each card holds the port's DMX address and head number, its personality (RGB, RGBW or RGBWA, each 8-bit, 16-bit or with the effect channels; tuneable white 8- or 16-bit; or a single-channel dimmer — one DMX level over the port's set colour, ideal for single-colour and IR strips; the RGBW and RGBWA entries need a five-output port module), an effect picker with a speed control, and the level controls: one slider per output the personality uses — R / G / B, plus White and Amber on the five-channel personalities, or Cool / Warm on a tuneable-white port (ice-blue and amber tracks) — plus two encoders for Dim and FX speed that are easy to ride by feel during a take. Under the encoders every port prints its settings in three columns, each headed by a button that opens the sheet to change them: Patch (Mode, Address, Head — the sheet also holds the Label, up to 16 characters, which shows in the card header and on that port's own screen when the panel is locked. Port 1's sheet also has the Apply row: pick Same / Seq / Offset, then Ports 2–4 (2–8 on an 8ight) patches the other ports from port 1's address, or Universe does the same and sends the patch on down the DMX line to every unit armed to Listen, each following on from the last. A pop-up asks DMX only or DMX + Mode first, then the sheet closes and a message confirms what was set. Seq follows on by each port's footprint, Offset by a fixed stride, heads follow +1; the panel's All Ports edit and a desk's RDM base address fan out by the same mode. Universe needs a firmware that carries the patch baton and is greyed until then), Output (Curve, PWM, white balance) and Protection (Limit, Trip, faults). Clear all returns every port to a clean base — full white, effects off, dimmer down — after a confirmation.
Under the header sits a row of pills: DMX, CRMX, Test, ID, Cfold, Tfold and Fault. They are always there; a pill is dark until its state is active and lights when it is. The first three say what is driving the outputs: DMX green while a signal drives the rig, CRMX purple while the radio carries it, Test amber while a test sequence overrides everything. ID is the controller's number. The last three say what is holding the outputs back or wrong: Cfold red while the current fold is scaling them and Tfold orange while the thermal fold is, each with its scale, and Fault red while any port reports a fault. Tap any pill, lit or dark, and a box opens under the row in that pill's own colour, saying what it means and where things stand; tap the pill again or the box to close it. Where there is something to do the box carries the button: Stop test on Test, Go to port on Fault. The frame rate is in Diagnostics. The pills stay pinned under the header on every tab, so they never move as a page scrolls. On the Control tab the buttons beneath them (Clear all, Undo, Tempo, Reset WB) stay pinned as well, so they are always in reach while the port cards scroll.
An orange outline on a DMX address box means that port's channels overlap another port's: its start address plus footprint runs into a different start address on the same controller. It is a nudge, not a block — overlapping can be deliberate — and both sides of the overlap are marked. Two ports set to the same start address are treated as mirroring and are not marked.
Touching any colour or level control takes manual control automatically and stops a running effect on that port, so a fader never feels dead. When a live DMX or CRMX signal is driving the rig, a "Live DMX in control" banner appears — your manual moves here are overridden until that signal stops, which is why the faders would otherwise seem to do nothing.
Output holds the PWM mode (the dimming carrier frequency — see §8), the dimmer curve (Linear / Soft / Theatre — how fader travel maps to brightness; a custom PWM entry brings its own and locks it) and white balance (below). Protection holds Limit, the current the output may draw (0.25 A up to the unit's ceiling — 6.75 A on units with the 5 mΩ current sense, which is every Zone, 6.5 A on earlier 4our/8ight modules; the field's range shows which), Trip, the temperature it shuts down at, and a Clear fault & re-enable button that appears only while the port is latched. A latched port shows its fault in red on the card and on the header badge; tapping the badge opens the sheet.
White balance. In the Output sheet, under the curve and PWM, is a master for each output of that port: Red, Green and Blue on a colour port, with White and Amber on a five-output module, Cool and Warm on a tuneable-white port, one Level on a dimmer port. Drag the slider or type the value; 255 is full. The trim is applied after the dimmer curve, so the balance holds from full to the bottom of a fade and does not move if you change the curve. The Preview slider sets how bright the port shows while you adjust: the preview starts the moment you touch a trim, never over live DMX (with a desk connected, bring the channels up at the desk), and the port returns to its look when you close the sheet, leave the app or lose the link. A port with a trim in force shows an orange WB badge. All ports copies this port's trims to every port on the controller; Chain sends them to this unit and every armed unit down the DMX line, arming each unit first as for the chain broadcast (§4); Reset clears this port, and Reset WB, at the end of the row of buttons at the top of the Control tab, clears every port. The trims live in the controller and apply to every source.
A console-style picker for the selected ports (choose All or one port at the top). Its five columns — Dim, Hue, Sat, Kelvin and ΔUV — are all views of one colour: nudge Hue/Sat and Kelvin follows; nudge Kelvin and Hue/Sat follows; the last column you touch wins. ΔUV is an independent green/magenta tint trim for matching a practical or pleasing a camera. On a tuneable-white port the picker becomes Kelvin-only with a live warm/cool mix readout. Reach for this when you want to choose a colour rather than balance raw R/G/B by hand.
Store the whole rig's current look as a scene and bring it back later, each with its own crossfade time (0 = snap). Capture live snapshots whatever the controller is outputting right now, auto-named by the time. Scenes live on the phone and travel inside the exported show file, so a saved show reopens identically on another phone. Tap a scene's name to rename it; hold the name to lift the scene and drag it up or down into a new order. Tick the box at the left of a scene to pick it: Delete at the top removes every ticked scene (after a confirm), and dragging a ticked scene moves all the ticked ones together as a block. The limit is 100 scenes per phone; the app says so when it is reached, so delete a few before saving more.
Each scene has two times, in seconds, under the Wait and Fade headings: Fade is the crossfade into the scene, Wait is how long it holds after that fade before the list moves on. The buttons along the foot of the tab run the list: Go recalls the next scene (the first when none is lit, the first again after the last). Cue steps one scene per Go press; Follow carries on by itself, each scene holding for its Wait, round and round, until Stop. Recall on a row jumps to that scene, and Go continues from there.
A read-only status page — the same telemetry the port screens show, gathered in one place: each port's patch, output current (calibrated to within about 1 % of a bench meter), temperature, any fault, and its active source. Your quick "is everything healthy and drawing what I expect?" check.
This is where the controller doubles as a test instrument for the signal on the wire. Each tool answers a specific question:
Signal card — Is a signal arriving, and is it healthy? Shows whether a signal is present and from where (DMX / CRMX). It reads CRMX only when the radio is verifiably carrying the data; otherwise it says simply DMX, because wired and wireless arrive on the same input and the source is picked by the XLR socket itself, not by the controller, its frame rate with a rolling 90-second graph, slot count, start code, time since the last packet, alternate-start-code packet count, and error counts. Your first check that the desk is actually reaching the rig at a good rate.
Universe analyser — What is every channel doing? Opens full-screen and lays out the whole universe as numbered channel meters — the channel number, a live level bar and its value — so you can read which channel is doing what at a glance and scroll the full 512. Switch between Live, Min, Max and Activity views; Start capture records the highest and lowest level each channel reaches over a take (that feeds the Min/Max views), and Activity highlights which channels are moving. Tap any channel for its detail: level, percentage, the port it patches to, its captured range, and how many times it has changed.
Flicker finder — Which channel is causing a flicker? The intermittent-flicker hunter. Arm it and every single channel-value change on the wire is logged with the old value, the new value and how long ago it happened — so a light that flickers once every few minutes, or a desk quietly stepping a level, is caught and timestamped instead of leaving you guessing. It keeps logging even if you leave the tab, so an intermittent fault can be pinned to the exact channel and moment it occurred.
RDM universe — What's downstream, and can I fix it from here? Discovers and controls every RDM fixture down the line like a dedicated RDM tester: Scan to find them, then read and set each fixture's address, personality, label, Identify and sensor readings (see §5). Scanning takes over the output line while it runs.
Port bus (Developer mode only, see Setup) — a health table for the internal link to each output module (frames sent and received, CRC errors, timeouts, the module's own loop and reply timing) plus the controller's loop timing, for diagnosing a port that has stopped responding.
1 THRU 5 @ 80, 10 + 12 @ FULL, 1 THRU 10 - 5 @ 50; levels are 0–100 or
FULL. Each channel set is listed with its level and stays latched — across
app reconnects too — until Clear or power-off. Start/Stop toggles the
output; the amber banner shows while transmitting.The controller's own settings sit under Settings in the Controller card. Closed, one line shows what is set (name, ID, DMX hold, current limit); tap it to open the fields. The buttons beneath stay in view either way.
Controller and Bluetooth name (one field; the Bluetooth name changes at the next restart) and ID, which together are what the pairing list shows, the current limit and folds, and the CRMX by LumenRadio card: Unlink and Link (the external antenna is always on; the Apply mode lives in port 1's Patch sheet, §Control). Two things about linking that follow from how CRMX works: a receiver is linked by the transmitter — put the transmitter into link mode and any unlinked receiver in range joins — so the Link button matters on the transmitter, not here; and Unlink makes the controller forget its transmitter so it can be claimed by another (on units with a link button on the enclosure, holding it for more than 3 seconds does the same; a short tap is ignored). The status distinguishes three things, because a CRMX link survives the transmitter being switched off: linked — no RF (amber) means linked but nothing is on air — transmitter off or out of range; linked — no data means the transmitter is present but isn't sending DMX; and linked · N Hz is a live stream. Then Firmware update over Bluetooth (§2a), Flash to find (identifies this controller for 5 s so you can pick it out of a rack — it never touches the strip: a Zone pulses all its indicator lights together, a 4our or 8ight strobes its screens), show-file export / import (one .jmb file carrying the whole rig — addresses, heads, labels, looks and scenes — reloadable on any phone or controller), change PIN, Disconnect, and Factory reset (everything back to as shipped, the controller restarts; needs a firmware that takes it over Bluetooth and is greyed until then). (The rig-wide Clear all and its Undo live on the Control tab's dashboard.)
Developer mode — the small slider in the App card at the foot of Setup, remembered per phone. Helper, beside it and on by default, is the raised-hand icon on each card and sheet that keeps the explanatory notes out of the way until tapped; switched off, the hands go, the notes stay hidden, and the tab bar drops its names and shows larger icons alone. Developer off (the default) hides the bench detail an operator never needs: the Diagnostics Port bus table, the CRMX module signal lines, uptime and last-boot reason, and the script-error strip. On, it also reveals the calibration rows in the Hardware card:
Test sequences (Setup, top of the tab) drive every port directly, overriding every source — live DMX included — until switched Off. A banner appears on the Control tab while a test runs, with its own Stop test button, and the Off button lights when nothing is running so you can tell at a glance.
The wiring check runs automatically during Step RGBW. Because that test lights one colour at a time, and each port measures its own current, the reading during each step is that channel's current. After one full four-second cycle the app lists them per port:
Port 1: R 1.90A · G 1.60A · B 1.50A · W 4.90A
✓ consistent
Colours legitimately differ — red's forward voltage is about a volt below green and blue — so the check only speaks up for unambiguous cases: an output drawing nothing, an output drawing markedly more than its siblings, or the two together, which means two colours are sharing a terminal (see §7). The figures stay on screen after you stop the test.
The comparison is relative, channel against channel, so it works on a 10 cm off-cut as readily as a 10 m run, and the load does not have to be tape. Two consequences worth knowing: a reading of only a few milliamps is reported as no measurable current rather than "nothing connected" — the controller cannot tell a disconnected output from a very small load — and a port is only ever inhibited when there is enough current for the comparison to be beyond doubt. On a small bench load a crossed pair is reported but the port stays live.
Effects on tuneable-white ports. On a CW/WW personality the effect list only offers the effects that read on a white strip (Candle, Fire, Lightning, TV Sim, Strobe, Pulse, Fluoro, Paparazzi, Explosion); the colour-only effects are hidden so you can't pick one that would do nothing. On a five-output module the tuneable-white personality drives the white (cool) and amber (warm) terminals.
Effects on RGBW and RGBWA ports. The effects are written in red, green and blue; the white output follows the white already in the mix (a white strobe uses it, a saturated rainbow leaves it dark) and amber stays dark under an effect. Your own white and amber levels come back when the effect is cleared.
Support. Setup → App → Support lets you tell us about a problem. Type what happened; the app adds a status report (versions, controller status, recent errors and commands) and hands it to your own mail app addressed to support@jmblighting.co.uk. Nothing is sent unless you send it, and What the report contains shows every line first. It never holds the PIN, network address or location; names and labels are included only if you tick the box.
Demo mode. Demo mode on the connect screen walks the entire app — every tab, the analyser, even an RDM scan that discovers example fixtures — with no controller present. Nothing a demo user touches goes anywhere; it is for learning the app or showing it off before the hardware is in front of you.
Ports protect themselves: over-current (hiccup ×3 then latch), bolted-short µs trip, over-temperature, ground-leak imbalance, comms-loss failsafe. Latched ports show a flashing fault banner on their screen, the fault word appears in the menu and the app, and Clear Faults / Port Reset re-arms.
Wiring fault. Separate from the electrical faults above, and raised by the controller rather than the port. Running Step RGBW measures each output's current one colour at a time; if one output draws roughly double while another draws nothing, two colours are almost certainly sharing a terminal. The port is inhibited and both the panel and the app name the pair — P1 WIRE R+B means the blue load is on the red terminal.
This matters because it is the one wiring mistake the port's own protection cannot see: the current still leaves and returns through the same loop, so over-current and ground-leak detection are both satisfied while one output quietly carries two channels' worth. Clear Faults on the panel, or Clear wiring fault & re-enable in the app, restores the port; if the wiring is still crossed it latches again the next time you run the test. An output with simply nothing connected is reported but never inhibits a port — a tuneable-white fixture legitimately has an unused output.
Thermal foldback (Setup → Thermal Fold, on by default): before a port hits its over-temp trip, it eases the output down over the last 10 °C (to a 30 % floor) so a hot fixture rides through instead of hard-latching mid-show. The latch stays as the real-fault backstop.
Ratings and hot environments. Every port is rated for its full 6.75 A with all ports loaded at once, at 25 °C ambient, with the air filter clean and the vents clear. In a hot rack, a sealed flight case or a sunlit truss, the controller protects itself: thermal fold eases the outputs before anything trips, and the power supply derates above its rated temperature. If the Tfold pill lights under the header in normal use, give the unit air. Keep the intake filter clean and never block the side slots. (The ambient at which fold first engages at full load is recorded on the bench per product and printed here once measured.)
Controller current limit (Setup → Current Limit; app → Setup, under the
controller's name): the most current the whole controller may draw, in 0.5 A
steps up to the product maximum — 6.75 A on the Zone, 27 A on the 4our,
54 A on the 8ight. Set it to the supply you have brought (a 10 A PSU on a
4our → 10 A). Limit Lock freezes the value and is on by default: a new
unit arrives locked at its product maximum, and the lock must be released before
the limit can be changed, then set again. The row shows the lock with a * on
the panel; in the app the padlock beside the field is the only control: one
press applies the value and locks it (there is no separate Apply; Enter in the
field does the same) — the field fades and only the padlock stays live until it
is pressed again — so a hirer cannot raise it. Current Fold (on by default) is what happens when the draw reaches the
limit: every output is scaled back together — colour and balance unchanged,
brightness down — until the draw sits under the limit, then eases back up. With
Current Fold off the limit is only reported and the per-port trips remain the
protection.
While either fold is scaling the outputs the panel footer reads FOLD C /
FOLD T (the port screens show CFOLD 82% / TFOLD 70%), the app lights
the matching pill under the header with its scale — Cfold in red for
current fold, Tfold in orange for thermal — and prints the live
percentage under the limit field. Tap the pill for its detail box (every pill
has one).
Each port dims with a high-frequency PWM carrier, picked per port from the PWM library under Port Settings → PWM Mode (also in the app, and over RDM via MODULATION_FREQUENCY):
| Entry | Carrier | Use it for |
|---|---|---|
| Smooth | 8 kHz | Smoothest low-end dimming on the earlier (2.x) output stage |
| Camera (default) | 15.6 kHz | General camera work; the carrier a new unit ships on |
| Silent | 20 kHz | Above hearing: quietest drive |
| Custom 1–3 | 2–25 kHz, your choice | Matching a camera or another fixture |
All carry the full ~16-bit dimming resolution (temporal dithering makes up the difference at the higher carriers).
Custom entries. In the app, the port's Output sheet → PWM → Custom… sets up to three entries. Each holds a carrier, and any port can select it; the port keeps its own dimmer curve. The app shows the carrier the hardware will really produce. Custom entries are outside the tested set, so check the result on the strip and on camera before a show:
A port needs port firmware 2.7 to run a custom entry; on an older port the entries are greyed out.
Setting up for slow-motion / high-speed capture:
docs/DMX_CHART.md