Cubina

Cubina is a walk-around volumetric light sculpture created for Burning Man 2026 and hosted by Kinky Pizza. Its 1,024 individually controlled, frosted light spheres are arranged in a grid 8 wide, 8 deep and 16 high. Each sphere acts as a voxel—the three-dimensional equivalent of a pixel—allowing Cubina to create boxes, waves, spirals, particles, letters, icons and other moving forms that appear to float in space.

Unlike a television screen or projection, Cubina has no single front. Viewers can walk around it and see its luminous forms from different perspectives. Its software independently combines shapes, motion, surface textures and color palettes, allowing roughly 50 animation routines to produce thousands of distinct visual scenes.

Cubina is also interactive. Visitors can take control and play games that extend familiar ideas such as Tetris, Snake, Asteroids and Breakout into a physical three-dimensional display. It can also act as a scrolling marquee for messages, letters and animated icons like Pac-Man.

Cubina is designed specifically for nighttime viewing. The darkness between its lights is as important as the lights themselves: empty space helps the eye separate the layers and perceive genuine depth. Its animations therefore favor luminous outlines, surfaces and deliberate movement rather than simply illuminating every sphere at once.

The 2026 installation is a 1,024-voxel step toward a full 16 × 16 × 16 version containing 4,096 light spheres in 2027. Cubina is the work of David Berger and draws generously on the efforts of software and hardware developers throughout the world. It is also a continuation of an LED cube David built in 2015—and a joyful tribute to his late wife, Dana, who jokingly called that first obsessive project his “mistress, Cubina.”

Progression

Cubina began with 4 × 4 × 4 and 8 × 8 × 8 LED cubes in 2015, ranging from single-color designs to a full RGB cube 2015. In 2025, David built a 10-inch 16 × 16 × 16 desktop prototype. In spring 2026, that work grew into a 144-light, 3 × 3 × 16 standing 8 feet high display shown at unSCruz. The Burning Man 2026 installation expands the concept to 8 × 8 × 16, with the full 16 × 16 × 16, 4,096-voxel version planned for Burning Man 2027.


The sections below describe Cubina’s construction, electronics, software architecture and individual animation routines in greater detail. They are included for makers, programmers and anyone curious about what is happening behind the lights.

Physical construction

Cubina is built from 1-inch electrical metallic tubing, or EMT, in a 10 × 10 × 8-foot frame. It is reinforced with diagonal cross-braces and anchored to the playa with 18 lag screws. The 2026 illuminated volume is approximately 8 feet high, 4 feet wide and 4 feet deep. The larger frame is designed to accommodate the full 16 × 16 × 16 expansion planned for 2027.

Electrical considerations

Cubina is powered by a 480-watt, 24-volt Mean Well power supply. The LED runs use 18-gauge wire, with heavier cabling for the main power connections, careful grounding of the metal frame, independent fusing and GFCI protection. In normal operation, Cubina consumes about 250 watts (less than 3 amps of AC current), leaving substantial operating and safety headroom.

Why all of this? Cubina is engineered for the playa: its frosted light spheres and electronics are weather-resistant, its steel structure is anchored against wind, and its control signals travel over noise-resistant twisted-pair wiring.

Hardware

Quindor’s QuinLED boards manage Cubina’s ESP32 controller, distribute power safely and solve several problems David previously handled with custom hand-soldered circuit boards. Cubina also uses RS-485 differential signaling—essentially a robust way to carry control data over long, electrically noisy cable runs.

Each visible “LED” is actually a waterproof 50 mm plastic sphere containing six internal LEDs. For shorthand, this document refers to each complete sphere as an LED.  The LEDs run at 24v DC allowing for thinner wire to carry the power.  

The LEDs are arranged in drops of 16 lights, held together by T-connectors that carry power, ground and data down and then back up each drop. Eight connected drops form a vertical plane, and two planes are treated as a connected set, meaning 16 drops are directly connected.

Data for each pair of planes is carried from the main processing microcontroller through an RS-485 sender/receiver pair over Ethernet cables, with the electronics housed in waterproof boxes. Power is routed separately from the main power-distribution board and injected directly into each plane set.

The software is taught this physical topology, abstracts away the wiring details and presents the animation algorithms with a clean 3D grid to manipulate.

Software

David wrote or substantially rewrote every routine, with extensive assistance from Google’s Gemini AI, while drawing on the work of many talented developers—including contributors to the WLED community, Nick Shulze and others. Every routine runs on a modern graphics engine.


Cubina’s software treats an object’s shape, movement, surface pattern and color as separate building blocks. A sphere, box or helix can be painted with waves, clouds or liquid-like color, then made to spin, tumble, bounce, expand or collapse. This modular approach allows a few dozen core animation routines to produce thousands of visibly different scenes.

Detailed Technical Description

Cubina’s rendering architecture divides its workload between a mathematically precise Geometry Engine and a versatile Texture Engine. The Geometry Engine uses advanced techniques including Signed Distance Fields (SDFs) and Xiaolin Wu-style distance math to achieve sub-voxel anti-aliasing. When engaged, these models map fractional intersection distances directly to LED brightness, producing smooth edges and continuous-looking motion as objects spin and tumble across the grid. However, this heavy math is strictly opt-in—the engine bypasses these calculations to draw raw, discrete voxels whenever sharp edges or maximum performance are preferred.

The Texture Engine acts as a dynamic brush, applying one of nine volumetric shaders—from moving 3D waves and Perlin clouds to Euclidean interference patterns and fluid metaballs. To maintain high framerates and conserve processing power while Bluetooth tasks run on a dedicated hardware core, the rendering engine aggressively minimizes computational overhead inside the inner voxel loops. It caches spatial calculations by axis to prevent redundant math and strips out expensive floating-point operations—such as standard trigonometric functions and square roots—in favor of highly optimized fast approximations, integer math, and squared-distance comparisons.

The diagram below shows how these software layers fit together.