Skip to main content

DMX RGBW Fixture (Art-Net)

Driver: dmx_rgbw

Local control of RGBW DMX fixtures — color-changing LED tape drivers, wash lights, cove/architectural fittings — driven over an Art-Net Ethernet-to-DMX gateway (for example an Enttec ODE). One GEM device represents one Art-Net node and its DMX universe; each GEM zone is a single fixture occupying four consecutive DMX channels — Red, Green, Blue, White — starting at the zone's address. GEM tracks each fixture's last color, level, and white value, so turning it back on restores the state it was showing before.

Art-Net vs. eDIDIO

This is the Art-Net path — plain DMX over UDP to a standalone DMX-over-Ethernet node. It is distinct from the Creative Lighting eDIDIO driver, which speaks a proprietary protocol to an eDIDIO DALI/DMX controller and can auto-create its zones. Use dmx_rgbw for Art-Net nodes (Enttec ODE and similar); use edidio for eDIDIO hardware. Both share the same on-screen color/level control and the same color-preset palette.

Which DMX driver?

Use dmx_rgbw for 4-channel RGBW color fixtures. For single-channel on/off functions — star-ceiling power/twinkle inputs, effect toggles, DMX-controlled relays — use dmx_switch instead. Only one GEM device may own a universe (each refreshes full-universe frames), so put switches and RGBW fixtures on separate universes if both are needed.

Prerequisites

  • An Art-Net DMX gateway (e.g., Enttec ODE) reachable on the LAN from the GEM server.
  • Each fixture wired into the DMX universe with a known starting channel.
  • Each fixture set to 4-channel RGBW mode — not 3-channel RGB, and not a wider personality such as RGBWA or RGBWAUV.
  • UDP 6454 reachable outbound from the GEM host to the gateway (the default Art-Net port).

Setup

  1. Configure the Art-Net node on the network and confirm it responds at a known IP on its Art-Net UDP port (default 6454).
  2. On each fixture, set the DIP switches / menu to its starting DMX channel and to 4-channel RGBW mode. Note each fixture's starting channel — you will need it per zone.
  3. Open the Devices page (System → Devices), choose Add Device, and pick the driver dmx_rgbw ("DMX RGBW Fixture").
  4. Set the device's Art-Net Node IP to the gateway's LAN IP. Leave Art-Net UDP Port at 6454 and Art-Net Universe at 0 unless your node is configured differently. Save and reload — the device comes up Connected once the universe is opened.
  5. For each fixture, create a zone under Zones: bind it (the Device field) to this DMX device, set its Subsystem to Lights, set its Address to the fixture's starting DMX channel, and set the zone's Control to dmx_rgbw so the color/level UI renders (see The zone control).
Subsystem placement

A default GEM install ships a Lights subsystem (internal name lights). This driver hints lighting, which does not exactly match that name, so the zone editor will not pre-select the subsystem for you — choose Lights by hand, or point the zone at any lighting subsystem you have created under Subsystems.

Addressing

The zone Address is the fixture's 1-based starting DMX channel. An RGBW fixture occupies that channel plus the next three:

Zone addressRedGreenBlueWhite
1ch 1ch 2ch 3ch 4
12ch 12ch 13ch 14ch 15
nch nch n+1ch n+2ch n+3

Because a fixture claims four channels, the starting channel cannot exceed 509 (509–512 is the last valid block). An out-of-range or non-numeric address is rejected and the fixture will not respond.

Attributes

Device

AttributeRequiredDefaultDescription
ipyesArt-Net gateway LAN IP (the Art-Net Node IP field).
artnet_portno6454Art-Net UDP port on the gateway.
dmx_universeno0Universe number on the Art-Net node (0–32767).
dmx_speedno40DMX refresh rate in Hz (1–44).

Zone

AttributeDefaultDescription
default_white255White-channel level (0–255) used when the fixture is turned on without a stored color — so a fresh fixture defaults to white rather than black.
color_presetsThe fixed 11-slot color palette ([{name, color, white}]) for this fixture, edited in place from the zone control. Empty until customized — the control and driver fall back to a shared default palette. See Color presets.

