Minimal python library for controlling LED controllers that use the MagicStrip iOS/Android app. These are inexpensive, white labeled controllers that are available on Amazon, AliExpress, etc. under brand names that include TOPMAX and L8star.
The firmware on these devices is terrible so feature support is spotty.
This library only supports RGB LED strips that appear in the MagicStrip app under the name "HTZM". RGBW, RGBWW, etc. devices are not currently supported.
Feature | Read Property | Set Property | Notes |
---|---|---|---|
Power | ✅ | Device firmware does not have discrete on and off commands. This library can only toggle state. | |
Brightness | ✅ | ✅ | |
Color | 🚫 | ✅ | |
Effects | 🚫 | ✅ | We technically can read this property, but the device does not report whether it is in solid color mode or effect mode, so the report is useless. |
Effect Speed | 🚫 | ✅ | (See above.) |
Sound / Music Mode | 🚫 | 🚫 |
This library is based on the python bleak library and does not abstract/wrap all features. You must use bleak directly alongside pymagicstrip.
For usage examples, see https://github.com/elahd/ha-magicstrip. (Apologies for the lack of clear examples here.)
Processor: Lenze Technology ST17H26 (Datasheet [PDF]). This is a OTP microcontroller with built-in BLE functions.
EEPROM: Atmel AT24C02N (Datasheet [PDF]). 2K memory chip.
These are reference photos of the interior of the device.
Pymagicstrip is heavily based on elupus' Fjäråskupan Bluetooth Control library.