This is my fourth and final code to control window blinds in SmartThings with a NodeMCU ESP8266 chip and a servo.
Why my fourth try?
Because all of my other attempts involved setting up a RaspberryPi, configuring Home Assistant, an MQTT broker, SmartThings MQTT Bridge, configuring paths, etc, etc…
All I wanted was for it to JUST WORK!
But at the end of every attempt I still had the same issues: Stability and Delays.
So here we are with my fourth attempt: Absolute Simplest ESP8266 Smart Blinds. Using just a micro web server on the ESP8266 and a simple HTTP GET command in SmartThings, response time is almost instantaneous and there’s no middle point of failure or complication.
- Intended for a standard servo (not a continuous rotation servo) and amount of tilt degrees are commented in sketch code for adjustment
- 1 custom device to add to SmartThings and 1 arduino sketch to flash
- Just set your Wifi SSID and Password, choose a static IP and go
- Tested with Amazon Echo, Alexa responds to both “Turn the Blinds On/Off” as well as “Open/Close the Blinds”
- I have found servo shaft couplers are the absolute easiest way to connect your servo in-place of the blinds tilt gearbox, thus hiding your servo, board, and wires all in the blinds upper housing.
And while I know there is more elaborate solutions and implementations with SmartThings-MQTT Bridges and such, I was trying to keep this as simplistic, cheap, minimal points of failure, and zero-maintenance as possible.
Gallery: Imgur: The magic of the Internet
Code: GitHub - hobbzey/Simplest-SmartThings-ESP8266-Blinds: Extremely Simple ESP6288 NodeMCU SmartThings Blinds
Servo Shaft Couplers: https://www.servocity.com/html/servo_to_shaft_couplers.html
Click for makeshift Step-by-Step Programming Guide
Blind Install Pictures: coming-soon
Note: This was based off of a fork of user @Casper 's smartfan code which was based on user @JZst Generic HTTP Devices and pieces of the Arduino sketch were cherry-picked from various sources, all of which are cited and credited in the README.md on github.
Lastly: While I am using the NodeMCU board, this should work on just about any ESP8266 based board…
and MQTT, etc. Can’t deny that it looks terrible when comparing final product to the video you posted.
and I don’t know how to attach the servo to them… 