Smart lights come in all sorts of shapes and colors. The most common way of implementing a smart light is using LEDs. They are perfect for basic illumination, creating cozy atmospheres, enhancing art and music experiences, festive decorations, visual alerts, signage, and much more, offering endless possibilities for makers.
Addressable LEDs
The firmware on this page is an example implementation of a smart light device using WS28xx addressable LED pixels, one of the most popular products when it comes to LED lights and microcontroller modules.
With the color-light
firmware and WS2812 RGB LEDs is possible to build smart lights with an arbitrary number of color-changing LEDs that can be independently addressed.
This type of LED only requires 3 wires (VCC, GND and a GPIO pin) to connect to the microcontroller.
Ingredients
- ESP32 / ESP8266
- HomeGenie Mini
color-light
firmware - WS2812 or compatible RGB LED strip
- Optional on-board single WS2812 RGB status LED
- Custom 3d printed parts (optional)
Device features
- Easy configuration via Bluetooth or WPS button
- Wi-Fi connection
- Builtin scheduler with JavaScript support
- Works also offline
- Works with base ESP RAM/FLASH size
- Free and easy to use client (HomeGenie Panel app)
- Open source Firmware and API
Create this device now! 🪄
Connect your ESP32 / ESP8266 microcontroller to the USB port of this computer, select the desired firmware version, and click the "Create device" button to upload HomeGenie Mini firmware to the device.
1. Select device type
2. Select firmware flavor
3. Let the magic happen!
Installing firmware directly from this page works only in browsers with Web Serial API enabled.
See the Device setup page for further information about configuring a HomeGenie Mini device.
Source code
This firmware pre-compiled binaries and source code are available on GitHub:
Modules and API
In addition to the common Device API, the following modules and API are implemented by this device.
C1
module
This is the master module that controls all LEDs simultaneously.
Domain / Address
HomeAutomation.HomeGenie/C1
Properties
Status.Level
Status.ColorHsb
Commands
Control.On
Control.Off
Control.Toggle
Control.Level/<level>/<tansition_ms>
Control.ColorHsb/<h>,<s>,<b>,<tansition_ms>
L1
... L<num>
modules
These modules control the LED corresponding to the number <num>
.
Domain / Address
HomeAutomation.HomeGenie/L<num>
Properties
Status.Level
Status.ColorHsb
Commands
Control.On
Control.Off
Control.Toggle
Control.Level/<level>/<tansition_ms>
Control.ColorHsb/<h>,<s>,<b>,<tansition_ms>