Tasmota: il firmware libero per prese e interruttori smart economici

Pubblicato il 13/07/2026 IoT

Molte prese smart e interruttori a incasso economici (Sonoff, Athom, Gosund, BlitzWolf, Teckin, moduli generici basati su Tuya) montano un microcontrollore ESP8266 o ESP32 ma girano con firmware proprietario che dipende da un'app e da server cloud in Cina. Tasmota è un firmware open-source che sostituisce quello di fabbrica e restituisce il controllo completo del dispositivo: interfaccia web locale, comandi MQTT, nessun account, nessun cloud obbligatorio.

Perché passare a Tasmota

  • Funziona anche senza internet: tutto il controllo resta in LAN.
  • Si integra nativamente con Home Assistant via MQTT o tramite l'integrazione ufficiale Tasmota (scoperta automatica su HTTP).
  • Espone consumo energetico istantaneo su modelli con misuratore di potenza (es. Sonoff Pow, molte prese con wattmetro).
  • Supporta regole locali (Rules) per automazioni che funzionano anche se il broker MQTT è irraggiungibile.
  • Aggiornamenti OTA e community molto attiva, con template pronti per centinaia di dispositivi.

Cosa serve per il flashing

Il metodo più affidabile oggi è il flashing via seriale, aprendo il dispositivo e collegandosi ai pin del chip. Serve:

  • Un adattatore USB-TTL a 3,3V (es. basato su CP2102 o FTDI).
  • Cavetti dupont o pogo pin per collegarsi ai pad GPIO0, GND, 3V3, TX, RX senza saldare (su molti modelli i pad sono già presenti sulla scheda).
  • Un cacciavite per aprire il case e, se necessario, un saldatore.
  • Un PC con Chrome o Edge (per il web installer basato su WebSerial) oppure Python con esptool.

Attenzione: molti di questi dispositivi lavorano direttamente sulla tensione di rete 230V. Il flashing va fatto sempre con il dispositivo scollegato dalla presa e mai alimentato dalla rete elettrica durante il collegamento seriale: si alimenta solo a 3,3V dall'adattatore USB.

Procedura di flashing

Il modo più semplice è usare il Tasmota Web Installer (tasmota.github.io/install), che flasha il firmware direttamente dal browser via USB, senza installare nulla. In alternativa, da riga di comando con esptool:

pip install esptool
esptool.py --port /dev/ttyUSB0 erase_flash
esptool.py --port /dev/ttyUSB0 write_flash -fm dout 0x0 tasmota.bin

Per entrare in modalità flashing sull'ESP8266 occorre tenere il pin GPIO0 collegato a GND durante l'accensione (o durante il reset), poi rilasciarlo dopo l'avvio della procedura.

Primo avvio e configurazione Wi-Fi

Al primo boot, Tasmota crea un access point Wi-Fi chiamato qualcosa come tasmota-XXXX. Ci si collega da smartphone o PC, si apre il browser su 192.168.4.1 e si inseriscono SSID e password della propria rete di casa. Il dispositivo si riavvia e si presenta sulla LAN con un nuovo indirizzo IP, raggiungibile anche via mDNS (es. http://tasmota-XXXX.local).

Impostare il modulo e i GPIO corretti

Ogni dispositivo ha un layout hardware diverso (relè su un pin diverso, LED di stato, pulsante fisico, eventuale wattmetro). Dalla pagina Configuration > Configure Module si sceglie il modulo corrispondente al proprio hardware tra quelli predefiniti, oppure si crea un Template personalizzato specificando manualmente a quale GPIO è collegato relè, pulsante e LED. La community mantiene un database di template pronti per la maggior parte dei dispositivi in commercio, utile per non doverli configurare a tentativi.

Configurare MQTT

Da Configuration > Configure MQTT si imposta l'indirizzo del broker (es. Mosquitto già in uso in casa), porta, utente e password, oltre a topic e nome del dispositivo:

Host: 192.168.1.10
Port: 1883
Client: tasmota_presa_soggiorno
Topic: presa_soggiorno
Full Topic: %prefix%/%topic%/

Da quel momento il dispositivo pubblica il proprio stato su topic come stat/presa_soggiorno/POWER e risponde ai comandi su cmnd/presa_soggiorno/POWER con payload ON/OFF/TOGGLE. Se il dispositivo ha un wattmetro, pubblica periodicamente anche i dati energetici su tele/presa_soggiorno/SENSOR.

Integrazione con Home Assistant

Ci sono due strade. La più semplice è abilitare la Home Assistant Discovery integrata in Tasmota con il comando dalla console del dispositivo:

SetOption19 1

In questo modo Tasmota pubblica automaticamente la configurazione MQTT discovery e il dispositivo compare da solo in Home Assistant, senza scrivere entità a mano. In alternativa si può usare l'integrazione ufficiale Tasmota di Home Assistant, che comunica via HTTP e MQTT combinati e offre un livello di integrazione ancora più ricco (firmware update, sensori aggiuntivi, riavvio da remoto).

Un consiglio pratico

Prima di sostituire il firmware su tutti i dispositivi di casa, conviene testare la procedura su un singolo modello economico, verificarne stabilità e consumi nel tempo, e solo dopo estendere il flashing agli altri interruttori. Alcuni modelli recenti hanno chip più difficili da flashare via seriale o partizioni flash diverse: prima di aprire il case è sempre utile cercare il modello esatto nel database della community Tasmota per capire pinout e procedura corretta.