Over the festive period, it seems like my online feeds were full to the brim with festive/holiday/celebration lighting projects. I must confess, aside from some addressable RGB stuff I had on my pc build, I hadn’t really played with it. I felt like I was missing a trick so I decided to get involved. I knew nothing about RGB, the controllers, or what I would need to set things up so I started to do some homework. I checked out a couple of my usual resources (the Hookup, Dr ZZzs) who seem to be fully into the LED scene and bit by bit started to acquaint myself with what I would need for the project. It was here I learnt of Quindor and his work on the smarthome scene. If you haven’t seen his site it’s here. He’s basically produced a couple of controller boards that can handle either a single output, or 4 outputs. Being of the mantra of go big or go home, I decided to pick up the DigQuad. From looking online, I worked out a list of requirements and began to order:
- Controller of some description – DigQuad or NodeMCU v3 (esp32)
- A suitable PSU (5v 10a) – https://s.click.aliexpress.com/e/_AVIhe9
- LED strips(5v – WS2812B) – https://s.click.aliexpress.com/e/_A4QGn7
- DC barrel connector – https://s.click.aliexpress.com/e/_AozFUp
- JST pigtails (for ease of connection with the LED strips) – https://s.click.aliexpress.com/e/_ActQ0z
- 3 core wire for extensions – https://s.click.aliexpress.com/e/_AMzOj3
Note that some of the above are affiliate links and whilst not costing you anything, help to support the blog. I’ve tried to group some sellers together to save on shipping and logistics. I also ordered a couple of nodemcu’s but have yet to receive them, so for now I have focused on the DigQuad.
Over the next few weeks things started arriving from China. Once everything was in, I began the process of assembly.
One thing that surprised me about the DigQuad was the weight of it. This is substantial, and feels very well made.
Am used to playing with ESP8266, and raspberry pi’s etc, but in terms of weight and construction, this thing was beefy. I found this reassuring. It was also larger than I thought it would be, but this isn’t an issue. I just need to find a plastic project box to locate this in now. I checked out the wiring scheme found on Quinled and literally within a couple of minutes I was up and running. I removed the ESP32 to access the data ports below it. You need to remember to move the jumper from 12v to 5v as per your requirements (5v in my case).
I connected the DC connector to the inputs, and the JST pigtail to the relevant outputs, making sure to put the “data” lead on port 1. I replaced the ESP32 and powered her up. At this point I didn’t connect the JST to the LED strip. I wanted to check the software side of things and to make sure there were no shorts etc. If it was going to go wrong, it didn’t need to take my LED strip with it!
I cautiously plugged in the power, and within a second or so I was looking at lights. We we’re in business.
Next I used my phone to connect to the WLED access point that it was broadcasting (similar to setting up a sonoff etc). I logged into it with the password wled1234 and on my android phone was immediately greeted with a set up notification. I clicked on it and was taken to the WLED page.
I entered my IOT network’s details and then rebooted the device. It grabbed an ip-address from DHCP and within seconds I was browsing over the network as normal (remember to reserve that IP address in your router). At this point I connected the LED strip. It was a 2m strip of 120 leds. Immediately I saw colour but only about half of the strip was lit. I went into the configuration settings and changed the number of LEDs to 120. The minute I clicked save the rest of the strip lit up in all its glory.
Aside from that initial correction, that was pretty much all there was to do. I did update the firmware though. That was easy enough. I went here and downloaded the latest version to the desktop and selected that with WLED, the same way you would update Tasmota. Next I went into the settings to add my MQTT broker, as I intend to connect this to node-red. Once completed, I made a note of the IP address WLED was on, and then went into Home-Assistant. I went to Configuration => Integrations and then searched and installed WLED. All I needed to do was enter the IP address (my HA instance and WLED are on different subnets) and within a few seconds I was looking at the following screen:
There we have it. The LED strip is now controllable in Home-Assitant. I was able to change the brightness, the colour, the effect. There are more advanced controls via MQTT apparently, so that will be a job for node-red, but for now I was happy. One thing I read online though was that it’s best to set up all of your LED strips initially before connecting to Home-Assistant, otherwise you’ll only be able to control the first one. This isn’t a big issue though, I can remove the integration and re-add it once I have everything set up as I want. That was the next task. I wanted to add the rest of the LED strips. On the WLED control page, I navigated to the segments page. Here I added the additional strips with the appropriate LED start and stop numbers. You needed to amend the total number of LEDs on the main set up page. For example, I have the following strips.
1* 1m 60 Leds
2* 3m 180 Leds
1* 2m 120 Leds
I therefore set the number of LEDs as 540. I then set up segments 0-3 as follows:
Segment 0 – start 0, stop 60,
Segment 1 – start 61, stop 240,
Segment 2 – start 241, stop 420,
Segment 3 – start 421 – stop 540.
I connected the rest of the strips up and rebooted the controller. Unfortunately, the other three strips refuse to light. I didn’t think it was a voltage issue, so I removed them 1 by 1 and kept retrying, but nothing. I then saw this video by DrZZs and Quindor (intermit.tech) that explained that the segments were basically a beta feature and you needed to fool the system a little (unless you wanted to compile your own binaries).
They advised to set the number of LEDS as 1200, and then to segment the strips, starting every 300… i.e. segment 0 starts at 0, segment 1 @ 300, segment 2 @ 600, segment 3 @ 900. I tried this out. I needed to configure it as follows:
Segment 0 – start 0, stop 60,
Segment 1 – start 300, stop 480,
Segment 2 – start 600, stop 780,
Segment 3 – start 900 – stop 1020.
They also advised to save this set up to preset location 16, and turn off the automatic brightness limiter. I did as I was told, and rebooted. Nothing. I still only had the first strip showing. I searched around the topic a little further until I found this post. So it looked like a custom firmware was required. I downloaded and installed this and as soon as I rebooted the quad, I was greeted with what could only be described as something that follows a flying unicorn. All four strips were lit and shining brightly. I played with the effects, colour and the brightness. I was somewhat nervous that my PSU wasn’t going to be enough to power them all. Thankfully it was fine. I don’t intend to have them all on bright white at 100% which is the most demanding, but even still, I did try it for a while and they all sat there undeterred. I did buy extra wire and am ready to power inject if needed, and the DigQuad is set up ready to do that, so if things should change in the future, I’ll update the post, but for now, am good!
Next it was time to set it up as a custom entity in Alexa. Again I’m using the third party bridge so if you haven’t seen how I do that, check here. I created an entity called “sexytime” and ‘discovered’ devices in the Alexa app. Within seconds it was found and I connected it in Node-red to a service call node.
I now have voice control of the strips, much to the amusement of myself and to a lesser extent my girlfriend. I know there are already some dedicated nodes out there to interact with WLED, so I’l be installing them and following up with a second post shortly once I have full control, but for now, I’m pleased with my results. I’m in the WLED club, and dare I say it, it went relatively smoothly!
The only thing I would change for next time is that I would order thicker cable. The LED wire I received is 22 awg, and whilst it does the trick, I’d be more comfortable if it was 16 or 18 awg. Wire this thin could have issues with voltage drop etc, so I think i’ll order some thicker wire online. I will probably tin the ends of it with solder to enable the screw down blocks to grip a little tighter to it, as a couple of the leads have been prone to coming loose. I know the DigQuad was significantly more expensive than other controllers out there, but I think it’s also potentially much more capable. You can buy the boards in component form, but given this was my first foray into the LED world, I was happy to buy pre-assembled. YMMV.
Happy to answer any questions, but I’m just knocking on the door of LED greatness, so temper your expectations 🙂
If your interested in sharing your own solutions, tips and tricks with like minded people perhaps you’d consider joining our facebook group. The aim of this group will hopefully be more show and tell rather than support, but that’s not to say we can’t lend a helping hand!