AI Summary
Matt from MK Smart presents firmware version 2 for his custom WiFi LED strip controller. The update adds openHAB compatibility, phone-based setup, MQTT authentication, a status portal, and a set of visual effects. The video walks through flashing the firmware, configuring the device from a smartphone, and integrating it with openHAB.
Chapters
The LED strip controller is now compatible with openHAB (Home Assistant not covered in this video), and the whole device can be configured from a smartphone without the Arduino IDE.
Users can now enter username and password for secured MQTT servers during setup.
Version 2 adds effects such as rainbow; more effects are demonstrated later.
A web portal shows hostname, IP, MQTT server, topic and status of all configured settings.
The first UI item controls on/off and color via a color picker, same as firmware v1.
Fade cycles through every color; police blinks red and blue. Speed is adjustable with a slider.
Cold cycles shades of blue; warm cycles yellows, oranges, reds for a cozy fire-like vibe.
Double tap a color and the strip fades that color in and out like breathing.
Runs through all rainbow colors; speed can be changed with the slider.
MK Smart shop kits and assembled devices ship with firmware v2, so users only need to solder/plug in and connect to Wi-Fi.
Firmware is available from the MK Smart LED strip guide's links page; an email is requested for update notifications.
Connect GND, 3.3V, RX, TX between the controller and an Arduino, jumper reset-ground plus PGM, then flash with the .bin at 115200 baud, dual IO, erase flash.
If firmware v1 is installed, browse to http://<hostname>.local/firmware and upload the v2 .bin file.
Connect to the device's AP, enter Wi-Fi credentials, set hostname/MQTT ID, MQTT server IP, port 1883, topic, auth, and web updater credentials.
Items file needs a group, color item, string command item, dimmer for speed, and string for effect; commands flow via MQTT topic.
openHAB works in HSB while the LED strip expects RGB, so a rule converts the values before sending to the strip.
The device confirms commands through status topics; speed and effect use /speed and /effect suffixes, with auto update false.
Add a color picker, effect selection drop-down, and speed slider to the sitemap for a complete UI.
After restarting openHAB with sudo systemctl restart openhab2.service, the controls work from the Basic UI.
Unplug, plug back in, quickly switch jumper from run to program for 10 seconds, then unplug and restore run jumper.
Firmware v2 turns the MK LED strip controller into a genuinely accessible smart-home device: phone setup, MQTT security, pre-flashed kits, and a solid effects engine with full openHAB integration.
Mentioned in this Video
Tutorial Checklist
Study Flashcards (10)
What baud rate is used when flashing the LED strip control firmware?
easy
Click to reveal answer
What baud rate is used when flashing the LED strip control firmware?
115200
10:01
Which flash mode is selected in nodemcu-pyflasher?
easy
Click to reveal answer
Which flash mode is selected in nodemcu-pyflasher?
Dual IO
10:14
What are the six effects available in firmware v2?
medium
Click to reveal answer
What are the six effects available in firmware v2?
Fade, police, cold, warm, breathe, rainbow
03:18
Why does the openHAB rules file need to convert HSB to RGB?
medium
Click to reveal answer
Why does the openHAB rules file need to convert HSB to RGB?
Because openHAB works with HSB values while the LED strip expects RGB, and openHAB can't send RGB directly.
18:22
What URL is used to access the LED strip control's web portal on a local network?
medium
Click to reveal answer
What URL is used to access the LED strip control's web portal on a local network?
http://<hostname>.local/firmware (or http://<hostname>.local)
11:08
How do you reset the LED strip control device?
hard
Click to reveal answer
How do you reset the LED strip control device?
Unplug it, plug it back in, quickly move the jumper from run to program, wait 10 seconds, unplug, move jumper back to run, and plug back in.
25:25
What does the 'No Scan' option in the Wi-Fi configuration portal do?
medium
Click to reveal answer
What does the 'No Scan' option in the Wi-Fi configuration portal do?
It lets you manually type SSID and password instead of scanning; useful for hidden Wi-Fi networks.
13:03
What status suffix is appended to the MQTT topic for the effect?
hard
Click to reveal answer
What status suffix is appended to the MQTT topic for the effect?
/effect
20:35
Which jumper must be set on the LED strip control to program it?
easy
Click to reveal answer
Which jumper must be set on the LED strip control to program it?
PGM (or program)
09:33
What is the default MQTT port mentioned in setup?
easy
Click to reveal answer
What is the default MQTT port mentioned in setup?
1883
14:09
๐ก Key Takeaways
Phone-only setup
Removes the need for Arduino IDE and wired connections, making the device accessible to non-programmers.
00:46Effect engine
Effects are the headline feature; they transform a simple color strip into an ambient lighting device.
01:13HSB to RGB bridge
Explains a common openHAB-MQTT integration gotcha with a concrete rule-based solution.
18:22Two-way MQTT status
Shows how to build reliable state synchronization instead of one-way fire-and-forget commands.
20:03Pre-flashed kits
Pre-flashing lowers the barrier to entry and signals confidence in the v2 firmware.
05:38Full Transcript
[00:01] society Matt here from MK smile calm and in this video we're gonna be talking about the firmware for the most colorful smart home device the LED strip smart home device the LED strip [Music]
[00:33] for this LED strip well to start off it is now compatible with Homa system I won't be covering home assist in this video but I will be in the future and if and if you want to get ahead of the game then the item config will be in the
[00:46] description below what's also new is you can set up this device entirely using your mobile phone so you no longer have to mess around with the Arduino ID and connecting it you just have to connect it to Wi-Fi using your phone there is
[00:59] also MQTT authentication support so those of you that have secured MQTT servers with username and passwords you can now enter them when you set up the device but the biggest change in firmware version 2 is effects as you may
[01:13] have noticed behind me the LED strip is changing colors this effect is called a rainbow and lastly there is a status portal so you can now see all of the configuration that you configure the device such as the host name the IP
[01:27] address of the mqtt server is connected to the MQTT topic it's using the status of things I'll cover that later on in the video as you may have noticed this LED strip device is using a custom PCB here it is actually and recently I've
[01:42] been getting my PCBs from PCB way so PCB way is how you prototype the easy way they have full on PCB prototype service they also have PCB assembly and SMD
[01:55] things right now they are holding November and December shopping festival for upcoming Christmas and Thanksgiving Day there's free prototyping for a Christmas PCB design from October 25th to December 10th also from October 30th
[02:09] to November 1st there's a large discount or coupon for Halloween and if you use the cash code on the screen now you can get $5 off your order so head on over to PCB Wacom now so what is the LED strip control exactly well
[02:23] it's a device that I designed that like the name implies control as an LED strip but in this firmware version 2 I forgot to mention there's also now effect let me give you a demo of everything that you can do
[02:36] so I have the open app app open on my phone right now and as you can see if we scroll down to the MK room frame we can see a bunch of devices so we're gonna be two LED strips so we're just gonna focus on the first one right here this is the
[02:51] desk LED strip so with this first item here this is just to basically control the color and this is the same thing as it was in firmware version 2 if you press the down arrow turns off the LED strip press the up arrow it turns it on
[03:05] and then you can choose any color you want from this color picker right here want from this color picker right here then what's new is we now have effects so these are all the effects that I have made if you guys have suggestions for
[03:18] future put them down in the comments below and maybe I'll make a new version of the software using your effects but the first effect is fade and what this does is it fades through the colors every single color option you can have
[03:33] but this is kind of going slow so I'm going to increase the speed using this slider which is the next item as you can see it's now going a little bit faster see it's now going a little bit faster and cycling through the colors so the
[03:47] next effect is police but I'm going to lower down the speed for this on because it flashes really fast so it police all it does is just blink red and blue but
[04:00] we don't want any seizures here so we're gonna move on to cold and increase the speed for that one so what cold is is it just goes through the different shades of blue it's kind of hard to tell on camera because the
[04:15] camera isn't good at picking up different colors of lights but you get the idea all right the next option is warm which is the opposite of cold and so this just goes through some nice yellows oranges reds as you would in a
[04:31] fire so it's just like a nice warm vibe alright and then the next one is breathe so what this does is if you can choose any color in here and it will breathe
[04:43] the color you double tap on the color and it breathes that color so it goes in and out in and out just like you would breathing so I can double tap on
[04:55] would breathing so I can double tap on blue and it breeds the blue color alright and then finally the last one rainbow so this goes through all the
[05:07] rainbow so this goes through all the different colors of the rainbow and you can adjust the speed using the speed slider so I hope you guys enjoyed that
[05:24] demo of the different items for the LED strip as well as the new effects and how you can change the speed my personal favor is warm because right now it's the winter time and it just makes me feel a little bit warmer even though that it
[05:38] has absolutely no effect and it's plain mentally so with firmware version 2 comes the biggest thing on em case marcom slash shop all of the kits and assembled devices come pre fly so if you purchase a DIY kit all you have to do is
[05:52] solder it together and plug it it if you buy assembled you just have to plug it in everything is pre flash this is the final v2 video which it's been a long journey but this is finally the last one so again anything you buy an MK smart
[06:06] flash and you just need to set it up from your phone and connect it to open house and so that means the promo code v2 for 10% off is coming to an end from
[06:18] the time that this video goes live you have 72 hours to use the coupon code v2 so I'm going to make this coupon code and Saturday at 2:00 p.m. Eastern Standard Time so this will be your last chance to get 10% off at MK smart calm
[06:34] slash shop so don't wait the timer is ticking hurry in because I don't know when 10% will come back and now you get everything free flash so it's the perfect opportunity so what are you going to need for this video well you're
[06:47] going to need a computer and a mobile device well if you have no firm on your device you're gonna need an Arduino of some kind and male-to-male jumper cables you can find these over mkm SATCOM slash shop to their for a pretty good price
[07:00] used in this video in the description below also in the description of follow up MK smiles on Twitter Instagram and snapchat because videos I'm going to be doing as well as things only a true smart home enthusiast
[07:15] would enjoy at this point if you bought a pre flash device whether that be a DIY kit or assembled then skip to the timestamp on the screen now otherwise keep watching and I'll show you how to get to from our version 2 the first
[07:28] thing we're going to do is download the firmware from my website I will leave a link to the exact page in the description well we want to go to LED strip and then we want to go to the links page on the LED strip guide then
[07:42] we're going to scroll down to LED strip control V to firmware you want to enter an email address the reason I asked for an email address is so that way if I update the firmware you will be notified then click download file and click here
[07:56] to go to the download page then you want to click on the green download button and it should download the file at this point if your device already has the firmware version one installed on it then skip to the timestamp on the screen
[08:08] now otherwise we're gonna install it from scratch alright to install the firmware if your device has no firmware we're gonna need a program called pi flasher so click on the link it's also in the links page of the LED strip guide
[08:21] go here click on it it will take you to its github page and then you want to click on the one according to your operating system so if you're running 64-bit windows click on this one 32-bit this one and if you're on a Mac click
[08:36] this one the dmg file I already have it so I'm not going to install it so I'm going to go to my launch pad and click on the note MCU PI flasher 3.0 and this is the program so the first part is the serial port so click on the drop down
[08:50] serial port so click on the drop down and memorize what devices are here now we're going to connect the device to an arduino using jumper cables alright so i've connected the LED strip control to the arduino uno and the first thing you
[09:03] want to do is make sure that you jump reset and ground so you want to put a the arduino then you just want to connect the corresponding pins on the have ground I've connected ground from the control
[09:18] I've connected ground from the control to the Arduino then I have 3.3 volts there you go and then I have rx I connected it to rx here and then lastly TX from here to here and you also want to make sure you have a jumper over PGM
[09:33] or program on the LED strip control alright once that's all connected we're just gonna take the USB cable and plug it into the computer alright now that the Arduino is connected click this little refresh button next to the drop
[09:47] down then click on the drop down and you should see a new device at the bottom click on that device the next part is node MCU firmware so this is we're going to choose what we're gonna flash to the device so click the Browse button go to
[10:01] your downloads folder and click on the LED strip dot bin file there you go and click open next is the baud rate make sure that's 1152 0 0 then as flash mode
[10:14] make sure it's dual IO and then lastly erase flash yes we want to wipe all data and click flash note MCU and it will go through and flash the firmware alright it finished flashing the firmware you can simply exit out of the program and
[10:29] unplug the Arduino from your computer and then unplug the jumper cables in between the device and the Arduino at this point your device is flash with firmware version 2 so you can skip to the timestamp on the screen now alright
[10:43] if you have firmware version 1 we are simply going to update the device using the web portal and to do that you want to open a new tab in your browser type to open a new tab in your browser type in HTTP colon slash slash now I type in
[10:56] the host name of the device this is what you wrote in the Arduino file for the you wrote in the Arduino file for the host name so mine is m'kay - LED strip
[11:08] host name so mine is m'kay - LED strip control 1 and then you want to write dot control 1 and then you want to write dot local and then slash firmware it's going to ask you for a username and password this is the username and password we use
[11:23] in the Arduino file it will then load up the page like this then you want to go to choose file then go to your downloads click on the then go to your downloads click on the m'kay LED strip control v2 Ino no 2 MC u
[11:37] m'kay LED strip control v2 Ino no 2 MC u dot bin then click open and click update it's now writing the firmware to the device and updating it alright it's done me and want to show that you're an elite member of the smart home community then
[11:52] check out smart has site EECOM if you want to support my channel then check yourself a premium quality hoody shirt or hat now that the device has firmware Wi-Fi but before we do that we need to make sure that the two pin jumper is
[12:08] make sure that the two pin jumper is over run this puts the device in run mode so it starts booting up and now we can go ahead and connect it to power I have a couple of these DC extensions that I'm going to use because the power
[12:23] adapter is a little bit of what you can pick up these extensions on my website I'm casing our SATCOM shop and then we are going to plug it in boom there you go the red light came on and I'm also going to connect the LED strip there we
[12:36] go so the LED strip is also connected so that way once we set it up we can go ahead and start using it now I'm going to grab my mobile device and go into Wi-Fi as you can see the MK LED strip control pops up I'm going to tap on it
[12:50] control pops up I'm going to tap on it and a web portal pops up let me go over this portal so the first one is configure Wi-Fi and that's what we're from that so configure Wi-Fi no scan is the same
[13:03] thing as configure Wi-Fi except it doesn't scan for Wi-Fi you manually type in your SSID and password so this is good if you have a hidden Wi-Fi network that doesn't broadcast the Wi-Fi signal next is info and this shows you
[13:15] different information about the device then lastly we have the reset button which just does a power cycle of the device so we're gonna go ahead and click configure Wi-Fi so this is the configuration portal so first we're
[13:28] going to select our Wi-Fi network - K Wi-Fi and then type in the password alright password is in the next part is hostname slash MQTT ID so the hostname is what's seen on your Wi-Fi network and then MQTT is what's seen in
[13:44] turn away from the mqtt side so I'm gonna name it m'kay - LED strip control
[13:57] gonna name it m'kay - LED strip control 1 so next is MQTT settings so the first one is the mqtt server IP address mine is 192.168.0 4 so if you're following
[14:09] along with my videos the IP address for the MQTT is the same thing as your open app server next is the port the default port is 1883 if you have a different one than enter it there next is the MQTT topic the MQTT topic is
[14:23] where we're going to be sending commands to from the server I'm gonna give mine to from the server I'm gonna give mine the topic MK - so this is the topic that I gave mine you can give yours a different topic but I recommend you do
[14:35] it's that way it's easier for you to follow along you can always change stuff in the future so I put a number one because this is the first LED strip control if you have more you can just keep on iterating the
[14:47] number at the end all right so next is authentication so I have a false because my MQTT server is not authenticated so it doesn't use a username and password if your server uses a username and password just change this false to true
[15:00] and enter your username and password so next is the web updater so this is also known as the new web portal where you'll be able to see your settings and stuff so go ahead and give it a password username and password obviously I'm
[15:14] reason I do authentication is so somebody can't just come in see your mqtt settings or even update the firmware and the next is slash firmware and so that's the URL you're going to use to access the device so it's gonna
[15:27] use to access the device so it's gonna be HTTP colon slash slash IP address local or hostname not local slash firmware and that's your where you'll be and then at the bottom it says to reset device settings restart the device and
[15:40] quickly move the jumper from run to program wait 10 seconds and put the jumper back to run I'll show you this at the very end of the video how to reset the device but that's where it is and that's how you'll be able to change the
[15:52] right now just click Save so the way this works is if it disappears if this Wi-Fi network disappears then that means it connected successfully to your server
[16:04] it connected successfully to your server into your Wi-Fi there we go it disappeared from the screen and the Wi-Fi network disappeared as well that means is successfully connected so now that the device is connected to Wi-Fi we
[16:18] need to connect it to open hub so open up my website up to the LED strip control guide and click on the software tab I'll leave a link in the description below and then we want to scroll down to the commands so in order to execute
[16:31] these commands we're going to need to SSH into the server if you're on Windows use putty and if you're on Mac we're gonna use terminal all right so I'm SSH into my server the first thing we're gonna do is create the items so I'm
[16:43] going to go ahead and go to the items file gonna enter my password and here we have my items file so I have already put in the items into my items file in the items into my items file beforehand and so here they are right
[16:57] here LED strip control right there so what I did was I took all of these this right here and I pasted it in here but let me go over what each one of these do just saying that we're gonna be declaring LED strip controls oh by the
[17:12] way here I have my commands for my second LED strip so you can have more have as many as you'd like and so if you want to see the difference between having two here they are when you're setting it up you just need to make sure
[17:27] that you put a two everywhere that you see a one so the next item is a group item and so what this does is it just groups all of the devices together then we have the color item so this is what's going to be in the site map and it's how
[17:41] terms of choosing the color and turning it on and off so we're calling it MK LED strip control color saying this is the desk LED short because this is going
[17:53] behind my monitors so it's part of the desk we're gonna have the picture next desk we're gonna have the picture next to it a color picker and then it's part of the group and we also have Lighting's that way we can choose the color from an
[18:09] Amazon echo Siri or Google home the next that we have this string and so control string we're still calling it the desk LED strip and so what this item
[18:22] does is this is what actually sends the color to the LED strip due to openhab it can't directly talk to the LED strip because the LED strip is RGB and openhab
[18:35] is HSB so what we're doing is we're sending in the color from this item using the rules file and the rules file sentence to this string item we'll take a look at the rules file later and then so it's part of the group and this is
[18:50] the mqtt command this is it sending to the LED strip right here so here we have our mqtt topic that we typed into the device when we set it up so let's confirm that this is the same MQTT topic that we typed into the device so to
[19:06] check that we can simply open we can open up the portal so to access the portal of the device you want to type in HTTP colon slash slash the host name of HTTP colon slash slash the host name of the device so mine is m'kay - LED strip
[19:21] control one and then you want to write doubt local and press Enter it'll ask you for a username and password this is the username and password we used when
[19:33] we set up the device all right boom we are into the portal so the first item I'll put it in the middle the first night item is hostname so this is the hostname of the device next is the MQTT server it's connected to the port it's
[19:47] using whether it's using authentication or not the command topic it's using so this is that MQTT topic that were sending commands to it and then we have the status topic so this is where it sends commands to so it's based on a
[20:03] two-way communication when you send the device a command it sends one back to confirming that it received it so this works for the effect and the speed but it doesn't work for the color because openhab doesn't like receiving RGB
[20:18] openhab doesn't like receiving RGB values so we want this MQTT command topic to match this right here and we also want it to match the speed and the effect and then we want the state topic to match the
[20:35] states of all of these so there we go right here and right here but with the speed and effect you also want to do a slash speed and a slash effect so that
[20:49] tells you the status of the speed or the effect all right so that is the sending the color so the next item is the dimmer and we're saying this is MK LED strip control one speed so this controls the speed of the effect that's going on so I
[21:05] gave it the time image so this is the image that shows up in the UI and then it's also part of the same group we're sending a command to this topic and then
[21:17] receiving a command from this topic the speed command and then we have auto update false so that way we can have that two-way communication so it only updates once it receives the command back then we have the effect so this is
[21:32] back then we have the effect so this is a string and so we're saying desc LED strip string I gave it the image of an RGB because I think that looks kind of like effect like also part of the group we're sending commands from openhab to
[21:47] here and receiving from the device from here from the effect topic and it's also auto update false so we have the two-way communication all right that's it for the items file press ctrl X then Y and enter but I didn't make any
[22:02] modifications but you will so you'll have to press ctrl X Y and enter so next we're gonna add the items into the site map type in sudo nano slash et Cie slash open up to slash sitemaps slash home dot sitemap and press Enter so I put mine in
[22:18] my room so they are in the MK - room frame so they are right here again I have two LED strips so I put it in twice but in this one I change the ones to choose so the first item is the color picker item so again what you want to do
[22:33] is you're just going to copy this and paste it into a that you have in your sitemap so again I put mine in MK room so the first item is we can choose the individual color as well as turn it on and off then we have
[22:48] the effect selection so it's a selection item so it's gonna create a drop-down so you can choose which effect you want I made this name so back to here you
[23:00] I made this name so back to here you want these to match the items that you wrote in your items file so see I have the color right here and K LED strip one the color right here and K LED strip one color there is in the sitemap file but
[23:15] color there is in the sitemap file but anyway so again the color picker choose what color turn it on and off then we have selection item this is going to create a drop down and in the drop down we're gonna have these selections and
[23:29] then lastly we have a slider item so we can slide and choose the speed of the effect alright then you're going to press control X then Y and enter and then lastly we're going to modify the rules file type in Souter Nano / e DC /
[23:44] - open up - slash rules slash home dot rules press enter so the first thing we're gonna do is take these variables right here and put them at the top of I haven't below these variables but still just put them somewhere at the top
[23:59] before any of your rules alright next we're gonna put in this rule and I put we're gonna put in this rule and I put mine I put mine right here so here we go we have the one for the first LED strip control and we have one for the second
[24:13] one so I simply just copied this and paste it in here and what this simply does is it just turns the openhab HSB value into an RGB value that the LED strip understands without this component in your rules file this will not work
[24:28] all right now press ctrl X then Y and enter all right everything is now in want to restart openhab so that way everything is nice and freshly updated
[24:40] everything is nice and freshly updated so type in sudo systemctl restart open em to da service and click enter all right now that openhab is restarted let's go ahead and access our basic why so we're going to go to our main
[24:53] why so we're going to go to our main configuration and go to basic UI and as you can see we have all the items here if I click let's change it to warm and if I click let's change it to warm and as you can see the LED strip changed to
[25:08] warm that means it's all working good you can go ahead and play around with they're all working which they should if you follow this video exactly reset the device the first thing you want to do is unplug the device then
[25:25] plug it back in and quickly move the jumper from run to program and wait 10 seconds after 10 seconds is over unplug the device then move the jumper back
[25:37] over run and plug the device back in the device is now reset and you can change or update the settings from Wi-Fi that concludes this complete guide for firmware version 2 for the LED strip in the description you'll find links to all
[25:52] the parts and tools and devices using the video as well as a link to MK smart comm shop where I have a wide range of smart home kits that you can put together alright if you found this video helpful click that like button and if
[26:05] you're a smart man through just like me then you belong in this channel so hit questions leave in the comment section below or head over to MK smart comm slash forum goodbye [Music]