NOTE: Per la nuova versione dei Sonoff (Sonoff RF R2 POWER V1.0) seguire anche questa guida qui.

In questa guida andreamo a sostituire il firmware origianle del vostro Sonoff Basic con quello Tasmota su GitHub, utilizzando Arduino UNO come programmatore seriale.
Questo servirà per esempio per utilizzare il protollo MQTT per integrarlo in Home-assistant.

Ci serviranno:

Arduino UNO
Sonoff Basic
Saldatore
Fili colorati con pin maschio-maschio

per il software:

Python
ESPtool
Arduino IDE (se il pc non rileva arduino sulla USB)
Firmware Tasmota

per programmare il Sonoff dobbiamo saldare 4 fili come in foto che serviranno per il collegamento ad Arduino il PIO14 serve per provare poi lo switch.
di seuito i collegamenti:

 

 

 

Dobbiamo collegare il reset di Arduino a GND, questo per impedire che eventuali software su Arduino vengano eseguiti e vadano ad interferire sulla seriale.

Installiamo il Python 64bit scaricandolo da qui (32bit per vcchi sistemi):

https://www.python.org/downloads/release/python-371/

oppure i link diretti al file:
64bit
https://www.python.org/ftp/python/3.7.1/python-3.7.1-amd64.exe
32bit
https://www.python.org/ftp/python/3.7.1/python-3.7.1.exe

ricordiamoci di selezionare aggiungi Python to Path durante l’installazione.

Installiamo anche il supporto Python per la seriale:
aprite un prompt dei comandi (cmd) e lanciate questo comando

Scarichiamo ESPTool da github con la funzione Clona o Download Zip (Download Zip):
https://github.com/espressif/esptool/releases

Estraiamo il contenuto del pacchetto zip esptool preso da GitHub in C:\

Scarichiamo il firmware del Sonoff, ho preso quello completo (sonoff.bin) perchè alla release attuale quello sonoff-basic.bin mi rimaneva in acquisizione indirizzo ip il client al momento della prima connessione.

https://github.com/arendst/Sonoff-Tasmota/releases/download/v6.3.0/sonoff.bin

copiamo il file sonoff.bin nella cartella di ESPTool.

Andiamo finalmente a caricare il firmware sul nostro Sonoff

per prima cosa colleghiamo arduino al pc e verifichiamo quale porta COM è stata assegnata (nel mio caso la COM2).
potete vederlo da Arduino IDE oppure da gestione periferiche.

Scollegare il pin dei +3,3V
Teniamo pigiato il tasto sul Sonoff tenendolo premuto e colleghiamo il pin dei +3,3V, dopo 2 secondi lasciate il tasto sul Sonoff ora si trova in modalità Flash pronto a ricevere il nuovo firmware.

NOTE: Non collegate mai il +3,3V ai +5V, causa danneggiamento del chip ESP8266.
E non collegate mai la tensione 220V quando è connesso ad Arduino UNO e PC, non ha un isolamento e potreste danneggiare tutto, anche il PC.

Da cmd, andiamo nella cartella dove si trova esptool e lanciamo:

fatto questo stacchiamo tutti i cavetti saldati e colleghiamo il sonoff alla tensione 220v.
Il Sonoff basic non avendo nessuna wifi configurata, partirà come accesspoint, collegatevi sopra e aprite da browser l’indirizzo
http://192.168.4.1
Configuriamo la rete wifi inserendo il nome della vosrta wifi e la password, il vostro sonoff restarterà e si collegherà alla rete wifi principale.

Il Sonoff adesso partirà in DHCP quindi avrà un ip assegnato dal vostro router, per trovarlo, andate nel vostro router e cercatelo tra gli indirizzi assegnati.

Se volete impostare un indirizzo IP statico, una volta riaperta l’interfaccia web del sonoff, andate nella console web e inserite il seguente comando e date invio:

Riavviate il sonoff cliccando su restart.
Il Sonoff ora risponderà all’indirizzo statico appena inserito nella console.

Se volete usare questo Sonoff come interruttore smart dentro una scatola con interruttore classico, andiamo a saldare due fili, uno su GND e uno su GPIO14 dove andrà poi collegato all’interruttore classico a parete.

Nel menu “Module parameters” configuriamo il GPIO14 come “Switch1” e salviamo.

Ora potete usare il vostro sonoff secondo le vostre necessità.

NOTA: se volete utilizzare il vostro Sonoff con dei deviatori, seguite anche questa guida molto importante per eliminare eventuali disturbi sul GPIO14 per evitare il fastidioso problema del lampeggio della luce.