DIY NanoLeaf on a Budget
This project is my attempt to create my own hexagon LED wall panels based on NanoLeafs and by adding Alexa to it. This will allow me to not only control the colors and brightness of the lights with the Blynk app, but to also turn them on/off with Alexa. These lights will be in my home office, so I can say "Alexa, turn on the office" and she will turn all my office lights on, including the HexLeaf setup.
- ESP32 Dev Module
- WS2811 LED Strip
- Buck Converter
- LED Connector
- 12V Power Supply
- AnyCubic i3 Mega 3d Printer
For a full write up and better documentation, either checkout the GitHub page or the YouTube video I made for this!
This software uses the FastLED library and some custom classes to construct an array of HexNodes which can each be set to an individual color. There are a few things to configure in the code before you can get started, so make sure to download this project and open it up in the Arduino IDE.
- Open Project in Arduino IDE
- Copy `credentials_example.h` to `credentials.h`
- Set Credentials for WiFi in `credentials.h`
char ssid = "My WiFi Connection";
char pass = "examplePassword";
- Download the Blynk app and create a new project
- This will create an Auth key for you
- Add Blynk Auth key to `credentials.h`
char auth = "BLYNK AUTH CODE";
- Configure settings in `Nanohex.h`
/* Number of LEDs in each box/leaf */
#define LEDS_IN_BOX 7
/*The number of boxes */
#define NUM_BOXES 8
/*The pin the LED is connected to */
#define LED_PIN 27
- Configure settings in `HexLeaf.ino'
#define ID_LIGHT "NanoLeaf"
CRGB primary_color = CRGB(0, 153, 204);
CRGB secondary_color = CRGB(254, 201, 1);
- Setup the Blynk App
- Configure the ZERGBA on V3 with the `MERGE` setting
- Configure a brightness slider on V1
- Configure a 'Segmented Switch' on V0 for:
- Primary Mode
- Solid Mode
- Breathing Mode
- Configure a button on V2 for power
- Plug it in, Press play and control your hexes!
- Have Alexa scan for new devices and include your lights in any routines you want!