Never Forget This Jumper Before Flashing
38sHardware mistakes are common; this quick tip saves viewers from a frustrating flash failure.
▶ Play Clip"Delivers a thorough, step-by-step software guide that matches the title's promise."
Matt from MKSmartHouse demonstrates how to configure the software for a DIY Blinds Control device on Windows, from flashing the ESP8266 firmware with an Arduino to integrating it with OpenHAB via MQTT. The video covers WiFi and MQTT configuration, uploading firmware, testing with MQTT.fx, and creating OpenHAB items, sitemaps, and automation rules.
Matt from MKSmartHouse shows how to set up Blinds Control software on Windows, covering firmware, MQTT, and OpenHAB integration.
Connect a jumper from RES, then TX→TX, RX→RX, GND→GND, 5V→5V between Arduino and Blinds Control. Ensure the 2-pin jumper is above PGM.
Download the Blinds Control Firmware from the MKSmartHouse website and extract the ZIP archive.
Edit SSID and password inside the code. Use only 2.4GHz network credentials and change only text inside quotation marks.
Each device has a protected web interface. Set hostname, username, and password in the top comment block.
Configure subscribeTopic, MQTT server IP, and unique device ID (change the last digit for each device).
In Arduino IDE, select Generic ESP8266 Module and the correct COM port, then press upload. Wait for '100% Done uploading'.
Unplug the dupont wires between Arduino and the device, then move the 2-pin jumper to the RUN position.
Connect MQTT.fx to the server, subscribe to '#', and publish any number 0-100 to the subscribeTopic to verify the servo.
SSH to the server, edit /etc/openhab2/items/home.items, and add a Dimmer item with MQTT binding, e.g. Dimmer MKBlindsControl1 "MK Blinds [%s]" <rollershutter> ["Lighting"] {mqtt=">[broker:MK-SmartHouse/utilities/MK-BlindsControl1:command:*:default]"}.
Edit /etc/openhab2/sitemaps/home.sitemap and add a Text item with mappings [0='Open',56='Half',100='Close'] and a Slider item.
Edit /etc/openhab2/rules/home.rules to add cron rules, e.g., Time cron "0 0 7 1/1 * ? *" then sendCommand(MKBlindsControl1, 100).
After completing the steps, the Blinds Control is fully flashed, tested via MQTT, and integrated into OpenHAB, with optional cron-based automation for opening and closing at set times.
Which pins on the Arduino are connected to the Blinds Control?
TX to TX, RX to RX, GND to GND, and 5V to 5V, plus a jumper from RES.
00:58
What WiFi band does the ESP8266 support?
Only 2.4GHz, not 5GHz.
02:22
What should you change when editing WiFi credentials in the firmware?
Only the text inside the quotation marks for SSID and password.
02:22
What are the three MQTT parameters to configure in the Blinds Control firmware?
subscribeTopic, MQTT server IP address, and unique device ID.
03:07
Why is a unique device ID used?
To differentiate each device on the MQTT side; usually you change the last digit for every device.
03:26
What Arduino IDE board setting is used for the ESP8266?
Generic ESP8266 Module.
03:40
What must you do after uploading firmware before running the device?
Unplug the dupont wires between Arduino and device, and move the 2-pin jumper to above RUN.
04:10
How can you test the Blinds Control with MQTT.fx?
Connect to the server, subscribe to '#', and publish any number from 0 to 100 to the device's subscribeTopic.
04:22
What OpenHAB item type is used for the blinds control and why?
Dimmer, because it allows control of the servo motor position with numbers 0-100.
05:23
What OpenHAB files need to be edited to integrate the blinds?
home.items for the Dimmer item, home.sitemap for Text/Slider controls, and home.rules for cron automation.
07:15
ESP8266 is 2.4GHz only
This fact prevents common connection issues by reminding users not to enter 5GHz network credentials.
02:22Each device has a web UI
This makes configuration and future firmware updates easier because each device is protected and accessible via a web page.
02:39Unique device ID for MQTT
Using a unique device ID for each device allows clean differentiation on the MQTT broker, simplifying multi-device setups.
03:26Test with MQTT.fx
A quick MQTT publish/subscribe test isolates hardware and connectivity issues before involving OpenHAB, saving debugging time.
04:22Dimmer item for blinds
Using a Dimmer item in OpenHAB is an elegant way to map servo positions to numeric commands, enabling precise control.
05:23[00:00] Hey guys Matt here from MKSmartHouse.com and in this video I am going to show you how to setup the software for the Blinds Control using Windows. [Intro]
[00:15] So in the last video we left off with the Blinds Control Device being fully built so all it needs is firmware and to be connected to the home automation server. I recommend having my website open up so that way you have all the steps and commands ready,
[00:30] I know this is the software video but, there are some hardware things that we need besides We are going to need an arduino of some kind preferably a UNO or a MEGA equivalent with
[00:44] its usb cable of course and male to male dupont jumper cables. Links to these items will be in the description or on the website. On my website you will also find my shop where you can find the kit, pcb and 3D printed parts
[00:58] The first thing we are going to do is grab the arduino and put a jumper cable from RES Then grab the Blinds Control and connect all the pins to their corresponding spots so,
[01:10] TX to TX, RX to RX, GND to GND, and 5V to 5V. Before we continue, check to make sure the 2 pin jumper is above PGM.
[01:23] Please note that in this video I will not go over how to setup the arduino IDE and will assume that it is set up and you know how to connect an arduino to it. If you do not know how to set it up or it is not setup then go check out my Door sensor
[01:36] software video where I go in detail of the entire process. Next we are going to head over to my site, the link is in the description to the exact page and press the download Blinds Control Firmware.
[01:49] On the new page press download.Then go to your file explorer and downloads folder and A pop up will come up asking if you want to put it in a folder, click OK.
[02:02] It should bring up the code for the Blinds Control, and there are only a few things we The first thing is the wifi settings which are the ssid and password so change those Please keep in mind that the esp8266 only works on 2.4ghz so type in your 2.4ghz wifi
[02:22] ssid and password not your 5ghz. Also when adding the information only change what is inside the quotation marks. The devices I designed are great because I implemented a web user interface for each
[02:39] individual device so that way if you ever have to flash new firmware you just go to The web address information is found at that top of the code in the giant comment block. The first parameter is the hostname of the device, usually I only change the last digit
[02:55] but since this is the first Blinds Control I will keep it as it is. After that is the web user interface username and password, these are the credentials you
[03:07] use to access the webpage because each device is protected. The first one is the subscribeTopic and this is the topic for which the device listens The next one is the MQTT Server Ip address and this is simply the IP address of your
[03:26] The last one is the Unique device ID and this simply differentiates each device on the MQTT side, I usually just change the last digit for every single device.
[03:40] So go to tools and make sure the Board: is Generic ESP8266 Module and the port is COM Once those are good press the upload button, it is the one with an arrow pointing to the
[03:55] When it is uploading you should see dots moving at the bottom and some percents. After it is done uploading you should see it say 100% and Done uploading. First unplug the dupont wires in between the arduino and the device.
[04:10] Then take the 2 pin jumper and move it over so it is above RUN. To confirm that it flashed correctly and is working you can fire up MQTT.fx, connect to
[04:22] the server and in the subscribe section type in # and press subscribe. If you do not have MQTT.fx then check out my Home Automation Server Setup Guide. In the topic bar type in the subscribeTopic that we wrote in the blinds control device
[04:39] Next in the message box type in any number 0 - 100 and press publish. Now the device is complete and just needs to be added to OpenHAB.
[04:53] So ssh into your pi or whatever your server may be. So type in sudo nano /etc/openhab2/items/home.items and press enter, you may need to type in admin
[05:09] Then type in the comment //Blinds Controls then underneath that we are going to create So type in Dimmer MKBlindsControl1 "MK Blinds [%s]" <rollershutter> [ "Lighting" ] {mqtt=">[broker:MK-SmartHouse/utilities/MK-BlindsControl1:command:*:default]"}
[05:23] It will allow us to control the Blinds Control. But let me go a little bit more in detail, the first part is Dimmer and since this device is a Blinds Control we need to control the position of the servo motor with numbers.
[05:39] The next part is the item name and I just used its hostname without the dash. After that is the label text and it is what shows up in the interface and how it is formatted Next to that is the icon name which is what picture shows up in the interface.
[05:55] After that is the item tag and what this does is allow this item to be used with home kite If you do not have either of those setup then you can check out my videos covering those
[06:08] Then lastly, we have the mqtt path to the device in there is the subscribeTopic that I have two blinds controls so I will paste it in again and change the item name, label
[06:21] text as well as the mqtt path to match that device’s subscribe topic. Now press control x then y and enter. Type in sudo nano /etc/openhab2/sitemaps/home.sitemap and press enter.
[06:43] If you are following along with my series then we have many different frames in our I am going to put the device in the frame called MK-Room. 56="Half", 100="Close"] Slider item=MKBlindsControl1
[06:57] and press enter, what we did is import the item into the sitemap so we can control it The controls it has is you can either press one of the three buttons, or use the slider. Again, since I have two I will also put the text in the JK-Room frame and change the numbers.
[07:15] Before we go any further let's confirm that everything works so go to your web user interface You should see the Blinds Control item.
[07:27] If you press the buttons and move the slider you should see the servo move. Now that we know the Blinds Control works let's make it automatically open and close In ssh type in sudo nano /etc/openhab2/rules/home.rules and press enter.
[07:45] Time cron "0 0 7 1/1 * ? *" then then sendCommand(MKBlindsControl1, 100) Let me explain what this does, the first rule sets the blinds to half everyday at 7 am the
[07:57] If you want to change the times for the rules go watch my sprinkler system software video Since I have two blinds I will also add those blinds to each rule.
[08:11] That is it! The software is complete, now all we have to do is install the device in its final place Alright thank you for watching and If you have any questions leave them in the comments
[08:27] Good Bye!
⚡ Saved you 0h 08m reading this? Transcribe any YouTube video for free — no signup needed.