[ MMM-LEDStripControl ] - Control a LED strip with optional Pong game support
This module controls a led strip (in my case a WS2801 strip with 160 leds or an WS2813 strip with 300 leds) with notifications that are converted to MQTT messages with help of the module MMM-MQTTbridge of sergge1 ([https://github.com/sergge1/MMM-MQTTbridge]). The led strip will be controlled with a Python based script that runs on a second Raspberry Pi which is connected to the network and registers to the MQTT topics. The different configuration options of the led strip are grouped into element groups. It is possible to hide unneeded groups. The current active element is marked with an red square. The active element can be changed either by touch or notification. Also the values can be changed by notification or touch. The touch icons provide two different steppings for up and down.
The Python script supports the pong game. If the second button is pressed within a configured interval after the first one the pong mode starts. An running light will be initiated and the two players need to press their button in the moment the running light reaches their end of the strip. If the players hit the button to early or late the other player gets an hit. After an configurable amount of games the final result will be displayed and the strip changes back to normal mode. Each time the running light turns around it gets faster.
This script is provided within the following repository: PythonLedControl. It currently supports all WS2801 and WS281X strips.
The initial release provides the following features
- All elements are included to change the output state, color and pong game options of an led strip either with notifications or via touch elements
- The to be displayed elements can be configured
- The initial values, the steppings and the minimum values and maximum values can be configured
- The module will react to configuration changes of the led strip
- The layout is based on flexbox and can be changed easy in CSS