Why do this?

There are lots of lightstrip controllers you can buy.  They’re on Amazon, eBay, everywhere.   Why do this project?

First — This is going to be cheaper.  And exactly what you want.  And cheaper.

Second — Local control — ALL! ALL! stock consumer IoT device firmware beacons to 3rd-party servers (many in China), and some beaconing leaks WiFi ssid and password in clear text.

We will replace the stock device firmware with WLED, which is open-source and auditable. WLED is very well documented.  We’re going to be using a custom/modified fork of WLED for our project.  Source and binary files available at Github.

WLED has an open API and can be integrated into many automation solutions (IFTTT, Tasker, Home Assistant, etc).

On with the assembly —-

First – we must flash our Wemos D1 Mini esp8266 chip with the WLED firmware.  We will use nodemcupyflasher to do the flashing.

Both nodemcupyflasher and the wled binary are in the Kernelcon desktop folder

nodemcupyflasher.exe

Connect Wemos D1 Mini to laptop with USBcable.
Launch nodemcupyflasher
Select proper port, browse to the Kernelcon folder on desktop, select “wled00.ino.d1_mini.bin” and Click “Flash NodeMCU”.  See screenshot for details.

When flashing, take note of the MAC address that is shown in the nodemcupyflasher window.  You need to note the last 4 characters of the MAC address.  Once the flashing completes, disconnect the Wemos D1 Mini chip from the laptop.

We will start by cutting and stripping a section of RED and BLACK wire.  These wires will connect the power jack to the Wemos D1 Mini chip.

Cut them to be about the length of the controller case.  Strip one end roughly 3/4″,  strip the other end to be about the same length as the ventilation hole on the side of your case.  See picture for details:

solder ground (black) wire to pin hole labeled G.
solder red (hot) wire to pin hole labeled 5v.
see below for pinout guide/map.  Pay close orientation to the orientation of the board (top/bottom) as some pictures show the backside of the board.

 

Insert rubber grommet in case hole.  Slip the 3 wires from the black JST harness through the hole.

Solder the green (data) wire to the pin labeled D4.  You must insert the grommet and feed wires through the grommet hole before soldering green wire.

 

We will now solder the power and ground wires to the powerconnector.  Connector has (2) tabs.  One is noticably longer than the other.  We will refer to the tabs as LONG and SHORT, respectively.

Long Wire Connector/Tab — This is where the black (ground) wires connect
Short Wire Connector/Tab — This is where the red (5 volt) wires connect

Put the Wemos D1 Mini in the project case.

Feed both red and both black wires through the power connector retainer nut and then out through the hole.  We will tighten the retainer nut after the power connector wiring is finished and the connecter is inserted into the hole.  The wires must go through the nut before soldering.  The retainer nut can’t be added after the wires are soldered to their respective connector tabs.

Route both BLACK wires (1 from the Wemos D1 Mini and1 from the JST connector) through the retainer nut and the hole in the case to the LONG connector/tab. Feed both of the stripped ends through the hole in the end of the LONG tab and fold them over.  Solder them.

Route both RED wires (1 from the Wemos D1 Mini and1 from the JST connector) through the retainer nut and the hole in the case to the SHORT connector/tab. Feed both of the stripped ends through the hole in the end of the SHORT tab and fold them over.  Solder them.

After soldering, insert the power connector into the hole and tighten the retainer nut:

Add some electrical tape around the soldered connections for insulation if you wish.

Test your controller.

NOTE:  This controller is made for 5-volts.  You must use a 5-volt power supply to power it and test it.  Using a 12-volt adapter will destroy the chip.

Connect the JST connector to the light strip and plug the power cord in.  The blue LED on the chip should come on and your LED strip should turn on.  After successful test, disconnect power and the JST connector on the light strip.

Push some of the slack from the JST wire connector into the case.  Tightly wrap a length of black tape around the 3 JST wires inside the case itself and force the taped section out through the hole into the rubber grommet.  This serves as a strain relief to prevent any tugging or pulling on the wires from damaging the solder joints inside.  The grommet and tape will hold firm.

Secure the nut onto the barrel of the power connector by rotating it and tightening it.

Tightly wrap a length of black tape around the 3 wires coming from the controller and force the taped section into the rubber grommet.  This serves as a strain relief to prevent any tugging or pulling on the wires from damaging the solder joints inside.  The grommet/tape will hold firm.

Test your controller again  Connect the JST connector to the light strip and plug the power cord in.  The blue LED on the chip should come on and your LED strip should turn on.

Using your smart phone — install “WLED” app from the play store.

Power up controller and light strip

Recall the 4-digit MAC address recorded when flashing.  Look for a wireless network WLED-XXXX where your MAC address is observed.

Connect to that network using password wled1234

At this point you can configure the controller to permanently join a wireless network and control the lightstrip via network connection.  You can also simply control via this offline direct connection to the controller.  For simplicity and ease of configuration later,  choose this option.

Configure the controller to properly control the number of LED’s on your lightstrip (60) and configure the maximum power to the power of your DC adapter (most likely 2 or 2.5 amps).

Tweak colors, patterns, and animations.