Halo
Talks to a lamp one pixel at a time.
- Year
- 2026
- Made for
- Python, Bluetooth LE
- State
- shipped
The Moonside Halo accepts per-pixel colour over Bluetooth. Its own app will not give you that.
Eighty LEDs in forty slots around a ring, index zero at six o’clock, twenty at twelve. The command is PIXEL,<index>,<RRRGGGBBB> with every channel padded to three digits. The obvious guess is the brightness form, which connects, returns nothing, and quietly ignores the colour you asked for. Telling those two apart was most of the work.
The repo is the note I wanted to find when I started.
How to use it
The repo is private, but the part worth having is one line.
-
The lamp takes per-pixel colour over BLE in this form, every channel padded to three digits.
PIXEL,<index>,<RRRGGGBBB> -
So the pixel at six o'clock, in red:
PIXEL,0,255000000
POiO
ongoingA chicken recipe assistant that is turning into a countertop bird.
Islands
shippedAnother macOS window manager. This one accordions.
dab
shippedTurn any patch of your screen into pixel art.
Balancer
shippedA personal trainer for micro-breaks, living in the menu bar.
Sona
conceptA mechanical keyboard with an instrument living inside it.
toss
prototypeFlick a ball off your screen. It lands on a friend's Mac.
Habitus
ongoingCheap marketplace finds, held to a hundred at a time.
Darkroom
conceptA cube that develops your photos by imagining them.
Branding Oracle
ongoingA brand engine a designer drives and a client never sees.
vaiven
shippedA Canvas engine where every animation is one JSON config.