Meglio Tasmota o ESPHome?

4 minuti di lettura

Tasmota vs ESPHome

 

Una domanda, questa, che riecheggia in rete quasi come un tormentone.

Un breve antefatto

I firmware alternativi per componenti per domotica personale basati su chip ESP8266 e ESP32 (e altri) sono, come forse è noto, molto alla moda: sono infatti tantissimi i progetti Open Source nati negli ultimi anni progettati per fornire ai più disparati componenti svariate funzionalità aggiuntive, la possibilità di essere integrati in modalità Local Push, e molto altro.

Quelli basati su chip ESP8266 e ESP32, dal canto loro, sono sempre più diffusi: si tratta di componenti per lo più economici in grado di essere riprogrammati facilmente nel firmware tramite l’esecuzione di pochi passi, per lo più elementari. Esempi illuminanti sono praticamente la totalità degli elementi del catalogo ITEAD Sonoff Smart Home: attuatori, sensori, dispositivi vari in grado, tramite l’adozione di firmware alternativi, di fare molto di più di quanto non siano stati inizialmente concepiti dal produttore.

Tra i tantissimi firmware emersi negli ultimi anni, in particolar modo uno ha ottenuto più successo di altri: è Tasmota, precedentemente noto come “Sonoff-Tasmota” proprio per la sua iniziale natura di firmware concepito esplicitamente per i sopracitati componenti Sonoff. Col tempo si è evoluto, andando a supportante un gran numero di componenti diversi e molte, diverse funzioni che consentono al dispositivo che monti tali firmware di essere amministrato rapidamente tramite l’uso di svariati, diversi comandi.

ITEAD Sonoff Mini
il Sonoff Mini, uno dei tanti ESP8266 riprogrammabili.
L’AVVENTO DI ESPHOME

Di firmware alternativi a Tasmota ce n’è sempre stato una grande quantità ma uno, principalmente, è arrivato negli ultimi tempi a insediarne realmente la popolarità: ESPHome.

Il perché di tanto successo sta nel design alla base di questo firmware. ESPHome, a differenza di Tasmota, è concepito in chiave modulare: l’utente infatti “assembla” il proprio firmware con le sole funzioni che gli servono in base al dispositivo sul quale lo andrà a installare.

Usando una metafora, è come se andando in gelateria volessimo mangiare una coppetta crema e cioccolato: mentre nel caso di ESPHome chiederemmo solo, appunto, “crema e cioccolato”, con Tasmota vedremmo mettere a prescindere nella coppetta tutti i gusti disponibili a banco, lasciandoci poi la scelta di mangiare solo quelli che inizialmente volevamo mangiare, ovvero crema e cioccolato. Inoltre mangeremmo anche meno gelato, dato che lo spazio, dentro una coppetta, è quel che è.

Tasmota, ogni qual volta viene compilato per essere installato sul componente purtroppo include (più o meno) tutte le sue funzioni, ma dato che lo spazio sul chip è limitato, lo sviluppatore del firmware deve fare continui salti mortali per riuscire a includere nuove funzioni pur rimanendo “nei confini” dello spazio disponibile. Lato utente, d’altro canto, installare un firmware così completo per utilizzarne, di fatto, solo una piccola parte (quale ovviamente dipende dal tipo di componente) ha poco senso – ma tant’è.

ESPHome risolve tutto questo con il suo modello, come detto, modulare: prima di compilare il firmware si scelgono infatti le funzioni e i modelli di comportamento previsti per il componente, realizzando così un mini-firmware “su misura” in grado di entrare comodamente nel dispositivo. Ma perché “funzioni e modelli”? Perché non solo ESPHome consente di scegliere le funzioni primitive relative al dispositivo target (eg. la gestione dei relè in un interruttore intelligente, l’accesso alla Wi-Fi e molto altro), ma anche “come esso debba comportarsi“: se per esempio il dispositivo è dotato di più relè e di un pulsante, con ESPHome è possibile (con facilità) scrivere un file di configurazione che consenta a tale pulsante di asservire a funzioni specifiche (eg. una pressione attiva un relè, due un altro, eccetera). In pratica ESPHome permette di modellare anche “la personalità” del dispositivo.

QUINDI, ESPHOME?

Raccontata così, pare che ESPHome sia vincitore a mani basse, relegando Tasmota al viale del tramonto, ma ovviamente non è così.

ESPHome ha, come ogni progetto, i propri limiti. Uno lampante è quello di non prevedere una console per l’immissione di comandi che ne influenzino il comportamento (la “personalità” di cui sopra): mentre Tasmota come abbiamo visto dispone di centinaia di comandi che consente a un dispositivo che lo monti di configurarlo “al volo”, ESPHome prevede, per qualsiasi, anche minima modifica al suo comportamento, una ricompilazione e conseguente riprogrammazione del firmware del componente (a partire dalla seconda riprogrammazione in poi, può essere effettuata via OTA, senza connessione fisica). Questo però da alcuni viene visto come un vantaggio: è sì vero che ogni modifica prevede una riprogrammazione, ma è pure vero che con ESPHome che ho, in un’unico listato, tutta la configurazione del componente a colpo d’occhio. Con Tasmota questo aspetto è un vero incubo: comandi eseguiti una volta possono essere persi di vista, non lasciando all’utente possibilità di valutare la configurazione nel suo insieme, se non eseguendo dei comandi ad hoc che lo aiutino a ricostruire la stessa.

CONCLUSIONI

Secondo il nostro parere, Tasmota è destinato ad accusare l’avanzata di ESPHome il quale verrà sempre di più adottato al suo posto. Di contro, Tasmota rimarrà una valida alternativa quando non ci si vorrà inerpicare nell’uso di ESPHome (sicuramente meno intuitivo, almeno all’inizio): la sua immediatezza e completezza certamente fa di lui un firmware che molti, ancora oggi malgrado la documentata flessibilità di ESPHome, continuano a preferire. Come sempre, una risposta definitiva non esiste, molto dipende sempre ai casi d’uso. Indubbiamente, però, ESPHome ha portato un rivoluzione che aumenterà, sempre di più, la sua adozione.


Contenuti inDomus sul firmware ESPHome
Guide
Progetti
    FOCUS
    Formazione
      Contenuti inDomus sul firmware Tasmota
      Guide
      Progetti
      FOCUS
      Formazione


      NodeMCU ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica ai dispositivi ESP8266 e similari per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.

      Telegram News Channel