Written back by the driver (read-only, reflecting the fixture's current output): red, green, blue, white (0–255), color (hex #RRGGBB), level (0–100), and state (on / off). These populate the on-screen control and are available to macros, triggers, and reports.

Standalone-mode fields

The zone editor also exposes advanced Standalone Mode, Mode Speed, and Mode Brightness fields. These describe a fixture's built-in standalone program and are not currently acted on by this Art-Net driver — it always drives the R/G/B/W channels directly. Leave them blank unless you are recording the fixture's mode for reference.

Commands

Every command targets a fixture by its zone address (auto-filled from the picked zone in the command builder):

CommandArgsEffect
onaddress (optional level)Turn the fixture on. With no level, restores its last color (or default_white if it has never shown a color). With a level, behaves like level.
offaddressTurn the fixture off (all four channels to 0).
leveladdress, levelSet brightness 0–100. The current color's hue is preserved and scaled; level 0 turns the fixture off.
coloraddress, color (optional white, level)Set a hex color #RRGGBB. Optionally include a white channel value and a level to set at the same time.
whiteaddress, white (optional level)Drive the white channel only (0–255) and zero the R/G/B channels — a pure-white output.
rgbwaddress, red, green, blue, whiteSet raw channel values 0–255 directly (each clamped to range).
apply_presetaddress, presetApply a saved color preset by name or index.
save_presetaddress, name, color, whiteSave the current color (or a given color/white) as a named preset; overwrites a same-name preset. Capped at 11 — a genuinely new name past the cap is rejected.
delete_presetaddress, presetDelete a saved color preset by name or index.
Color values

Hex colors must be exactly six hex digits — #RRGGBB (the leading # is optional). A malformed color is rejected rather than applied, so a fixture never flashes an unintended value.

The zone control

Setting a zone's Control field to dmx_rgbw gives it the RGBW touch control on the Lights page and in widgets. It shows:

  • a power toggle (drives on / off, restoring the last color on),
  • a color swatch picker (drives color),
  • an L (level) slider, 0–100 (drives level),
  • a W (white) slider, 0–255 (drives white), and
  • an 11-swatch color-preset grid with a pencil edit toggle (see below).

The color picker and the level/white sliders all stream live as you drag — each sends at a light throttle so the fixture tracks your finger without flooding the gateway, with the final value committed when you let go (or, for the picker, when it closes). (The same control is shared with the eDIDIO driver, where it additionally surfaces a DALI scene selector for dali fixtures — that selector never appears for an Art-Net dmx_rgbw fixture, which is always full RGBW.)

Color presets

Each fixture carries a fixed 11-slot color palette in its color_presets attribute — an array of {name, color, white}. In the zone control the presets render as a 6×2 grid (11 swatches plus the edit toggle fill the 12 cells):

  • Tap a swatch to apply it. The control sends the swatch's stored color straight to the driver's own color command, so it runs the same channel math as any other color change — there is no name-based apply_preset round-trip (the apply_preset command is still available for macros and direct use).
  • Edit mode (the pencil toggle) turns each swatch into a native color picker. The fixture live-previews the color as you drag, and the slot is saved when the picker closes — the light rests on exactly what was saved. Changing a slot recolors it in place — its name and white value are kept. The control never adds or deletes slots, so the count always stays 11.

Until a fixture is customized, the control and driver both fall back to a shared default palette — warm and cool whites first, then a color wheel. Those defaults are written into color_presets the first time a slot is saved, never silently on read. Saving works for non-admin UI users, since the palette is stored server-side. The palette shape is identical to the eDIDIO driver's, so presets behave the same across both kinds of fixture.

Multiple fixtures on one gateway

One Art-Net node driving many fixtures needs one GEM device (the node) and one zone per fixture, each zone's Address set to that fixture's starting channel. All the zones share the device's universe and refresh rate; they differ only by their four-channel block. Give non-overlapping starting channels four apart (1, 5, 9, …) so fixtures don't share channels.

Troubleshooting

SymptomCheck
Fixture flashes random colors when turning onThe fixture is likely in the wrong DMX mode — it must be 4-channel RGBW, not a wider personality (RGBW+, RGBWAUV).
Colors are shifted (e.g. red comes out on green)The zone Address doesn't match the fixture's real starting channel, or a neighboring fixture's block overlaps this one.
The last fixture in the chain misbehavesAdd a 120 Ω DMX terminator across the last fixture's data lines.
No response at allConfirm the Art-Net Node IP and Universe match the GEM device, and that the GEM host can reach the gateway on UDP 6454 outbound (check any host firewall).
Fixture won't respond and a warning mentions the addressThe zone Address is missing, non-numeric, or above 509 — set it to a valid 1–509 starting channel.
  • Zones — creating and binding the per-fixture zones.
  • Subsystems — the Lights subsystem these fixtures live under.
  • Commands — building and testing the commands above.
  • Macros — driving color, level, and presets from scenes and schedules.
  • Creative Lighting eDIDIO — the DALI/DMX sibling that shares this control and palette.
  • DMX Switch — the single-channel on/off sibling for star ceilings, effect toggles, and DMX relays.