How to control our Smart RGBW Wifi Downlight using Tasmota and Home Assistant!

How to control our Smart RGBW Wifi Downlight using Tasmota and Home Assistant!

https://www.ozsmartthings.com.au/products/smart-wifi-rgbw-downlight

Our guide on Using Tasmota to control our Smart RGBW Downlight in Home Assistant:

Please Note: This is a document provided by a third party and we hold no reponsibility for it to be still current or confirm it to work with third party systems. 

To do the original Tasmota over the air flash I followed the instructions I found on youtube: https://www.youtube.com/watch?v=dt5-iZc4_qU&list=WL&index=18&t=0s

 

And here: http://www.thesmarthomehookup.com/tuya-convert-walk-through-february-2019/

 

I found it useful to watch both, but used the instructions in thesmarthomehookup blog more.

 

Basic workflow was:

  • Get a Raspberry Pi, I used an old Pi-B (as in the second model, not a 3-B or anything nice like that)
  • Install Raspbian <current release> Lite on it
    • I used Etcher as recommended to flash the SD card
    • I use Putty to access the Pi on my network from my Windows machine
    • Remember the Pi has to be connected via ethernet AND have wireless available (built in for a Pi-3, but using a wlan usb adapter for mine)
  • Add the extra software on the R-pi as per: http://www.thesmarthomehookup.com/tuya-convert-walk-through-february-2019/

 

I also turned “wifi steering” off in my router. I was thinking this may have been causing my devices to not be able to log back into the wifi … not sure if it was causing an issue or if I was not being patient enough. Either way, it’s gone now!

 

When you’re all setup then start the flash process:

  • Boot up the Pi and login via Putty
  • Type "cd tuya-convert" and press enter.
  • Type "./start_flash.sh".
  • Use my mobile phone to connect to “vtrust-flash” wireless network when it shows up (no password was required for me)
  • Then put the downlight into programming mode
  • Turn on/off 4 times, leaving on the last time
    • Might have to try 3 times on/off
    • Maybe 5 times on/off
    • Just leave the light off at least 10 seconds between tries
  • After a few seconds it started the rapid blink
  • Then hit enter on the Pi to start the process
  • Select “option 2” when it comes up which is to install Tasmota
  • Say yes … and wait …
  • Wait … I didn’t wait long enough with a Mirabella globe and bricked it by cycling power part way through the upgrade
    • When the Pi says it’s done check the phone for a new wireless SSID (it will be “tasmota-XXXX”) and connect to it
  • On the phone open a browser and go to 192.168.4.1
  • This should get you to the initial Tasmota menu on the downlight
    • Select to scan for networks and enter the details of your network (SSID / Password, then hit “save)
  • Then it will disconnect
  • Go to your router or use something like “Fing” to find the IP address of the downlight on your regular network
      • The device will be listed as “tasmota-XXXX…”
  • Use a browser to go to its IP address
  • Select the menu option to “Update firmware”
  • Make sure you’ve got http://thehackbox.org/tasmota/release/tasmota.bin in the “OTA URL” field
  • Hit enter and wait (note previous warning about cycling power too early)
  • Once it comes back then you can go to the “configuration” menu and choose to “configure other”
  • In the “template” filed use {"NAME":"ZemiDownLight","GPIO":[0,0,0,0,0,0,0,0,0,143,0,144,0],"FLAG":0,"BASE":27}
  • Then set up your MQTT parameters, name, etc
  • Also have to go to “console” and enter “setoption19 1” to get it to auto discover in Home assistant
  • and switch over to Home Assistant to get that side working 

Special thanks goes to Darren Good for providing the above instructions!

 

Update June 2021

I can confirm we are stocking the RGBW downlights with the old Tuya firmware.

Step 1. Open the casing
You can open the casing by inserting a flat head screwdriver at a slight outwards angle around the edge of the diffuser and applying slight inward pressure. Be careful as the plastic housing is easily damaged (although the damage will only be cosmetic).
PXL_20210615_232525192.jpg
Step 2. Solder wires
Solder some small gauge  wires to the pads labelled 3V3, Gnd, Tx, Rx and IO0. Be careful not to damage the circuit board through excessive heat. Ensure that the solder is not causing a short to any other circuitry. The soldering doesn't need to be perfect, it just needs to make contact for long enough to flash the device. Once flashed, the wires can be removed and any subsequent firmware changes can be performed OTA.
PXL_20210615_232543633.jpg
Step 3. Connect wires to a USB-serial adapter
Connect the wires to a USB-serial adapter. Ensure that the USB-serial adapter provides 3.3V or otherwise you must use a separate power supply to provide this voltage. I used this adapter.
The GPIO0 pad should be left floating (unconnected).
Note that the USB-serial adapter from Jaycar is switchable between 3.3V and 5V, but this only affects the Tx and Rx pins. The Vcc pin will always be at 5V and this will damage/destroy the device.
Step 4. Power on the device
Once the device has been connected to the USB-serial adapter, plug the adapter into a computer. Whilst plugging it in, hold the floating wire that is connected to GPIO0 to the Gnd pad for 1-2 seconds. This will put the device into flashing mode.
Step 5. Flash the device
Flash the device with your firmware and tool of choice. For myself, I flashed it with ESPHome using esptool.
Special Thanks goes to Joshua Spence for providing this how to guide.
Update September 2021:
  • OTA didn't work. They appear to be using patched Tuya firmware now, and flashing via the UART will probably be the only available method.
  • It's almost impossible to get the diffuser out for UART access without leaving visible damage if a blade or screwdriver is used. However, a powerful vacuum cleaner with a large diameter hose does a great job of pulling it out cleanly. They seem to pop out pretty easily just giving it a pull with the vacuum, but worst case you'll need to work around the edge of the downlight carefully flexing the flange while pulling on it with the vacuum.
  • The template has changed. It now needs {"NAME":"ZemiDownLight4","GPIO":[0,0,0,0,37,40,0,0,38,41,39,0,0],"FLAG":0,"BASE":18}  (also courtesy of Blackadder).
  • I used Tasmotizer (found on Github) to overwrite the firmware. It works a treat. GPIO0 needs to be held to ground for the whole flashing process, but once done must be released for the 'Upload Config' function to be used (if desired). I used Tasmota lite firmware, and it works well.

Special Thanks goes to Andrew Neale for providing this update. 

Can't find what you are looking for? Send us an email: info@ozsmartthings.com.au
We are also on YouTube where we post many useful videos on our products

Leave a comment

Please note, comments must be approved before they are published