Yesterday I finished the new Wifi LED controller. One day later as expected, because while cutting the last wire to the correct length, I accidentily also cut 2 other wires that were already soldered.. 🙁 Well, if those things happen and it’s already getting late, it’s better to just stop and clean up the mess the next day – so I did.
Putting it all together
While testing all the components together on a breadboard, I decided to use a different 3.3V voltage regulator, cause the original choice led to a very hot regulator which is something I don’t like, so I chose the following components:
- Conrad MS-35 LED controller, EUR 20,89;
- TTL to Wifi converter, EUR 21;
- Hammond enclosure, EUR 6,83;
- IPEX/SMA antenna adapter, EUR 4,99;
- 2×5, 2mm pitch female connector, EUR 0,90;
- Standard Wifi antenna, from an old Wifi access point;
- 3.3V voltage regulator, EUR 12,64;
- 12V DC power adapter, found in the garage.
I started with drilling a hole of Ø 6.5 mm for the antenna adapter and an opening for the LED wires with a fretsaw. The wires for the 12V that would go to the 3.3V regulator were soldered to the connectors for the LED wires at the bottom of the MS35 PCB, like so:
I took a piece of perfboard, cut it to the right size so that it would fit inside the enclosure and screwed the Wifi module to the perfboard with the help of spacers and 2 tiny screws. The voltage regulator was soldered onto the perfboard as well and now all I needed to do is connect all these components with some wires and a resistor.
To the right you see the pinout for the R-78B3.3-1.5. This is the first time I’m using this type of voltage regulator and I’m very happy with it actually. There is no temperature increase noticable, it’s small enough to replace a TO-220 sized regulator, it can take a voltage from 4.75-18V and can deliver as much as 1500 mA.
I think I’ll be using this regulator more from now on, even though the price is a lot higher; now I don’t have to wonder how long the cheaper LD33V will stand the heat… it’s worth the higher price.
So, to conclude all the wires needed:
- +12V DC to VR (Voltage regulator) Pin 1;
- GND to VR pin 2;
- Wifi GND to VR pin 2;
- Wifi 3.3V to VR pin 3;
- Wifi UART_TXD to MS-35 RX;
- Wifi UART_RXD to MS-35 TX;
- Wifi nReload to VR pin 3.
The nReload pin can be used to reset the Wifi module to factory default settings, which is something I don’t think I’ll ever use. To prevent this from happening, this pin can be kept high with a resistor of 4.7kΩ..10kΩ – at least, that’s how I’ve interpreted the manual.
This concludes all that’s needed to build your own Wifi LED controller. Some standard components, a few wires and you’re done! No wait, the software… For that all you need to do is read a previous post which provides some additional information on the do’s and don’ts regarding communication with the MS-35 and here’s how I do it:
When connecting to the LED controller (i.e. opening a TCP/IP connection to it) you’ll have to send the following byte sequence:
oxfd ox00 ox00 ox00 ox00 ox00 ox00 oxcf ox2c
Think of it as a ‘Hi there’ message, to which the MS-35 should respond with:
0x61 0x5f 0x43 0x5f 0x52 0x47 0x42 0x5f 0x31
Yep, part of it is human readable 😉 From now on, the MS-35 accepts commands to set the R-, G- and B-levels.
Setting the RGB levels
Setting the levels is quite easy, the format is as follows:
0x01 0x00 RR GG BB 0x00 0x00 xx xx
where RR is the byte value for the R channel, GG the byte value for the G channel and BB for the B channel. “xx xx” is the CRC16 of all previous 7 bytes.
Here some images of the end result (click to get the original size):