Design LED strip lighting the way you would draw a picture β set the colour, brightness and lit position of every LED, add effects, and see the whole panel before it reaches the hardware.
The idea
A strip of LEDs is a display. It is a long, thin, awkward one, wired in an order somebody chose for the convenience of the solder joints, but a display all the same β and the natural way to design for a display is to draw on it.
So that is what this editor gives you. Pick a colour, click a pixel, and that LED lights. Drag out a shape, and it becomes a piece you can name, reuse and animate. The wiring order, the colour depth and the byte order your particular part demands are described once, in one dialog, and the editor takes care of translating your artwork into them.
What it produces
Most image editors end at a file you look at. This one ends at source code: each region you mark becomes a const array of pixel values, in the order the LEDs are wired and at the colour depth the part can hold. Your firmware includes that file and lights the panel from it.
That is the whole reason the editor is deliberately small. It draws pixels, and it knows about LED hardware. It does not retouch photographs.
Four words worth learning first
| Term | What it means here |
|---|---|
| Box | A rectangle on the image, with a name. One box becomes one exported array β usually one character of a font. |
| Box list | Every box in the current image, in the order they will be exported. Saved next to the PNG as a .box file. |
| Arrangement | The order the LEDs of a box are walked: which corner is first, rows or columns, and whether alternate lines fold back. |
| Channel order | The order the colour bytes go out on the wire β RGB, GRB and so on. Wrong order means the panel lights in the wrong hue. |
What a session looks like
- Open or create a PNG.
- Draw, or paste artwork someone else drew.
- Mark the parts you want as boxes and name them.
- Set the bit depth, channel order and wiring in LED settings.
- Preview it with box animation, then export the source and download it to the board.
π‘ Steps 4 and 5 are the ones that describe your hardware. Set them once for a bench and they stay set β they are stored, not asked for at each export.