DisclaimerPlease, proceed carefully following the tips published in this blog, specially when Main Power is involved. I'm not responsible for any damages caused by what is written in this blog.
Home Automation System - The first SONOFF - Uploading firmware
by Marco Lamanna
Ladies and Gentlemen, I'm glad to introduce you my first sonoff: the SONOFF POW
After a rapid test with EWeLink App I'm sure the device is working well; I'm ready to upload the TASMOTA firmware, to enhance the sonoff functionalities, in particular the MQTT protocol.
I borrow from Piero the USB-Serial adapter, because mine is still "in transit"...
Here is it: one thing to check is the jumper near the 4 serial pin...it has to be in the 3.3V position...
I open the website https://github.com/arendst/Sonoff-Tasmota/wiki, download the software and follow the step-by-step procedure.
I like Arduino IDE and so I decided to use it, instead of PlatformIO, so I follow the section "Arduino IDE Preparation" on wiki (https://github.com/arendst/Sonoff-Tasmota/wiki/Prerequisite#arduino-ide-preparation).
Now, it's time to solder the serial pins on the sonoff, so the board will be removed from the plastic case. In the Sonoff POW the serial interface is at the end of fhe board, near the phisical button.
See Hardware Preparation
You have to pay attention at the serial connections between adapter and board...
VCC -> VCC
TX -> RX
RX -> TX
GND -> GND
Thanks to Piero again, I can use a connector with colored cables which is already configured for the sonoff mapping
Using a MicroUSB - USB cable, I plug the adapter in the PC and install the FTDI driver. The sonoff must be restarted in "programming mode", keeping its button pushed for 2 or 3 seconds.
During this phase (and everytime the serial connection is plugged), the sonoff MUST BE disconnected from Main Voltage
If everything is OK, the device is ready for the firmware upload process.
Using the Arduino IDE, in just a couple of minutes the firmware will be uploaded on device (see Upload).
Now we are ready to play the game :)