2026.04.18·Control system

How Naga Lights Up The stack behind a hundred feet of serpent

Roughly 540 addressable pixels, five ESP32 nodes and one Raspberry Pi speaking Art-Net. The simulator came first; the serpent followed.

People ask how a hundred feet of steel "knows" how to move light down its body. The honest answer is layers, each one boring enough to trust, stacked into something that isn't.

Pixels and nodes

The serpent carries roughly 540 addressable LEDs along its five sections. Five ESP32 controllers drive them, receiving frames as Art-Net over the network. The render side never talks to LEDs directly; it talks Art-Net, which keeps the "what to show" cleanly separated from the "where the wires are."

pixels ~540 addressable, across five sections
nodes 5 × ESP32, Art-Net over the network
render Raspberry Pi, Python render loop + Chromatik / LX
visitors QR → web app → cloud API → the Pi
watching a health service, independent of the lights

The render loop

On the sculpture, a Raspberry Pi runs two things: a Python render engine that computes pattern frames and pushes Art-Net UDP, and a Chromatik / LX project for ambient playback. A topology model, the single source of truth for where every pixel physically lives, feeds both, so a pattern written in "serpent space" lands on the right LEDs no matter which engine renders it.

Topology editor placing and bending LED fixtures in 3D
The topology editor: bending fixtures along the spine until the pixel map matches the metal

Orchestration

A controller service decides what's running. Ambient patterns play by default; when a visitor interacts, the controller hands off to the interactive render path and back again. It can start and stop the render engine and the Chromatik service like any other system unit. The handoff between modes is the part that took the most care to make seamless.

Visitors

A QR code points a phone at a small web app. That app talks to a cloud API, which proxies safely to the on-site Pi over a private network. The cloud layer exists so the sculpture never has to expose itself directly to the public internet.

Keeping it alive

A separate health service monitors devices and services independently of the lights. On the playa that meant catching failures before they became a dark serpent at 2am; in the park it means quiet, years-long reliability: a different kind of problem, and the harder one.

This is an early draft. The architecture is accurate; the diagrams, photographs and code walkthroughs are still to come.