Uso della modalità “BLINK” (lampeggio) col firmware Sonoff-Tasmota

4 minuti di lettura
Scopi DELLA GUIDA
  • Imparare ad utilizzare la modalità “BLINK” (lampeggio) del firmware Sonoff-Tasmota
  • Livello di difficoltà: basso
Concetti affrontati:
  • configurazione software
Componenti software utilizzate:
Dispositivi fisici utilizzati:
  • un attuatore domotico ITEAD Sonoff Smart Home riprogrammato Sonoff-Tasmota (qui una MASTERGUIDE sulla procedura di riprogrammazione)
GUIDA maggiormente indicata per:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi modifica all'impianto elettrico dev'essere effettuata da personale qualificato
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (la presente guida ha puro scopo didattico)
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere la garanzia.
ESP8266
L’ESP8266, processore alla base dei dispositivi Sonoff supportati dal firmware Sonoff-Tasmota

L’adozione del firmware Sonoff-Tasmota sui dispositivi ITEAD Sonoff Smart Home abilita tutta una serie di funzionalità che, di fabbrica, non sarebbero previste.

Innanzitutto, questo approccio libera questi dispositivi domotici dalla “gabbia” indirettamente imposta dal produttore nell’uso esclusivo della propria app “eWeLink” per configurarli e controllarli; inoltre, apre a funzionalità non previste (si pensi, banalmente, all’implementazione del protocollo MQTT) nonché ad ampissime possibilità di configurazione, ben oltre quelle di fabbrica.

Il firmware Sonoff-Tasmota mette a disposizione, infatti, una lunga lista di comandi i quali possono essere utilizzati per personalizzare in modo molto puntuale il comportamento del proprio dispositivo Sonoff (o comunque di board ESP8266 compatibili, eg. NodeMCU), con specificità diverse da modello a modello (eg. non sarà possibile utilizzare i comandi relativi alla gestione di temperatura e umidità su modelli che non offrano queste funzionalità).

ITEAD Sonoff BasicIn questa occasione ci concentreremo su una serie di comandi che abilitano l’uso in modalità “BLINK“, ovvero la modalità lampeggio. Tali comandi si applicano a tutti i dispositivi con a bordo firmware Sonoff-Tasmota e almeno un relè (fisico e/o logico – se ne parla dopo), ad esempio il cucciolo della famiglia, il Sonoff Basic. 

BLINK” è una modalità disponibile ovviamente anche utilizzato in abbinamento a dispositivi dotati di Tasmota e che fungano da contatto pulito.

Gli interruttori Sonoff sono sostanzialmente in grado, tramite intervento manuale o temporizzazione (offerta alla voce “Configurazione” / “Timer” dell’interfaccia web del firmware) di aprire/chiudere l’erogazione in uscita della corrente in ingresso al dispositivo (che può variare dai 90v ai 220v). In caso di uso come contatto pulito, si limitano ad aprire/chiudere tra di loro i due contatti di uscita, senza applicare alcuna tensione.

La funzionalità è quindi quella di semplice interruttore intelligente, al più temporizzato.

Ma se avessimo bisogno di far “lampeggiare” l’uscita, ovvero aprire/chiudere ritmicamente l’erogazione della tensione di uscita, o comunque la chiusura del contatti (in caso di contatto pulito)?

Questa potrebbe essere una modalità interessante per codificare dei segnali visivi (eg. il lampeggio delle luci esterne l’abitazione durante l’allarme di un antifurto, oppure un led per segnalare uno specifico stato presente in domotica, eccetera), oppure per comandare qualche elemento che funzioni con degli impulsi (centraline, controlli elettromeccanici eccetera).

Per realizzare questo scenario ci vengono in aiuto una serie di comandi inclusi nel firmware Sonoff-Tasmota.

BLINKTIME

Il primo comando che analizziamo è “BLINKTIME“, ovvero il comando che imposta il firmware in modo da regolare la durata del lampeggio.

