ePrivacy and GPDR Cookie Consent by TermsFeed Generator Home Automation System - Controllo degli aggiornamenti di TASMOTA con OpenHAB v.2 | OpenHAB - SmartHome | DomoticsDuino - Ingegneria informatica, Smart Home / OpenHAB, Flight Sim e altro...
OpenHAB - SmartHome (271 posts)

08/10/2017

Home Automation System - Controllo degli aggiornamenti di TASMOTA con OpenHAB v.2

di Marco Lamanna



Un piccolo post riguardo l'inserimento in OpenHAB v.2 di una notifica automatica in caso di aggiornamento della versione del firmware TASMOTA per i SONOFF

Come abbiamo già scoperto in un post precedente e come si "intuisce" dalla documentazione ufficiale di TASMOTA (https://github.com/arendst/Sonoff-Tasmota/wiki/Upgrade#firmware-binary-sources), l'utente @smadds gestisce un broker MQTT pubblico "sonoff.maddox.co.uk:1883" sul quale viene pubblicato l'ultimo aggiornamento della versione del firmware TASMOTA su topic sonoff-version.

Sulla mia configurazione ho facilmente aggiunto un "item" legato, tramite MQTT, a questo valore che poi ho pubblicato sulla mia sitemap.

Per prima cosa ho dovuto creare una nuova connessione MQTT (chiamata sonoffmaddox-mqtt) al broker di @smadds, andando ad aggiungere al file /etc/openhab2/services/mqtt.cfg le seguenti righe:

sonoffmaddox-mqtt.url=tcp://sonoff.maddox.co.uk:1883
sonoffmaddox-mqtt.clientId=
sonoffmaddox-mqtt.user=
sonoffmaddox-mqtt.pwd=
sonoffmaddox-mqtt.qos=0
sonoffmaddox-mqtt.retain=true

Ho creato quindi un nuovo file nella cartella /etc/openhab2/items che ho chiamato general.items, nel quale ho inserito la seguente riga:

String      SonoffTasmotaVersion      "SONOFF Tasmota Version [%s]"     <settings>
{mqtt="<[sonoffmaddox-mqtt:sonoff-version:state:default]"}


Il mio item si chiama SonoffTasmotaVersion, è di tipo "String" ed è legato alla connessione mqtt sonoffmaddox-mqtt, topic sonoff-version. In questo modo tutte le volte che verrà pubblicato qualcosa sul topic sonoff-version del broker sonoff.maddox.co.uk:1883 il mio item verrà aggiornato.

Ultimo passaggio: aggiungere l'item nella sitemap, in modo tale da visualizzare sempre l'ultima versione disponibile di TASMOTA.

Per fare questo, modifico il solito file /etc/openhab2/sitemaps/test.sitemap, aggiungendo, in testa, la visualizzazione dell'item appena creato, all'interno di un "frame" chiamato "general":

Frame label="General" {
    Text item=SonoffTasmotaVersion
}

Ecco il risultato:



Per rendere tutto più utile, ho inserito una regola che mi notifica ogni volta che la versione di TASMOTA viene aggiornata.

Aggiungo quindi il file /etc/openhab2/rules/checks.rules ed inserisco le seguenti righe all'interno:

rule "tasmota version check"
when
Item SonoffTasmotaVersion changed
then

logInfo("rules", "New Tasmota Version " + SonoffTasmotaVersion.state)

sendNotification([user_to_be_notified], "New Tasmota Version " + SonoffTasmotaVersion.state)

end

La funzione sendNotification invia una notifica all'utente specificato; questa notifica viene visualizzata sui dispositivi mobile che hanno installato l'app di OpenHAB agganciata al cloud di OpenHAB (MyOpenHAB). La configurazione è molto semplice; basta seguire la guida ufficiale qui http://docs.openhab.org/addons/io/openhabcloud/readme.html

Attendo il prossimo aggiornamento per verificare che la regola funzioni.