
Self-directed — October 2026
Mechanical night light
kumi opens and closes according to your local day and night cycle. A 3D-printed body, a stepper motor and neon filament LEDs on a scissor lift, all wrapped in a hand-folded paper bellow. Set your location, date and time on the on-board interface and the light does the rest — or turn the knob and use it like any other lamp.
EnquireEdition — 1× kumi smart lamp
Composition
3D-printed chassis, walnut shell, hand-folded paper bellow, 4000K neon LED filament.
Mechanism
ESS57 closed-loop stepper motor and worm drive, MGN12 linear rail, pantograph scissor lift on clevis pins.
Electronics
ESP32 with Bluetooth and over-the-air updates, 1.9" display, rotary knob, real-time clock, 36 V supply.
Lineage
Pylon Floor Lamp (2020) — the mechanism. maki (2023) — the fold.
Anatomy
Two assemblies — fourteen parts

Bottom assembly
1 Inner compartment · 2 Electronics computing unit · 3 Bottom runner · 4 Worm drive · 5 Outer shell · 6 ESS57 stepper motor · 7 MGN12 linear rail · 8 Bearing

Pantograph
1 4000K LED filament · 2 Outer arm · 3 Middle arm · 4 Angled arm · 5 Spacer · 6 Clevis & pin
Software — built with Claude
ESP32 · Chrome · Bluetooth
I’m a product designer, not a software engineer. I described how kumi should behave; Claude wrote the code; I flashed it, tested it on the bench and reported back exactly what the machine did. Then round again. The skill isn’t typing code — it’s describing a machine precisely enough to build it.
01 Describe
Behaviour, in plain English
02 Generate
Firmware and web app
03 Flash
Over the air
04 Test
On the bench
05 Report back
Symptoms, not guesses
Firmware
ESP32 code that drives the stepper and dims the filament LEDs, with step pulses on a hardware timer and over-the-air updates.
Remote
A Chrome web app over Bluetooth: brightness 0–100, and the lift — up, down, stop.
On-board
A 1.9" screen, rotary knob and real-time clock, with menus for Clock, Lights and Motor.
Bench log
The motor jittered
3,200 steps per rev; step pulses moved onto a hardware timer.
The motor clicked
Phase wiring from 22 AWG up to 18 AWG.
Lost steps one way
The motor body wasn’t screwed down.
MOSFETs failing
A dead short inside the LED string itself.
One shared supply
36 V, 6 A — LED brightness capped at 50%.
You may also like
View all