cmnd/Sonoff/blinktime

Il risultato esprime la durata in decimi di secondo (“10” equivale quindi a un secondo).
Per impostare la durata, il comando è:

cmnd/Sonoff/blinktime X

dove “X” è la durata in decimi di secondo (da 2 decimi di secondo a 3600 decimi di secondo – ovvero 6 minuti).

BLINKCOUNT

Il comando “BLINKCOUNT” esprime il numero (intero) di iterazioni di lampeggio.

Per verificare l’impostazione, il comando è:

cmnd/Sonoff/blinkcount

Il risultato esprime il numero di iterazioni all’atto dell’attivazione del lampeggio.

Per impostare il parametro, il comando è:

cmnd/Sonoff/blinkcount X

dove “X” è il numero di iterazioni da impostare.

Attivare il “BLINK”

Prima di illustrare il comando (banale), è necessario spiegare un dettaglio importante.

Quando si parla di relè, si parla di un componente elettronico, fisico, in grado di aprire/chiudere due contatti.

Azionando un Sonoff, diciamo un Basic, di fatto si aziona un relè fisico. In realtà quel che si fa è comandare al suo processore (l’ESP8266) di inviare – in base alla configurazione del firmware – un impulso (a 3 volt) su un determinato PIN (chiamato GPIO, o General Purpose Input/Output) il quale, collegato a sua volta con un PIN specifico del relè, ne “comanda” il funzionamento.

Pertanto, il PIN (GPIO) del Sonoff dal quale parte l’impulso è configurato sul firmware come un “relè”, ma non è il relè stesso. Per questo prima abbiamo fatto riferimento a relè logici e fisici: i Sonoff, in quanto basati sul processore ESP8266, dispongono tutti di un certo numero di GPIO configurabili e utilizzabili da firmware per i più disparati usi, tra i quali appunto “relè”, il quali possiamo considerare logici. Nel momento in cui un dato GPIO è configurato come “relè”, qualsiasi comando Tasmota (legato alla gestione dei relè) a lui indirizzato viene eseguito.

Il fatto che poi ci sia un relè fisico ad esso connesso è un fatto secondario.

Potrebbe infatti esserci collegato dell’altro: mettiamo infatti che si voglia far lampeggiare un led collegato al GPIO13 di un NodeMCU con a bordo firmware Sonoff-Tasmota: dovrò prima configurare il firmware Tasmota come “Generic” e poi configurare il GPIO13 come “Relay1”, per poi infine collegare il led a tale PIN GPIO. A questo punto il comando di accensione (che andremo ora ad analizzare) potrà essere eseguito in modo da accendere/spegnere il led.

Sonoff-Tasmota Generic setting
Una board NodeMCU con Sonoff-Tasmota configurata come “Generic” e con due led connessi a GPIO4 e 5

In caso si usi una board dotata anche di un relè fisico (il Sonoff Basic dell’esempio), la logica è la stessa, solo che invece di accendere un led si va a comandare il suo relè fisico.

Comando POWER

Per attivare il lampeggio (configurato come da comandi precedenti) si usa il comando solitamente utilizzato per l’accensione/spegnimento, ovvero “POWER”. Per far sì che venga attivato il lampeggio, il comando dev’essere utilizzato con un payload MQTT pari a “3”:

cmnd/Sonoff/power 3

A questo punto il dispositivo attiverà il lampeggio sulla base delle impostazioni precedentemente settate.

In caso siano presenti più relè su più GPIO, si farà riferimento allo specifico relè introducendo il valore dello stesso:

cmnd/Sonoff/powerX 3

dove “X” è il numero di relè, per esempio:

cmnd/Sonoff/power1 3


ITEAD Sonoff BasicATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica ai Sonoff (e più generalmente ai dispositivi ESP8266), per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.

🔻 Clicca QUI per commentare l'articolo. 🔻