== frombelow.net ==

Eris 2010. Led Pillar. Blinkenstrip.

Blinkenstrip: Blinkenlights on an LED strip or matrix

Shows effects on a WS281x strip or matrix connected to an ESP32. The ESP32 runs a minimal web server allowing to control the effects. The system is highly configurable: It can show effects both on LED strips of arbitrary length and on LEDs arranged as a matrix.

Here is a little demo.

Installation & Operation

Repository (Clone) ⟸ Blinkenstrip source code. It’s free!

Connect the data line of the WS2811 strip to pin 4 of the ESP32. Install the software the usual way. When powered up, the ESP spawns an AP with ESSID “blinkenstrip” and password “blinkenstrip”. Connect to the AP and access the web interface at gives access to system configuration. Here you can set the layout of your strip/matrix, and configure the system to connect to an existing network instead of an access point. If you configure your ESP to join an existing network and don’t know its IP address, run idf.py monitor and check the debug output.


  • Sequence

    All LEDs show the same, changing color. This is a nice effect if you want to illuminate an object.

  • Blink

    Individual LEDs switch randomly between blue and green color. This effect looks quite nice both on LED strips and on matrices.

  • Running Dot

    An individual red dot “running” on a blue backdrop.

  • Cellular Automaton

    Conway’s game of life. While designed for LED matrices, this effect also look surpringsly nice on strips.

  • Changing lines

    This is more of a test effect for LED matrices.

  • Worms

    A configurable number of worms eating blue dots. This is the recommended effect for LED strips. The number of worms can be set in the configuration menu.

Changing defaults

If you want different default values on first startup (i.e. before accessing, you can set different values in sub-menu “Blinkenstrip” of the system configuration executed by idfy.py menuconfig.

Factory reset & Hardware setup

If pins 12 and 13 are connected on reset, the user configuration is deleted and the factory default values are loaded.

For installations with a large number of LEDs, it is recommend to chain a suitable fuse (e.g. 6 A for 250 LEDs) into the power line of the LED strip/matrix.

Directory case/ provides an OpenSCAD file for a printable case. This case is designed to host a ridiciously overpowered 110 W Mean Well LRS-150F-5 power supply.


HTML characters in names (e.g. spaces) are not translated to ASCII.


  • v1.0
    First public version.

main/led_strip.(h|c) © 2016 by Lucas Bruder. Parts of main/webserver.c © 2016, 2020 Espressif Systems.

Everything else:

Copyright © 2021 Gerd Beuster gerd@frombelow.net

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at


Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.