Skip to content

bkpsu/ESP-MQTT-JSON-Digital-LEDs

 
 

Repository files navigation

ESP MQTT JSON Digital LEDs

This is my version of the NodeMCU LED strip controller, based on bruhAutomation's project, with my own modifications, including:

  • Ability to control mutliple strips at once using grouped MQTT topics
  • A fix for flickering issues with faster chipsets (FastLED interrupt issue)
  • Additional effects written by me (Christmas tree, Sine Wave, Random Stars, Breathe, Hue Breathe)
  • Making the entire project "production-quality" using a printed circuit board to hold the components/wiring together and a 3d printed enclosure to make the controller look professional installed around the home.
  • Focusing on openHAB as the home automation control suite, since it is what I use.

Supported Features Include

  • RGB Color Selection
  • Brightness
  • Flash
  • Fade
  • Transitions
  • Effects with Animation Speed
  • Over-the-Air (OTA) Upload from the ArduinoIDE!

Some of the effects incorporate the currrently selected color (sinelon, confetti, juggle, etc) while other effects use pre-defined colors. You can also select custom transition speeds between colors. The transition variable also functions to control the animation speed of the currently running animation.

The default speed for the effects is hard coded and is set when the light is first turned on. When changing between effects, the previously used transition speed will take over. If the effects don't look great, play around with the slider to adjust the transition speed (AKA the effect's animation speed).

OTA Uploading

This code also supports remote uploading to the ESP8266 using Arduino's OTA library. To utilize this, you'll need to first upload the sketch using the traditional USB method. However, if you need to update your code after that, your WIFI-connected ESP chip should show up as an option under Tools -> Port -> Porch at your.ip.address.xxx. More information on OTA uploading can be found here. Note: You cannot access the serial monitor over WIFI at this point.

Demo/Hardware Build Video

Demo Video

Arduino IDE Setup video

Tutorial Video

openHAB Configuration Video

openHAB Video

Long String Considerations (Power Injection) Video

Long Strings

Parts List

About

ESP MQTT Digital LEDs for openHAB, MQTT JSON Light Component. Supports flash, fade, transitions, effects, and OTA uploading!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 100.0%