Uso del comando “GROUPTOPIC” col firmware Tasmota

3 minuti di lettura
●  Resta aggiornato con il nostro canale e con la nostra newsletter settimanale!  ●
SCOPI DELLA GUIDA
  • Imparare ad utilizzare il comando “GROUPTOPIC” del firmware Tasmota
  • Livello di difficoltà: basso
CONCETTI AFFRONTATI:
  • configurazione software
COMPONENTI SOFTWARE UTILIZZATE:
DISPOSITIVI FISICI UTILIZZATI:
  • qualunque componente domotico riprogrammato con firmware Tasmota (qui una MASTERGUIDE sulla procedura di riprogrammazione)
GUIDA maggiormente indicata per:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere garanzia, omologazioni e certificazioni di qualità.
Revisione guida: 1.3

Tasmota logoCome noto, l’adozione del firmware Tasmota sui dispositivi basati su SOC ESP8266 (come quelli, per esempio, della famiglia 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 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, 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à).

In questa occasione ci concentreremo sul comando “GROUPTOPIC“,

Ogni dispositivo dotato di firmware Tasmota (e relative fork) e che abbia configurato il protocollo MQTT possiede di un proprio “nome” il quale si proietta conseguentemente sui topic MQTT da esso accettati come comandi o da esso inviati come risposte (telemetrie).

Un topic di comando solitamente è definito da un prefisso “cmnd“, da un suffisso che rappresenta il nome del dispositivo, dal comando stesso e infine da un’eventuale payload (o carico utile, parametri utili all’esecuzione del comando). I topic di risposta (temeletrici), invece, solitamente presentano il prefisso “stat“.

Un esempio di topic di comando è il seguente:

Tasmota MQTT Topic

Va da sé che, a parità di tipologia di topic e di comando, variando il nome del dispositivo “target” il destinatario del comando stesso varierà di conseguenza.

Ciò che molti non sanno è che, nel firmware Tasmota, esiste una variabile “GROUPTOPIC” (con valore di default “tasmotas“) la quale consente la definizione di gruppi di dispositivi MQTT.

N.b. Fino alla versione 6 di Tasmota il “GROUPTOPIC” era impostato a “sonoffs” anziché a “tasmotas” com’è ora. Aggiornamenti vari, successivi, dei propri dispositivi potrebbero aver sovrascritto la configurazione di alcuni e di altri no (per varie ragioni): per riallineare tutti i dispostivi è sufficiente pubblicare sul broker MQTT il seguente topic di comando:

cmnd/sonoffs/GROUPTOPIC tasmotas

il che porterà tutti i dispositivi al “GROUPTOPIC” ora comunemente usato, ovvero “tasmotas“.

Poniamo l’esempio di cinque attuatori Sonoff Basic dotati di firmware Tasmota, configurati con MQTT, che presentino i seguenti nomi e relativi comandi di accensione:

Nome MQTTComando di accensione 
Cucinacmnd/Cucina/POWER 1
Cameracmnd/Camera/POWER 1
Bagnocmnd/Bagno/POWER 1
Giardinocmnd/Giardino/POWER 1
Terrazzocmnd/Terrazzo/POWER 1

L’unico modo di eseguire i cinque comandi è pubblicare tramite un client MQTT i cinque topic di comando presso il Broker MQTT.

Se non precedentemente personalizzati in termini di GROUPTOPIC, i cinque attuatori condividono però un secondo nome, comune a tutti: “tasmotas” (la “s” finale ricorda per l’appunto il plurale anglosassone).

Questo significa che inviando semplicemente un comando, il seguente:

cmnd/tasmotas/POWER 1

tutti e cinque gli attuatori si accenderanno all’unisono.
In pratica tutti i firmware Tasmota dispongono di questo secondo nome allo scopo di “raggruppare” logicamente i dispositivi con lo stesso “GROUPTOPIC“, il quale è appunto una variabile ma anche un comando che permette di:

  • consultarne la valorizzazione;
  • variarne la valorizzazione.

Eseguendo infatti un comando come:

cmnd/Cucina/GROUPTOPIC

si ottiene in risposta la valorizzazione impostata (di default, come detto, “tasmotas“).
Un comando come

cmnd/Cucina/GROUPTOPIC  NuovoGroupTopic

imposta invece il “GROUPTOPIC” a alla nuova stringa (in questo caso “NuovoGroupTopic“.

Questa funzionalità è particolarmente gradita al fine di definire più gruppi i quali possano poi magari essere integrati presso gli HUB personali come fossero singoli interruttori (i quali però abbiano effetto su più componenti):

Nome MQTTGruppo 
CucinaInterno
CameraInterno
BagnoInterno
GiardinoEsterno
TerrazzoEsterno

A questo punto inviando il comando:

cmnd/Interno/POWER 1

si accenderanno i dispositivi “Cucina”, “Camera”, “Bagno”; mentre con:

cmnd/Esterno/POWER 1

si accenderanno “Giardino” e “Terrazzo”.


Ovviamente l’uso di un nome MQTT di gruppo si applica a qualsiasi comando accettato dal dispositivo, il che rende particolarmente utile tale funzione. Si pensi per esempio di avere più di 10 dispositivi collegati alla Wi-Fi e volere cambiare a tuttiil “TelePeriod” per impostarlo a 300 secondi.

Sarà sufficiente (dando per scontato che tutti condividano “tasmotas” come valorizzazione di “GROUPTOPIC“) utilizzare un comando come:

cmnd/tasmotas/TelePeriod 300

per far sì che tutti, contemporaneamente, attuino tale comando.

N.b. Quest’ultimo concetto dovrebbe far riflettere: “GROUPTOPIC” è sì una funzione comoda e potente, ma proprio per questo bisogna portare particolare attenzione a quando lo si utilizza, dato l’effetto “massivo” di ciò che esegue.


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.