← All guides

Wearable LEDs: Lit All Night

Pick the strip

TypeDraw/meterWhen it wins
Single-color strip~0.4 ACheap glow, long runtimes, one hue is enough
Analog RGB~0.6 AWhole-strip color changes; simplest wiring
Addressable (NeoPixel)~1 A at whitePatterns, gradients, per-pixel motion, the wow tier

The battery math

Hours = mAh ÷ mA-draw. A 10,000 mAh bank feeding a 1 A build is ~7 honest hours with inefficiency margin; plan dimmed presets at 30–50% and double the number you got. USB power banks are the friendliest; LiPo packs are the lightest; both want a switch.

The dimmer preset is the pro move: full-white is a display mode for photos, not the con plan. Pre-made 40% looks identical in a dim hall.

A strip, worked with the lab's own defaults

Take the example the lab opens with: 3 meters of single-color strip (~0.4 A/m) on a 5,000 mAh USB bank. Draw = 3 × 0.4 = 1.2 A; hours = 5 Ah ÷ 1.2 A ≈ 4.2 h at full white. The dimmer-preset rule above turns that 4.2 into the plan: run 40% presets and the night fits comfortably, and 3 m of strip wants its power injection anyway (every 2 m). The same box runs it live: change meters, change the bank, the hours read out instantly, and the math matches the printable LED cheat sheet.

The rig, fired from the wrist

The costume's lighting joins the show, not just the battery. The app's Props tab fires HTTP actions per gesture — a method (GET/POST/PUT), a URL, an optional body — from the watch, over the local network: WLED strips, Philips Hue, Home Assistant scenes (smoke, fans, lights), a DIY ESP32. Each row carries its own test button that fires the request from the watch, so the venue's Wi-Fi gets rehearsed, not just the bench. Route by latency: glows and flashes belong to this networked lane (~100–400 ms, the latency table's rule); the watch's own speaker keeps the sharp hits under 50 ms.

Diffusing

8–10 mm of something translucent between LED and eye: ping-pong halves, silicone, frosted acrylic. Double-diffuse for faces. Strip laid INSIDE a channel (foam U-channel is free) reads as clean line rather than dotted string.

Wiring for a con

Fixes

SymptomCauseFix
Tail of the strip dimsVoltage dropInject power at the far end too
Random glitchingData wire too long or unshieldedShorten/ground the data run; resistor on the data pin
Battery dies by 7 pmFull-white planThe preset discipline + bigger bank
The app helps: the app's Props rows each carry their own test button — fire the request from the watch on the bench, then fire it again at the venue when its Wi-Fi shows up, the rehearsal that keeps show night boring. The watch's own speaker keeps the sharp hits under 50 ms; the networked lane (the Props tab's WLED, Hue and Home Assistant actions) carries the glows and fans at the ~100–400 ms the cue plan budgets for them. Every cue sound in the plan lives on the site's sound library, and the lab's runtime box re-runs this page's battery math on whatever strip and bank finally came home.