Manuale collegamento e comandi WiFi/MQTT e WiFi/HTTP per Orologio SuperClock MegaClock
|
Orologio/SuperClock/MegaClock può essere comandato tramite WiFi in standard HTTP e anche in standard
MQTT, così che lo può controllare/comandare la maggior parte degli hub
Home Assistant.
Questo significa che SuperClock è anche un modo semplice ingegnoso e molto trendy per mostrare messaggi e cifre in grande dentro una qualsiasi automazione o domotica.
Collegamento WiFi e HTTP <<<
Dal tuo dispositivo puoi collegarti al WiFi interno generato da SuperClock, oppure si può collegare SuperClock al Wifi di casa nelle Impostazioni, come illustrato nel
manuale veloce di SuperClock.
Comandi WiFi / HTTP (/c)
Tramite una richiesta HTTP GET fatta a:
http://wfeasy.com/c (occorre essere connessi al wifi interno di
Orologio/SuperClock/MegaClock; o al posto di wfeasy.com si può usare l'IP, se hai collegato Orologio/SuperClock al tuo WiFi; l'IP che è qualcosa tipo 192.168.1.4 - questo si può anche fissare dentro alle opzioni di configurazione del router, così che non cambi; tipicamente lo si fa in un menù tipo DHCP utilites o Avanzate DHCP).
Si può mandare a SuperClock uno o più comandi contemporaneamente, nel formato classico delle richieste GET (e quindi usando & per inserire parametri multipli e separarli, e usando il classico URL encode per gestire i caratteri non alfanumerici). I comandi disponibili sono nel seguito.
Esempio: http://wfeasy.com/c?Brightness=100 setta la luminosità max a 100; http://wfeasy.com/c?s=ciao mostra sul display la stringa "ciao"; http://wfeasy.com/c?Brightness=100&s=ciao setta la luminosità a 100 e mostra sul display la stringa "ciao".
Usando l'IP, sarà (per esempio) http://192.168.1.4/c?s=ciao e così via.
Tutto questo lo si può fare per esempio collegandosi al WiFi interno con un PC e scrivendo queste cose sulla barra del browser (es. Safari, Chrome, Firefox, Explorer); ovviamente lo si può fare anche con Mac, Raspberry o altri dispositivi...
Parametro pw=
Se l'uso di una password è abilitato (si abilita e definisce tramite il WiFi interno), la si deve obbligatoriamente aggiungere a qualsiasi richiesta, mettendola in pw
Esempi:
http://wfeasy.com/c?s=ciao&pw=a8d7f6k5
mostra sul display la stringa "ciao", ma solo se la password è a8d7f6k5 - se invece la pass non è giusta, non fa nulla.
Comando s=
Visualizza sul display la stringa, facendo scrolling se la lunghezza della stringa è maggiore dei caratteri disponibili, e continuando al'infinito.
Esempi:
s=8765
Visualizza 8765
s=Ciao belli!
Visualizza Ciao belli! facendo scrolling continuativo
s=@Ciao belli!
Visualizza Ciao belli! facendo scrolling una sola volta
Comando One=
Visualizza sul display la stringa, facendo scrolling se la lunghezza della stringa è maggiore dei caratteri disponibili, una sola volta, poi ritorna a mostrare quello che stava mostrando precedentemente.
Esempi:
One=Ciao belli!
Visualizza Ciao belli! facendo scrolling e poi ritorna a fare quello che stava facendo prima
(*legacy x=)
Comando t=
Visualizza sul display un timer in secondi.centesimi, partendo dal centesimo fornito in input.
Esempi:
t=0
Fa partire e visualizza un timer partendo da 00.00
t=12
Fa partire e visualizza un timer partendo da 00.12
t=s
Stoppa il timer al tempo raggiunto
t=S0123
Stoppa il timer visualizzando 01.23
Comando SetTime=
Mette il display in modalità orologio, settando l'ora.
Esempi:
SetTime=1230
Fa partire l'orologio alle 12.30 e d'ora in avanti visualizza l'orologio.
SetTime=n
D'ora in avanti visualizza l'orologio, mostrando ora corrente di sistema.
(*legacy k=)
Comando Brightness=
Setta la luminosità (o la luminosità max), generalmente da 0 a 100
Esempi:
Brightness=90
Setta la luminosità (o luminosità max) a 90.
Brightness=a
Attiva il controllo automatico della luminosità.
Brightness=d
Disattiva il controllo automatico della luminosità.
(*legacy l=)
Comando p=
Setta la velocità dello scrolling in centesimi di secondo (default 25; minimo 5; passo 5)
Esempi:
p=40
Setta lo scrolling a 40 centesimi di secondo.
Comando cm=
Con cm si possono usare gli stessi comandi di MQTT.
Esempio:
cm=STATE
Restituisce lo stato del sistema, es:
{"Temperature":19.73,"Lumi":25,"Name":Arancio,"Device":SuperClock,"Date":20210228,"Time":1046}
Esempio:
cm={"One":"bella%20scritta!"}
Visualizza una volta la scritta "bella scritta!".
Comandi WiFi / HTTP (/x)
Tramite una richiesta HTTP GET fatta a:
http://wfeasy.com/x (occorre essere connessi al wifi interno di
Orologio/SuperClock; o chiamarne l'IP, come sopra) si possono inviare Temperatura esterna, Umidità esterna, Pressione esterna (che verranno visualizzate se la visione è abilitata tramite il menù "In aggiunta all'ora mostra..." che definisce quello che viene fatto ruotare sullo schermo e i rispettivi tempi).
Collegamento WiFi e MQTT <<<
Anche per MQTT è necessario un collegamento WiFI, ma in questo caso non basta collegarsi al WiFi interno generato da SuperClock, ma ci si deve collegare a un WiFi che abbia accesso a un Broker MQTT; per esempio si può collegare SuperClock al Wifi di casa; oppure si può collegare SuperClock a un
ControlHUB con attivato il broker interno.
- l'IP o il nome del server dove gira il Broker MQTT (nota: se lasciato vuoto, SuperClock non userà MQTT)
- eventualmente username e password del Broker, se li necessita
SuperClock mostra nella voce MQTT il nome dei topic di default usati per la pubblicazione/out e per ricevere comandi/cmd; è possibile se ti serve specificare un prefisso (alcuni Broker gratuiti richiedono che i topic incomincino per esempio con tuousername/feeds/ o cose del genere), altrimenti lascia le caselle "prefix" vuote.
Quindi si clicca Salva e SuperClock ci si collegherà, e dopo qualche secondo comincerà a poter funzionare anche in MQTT. Se il collegamento è OK scriverà OK dopo la parola MQTT; e già da subito nella stessa pagina sono mostrati i nomi dei Topic da usare per comandare SuperClock e per ricevere i messaggi di SuperClock.
Suggeriamo
per sicurezza di utilizzare un Broker installato su un tuo PC o altro (si può scaricare e installare e far girare un programma Broker come Mosquitto anche su un semplice PC Windows), oppure
ControlHUB con attivato il broker interno.
Topic di Risposta/Pubblicazione
Quando risponde ai comandi, oppure quando vuol dire qualcosa, SuperClock pubblica un messaggio sul topic ck-o-nome (dove Nome è il nome che avete dato al dispositivo un po' più in basso sempre nelle Impostazioni).
Occorre mettersi in ascolto su questo Topic per poter leggere cosa dice SuperClock.
La risposta/payload è un testo, per es. data, ora e temperatura dopo che è stato dato il comando STATE; gli altri comandi danno spesso come risposta il reinvio del comando, per far capire che è stato ricevuto.
All'accensione, non appena collegato a MQTT, SuperClock pubblica come se rispondesse a STATE.
Topic di Comando/Ascolto
SuperClock rimane sempre in ascolto sul topic ck-c-nome (dove Nome è il nome che dato al dispositivo SuperClock un po' più in basso sempre nelle Impostazioni). Per comandarlo l'hub, l'Assistant oppure chiunque tramite librerie di invio messaggi MQTT, deve pubblicare su tale Topic di comando un messaggio/payload tra questi:
{"Show":"bella scritta!"}
|
Visualizza sul display la stringa bella scritta!, fissa oppure facendo automaticamente uno scrolling continuativo se la lunghezza della stringa è maggiore dei caratteri disponibili sul display.
|
{"One":"bella scritta!"}
|
Visualizza sul display la stringa bella scritta!, facendo scrolling per una volta sola; poi ritorna a cosa mostrava in precedenza
|
{"SetTime":"1230"}
|
passa in modalità orologio e parte dalle 12.30 (NOTA da scrivere senza punto)
|
{"Temperature":"25.3"}
|
setta la temperatura esterna a 25.3 °C (una delle cose visualizzabili opzionalmente; da fornire in °C; la visualizzazione sarà poi in C o F a seconda delle impostazioni, ma va fornita in °C)
|
{"Pression":"1000"}
|
setta la pressione esterna a 1000 (una delle cose visualizzabili opzionalmente)
|
{"Wind":"10.02"}
|
setta la velocità del vento a 10.02 (una delle cose visualizzabili opzionalmente)
|
{"Humidity":"25"}
|
setta la umidità esterna a 25% (una delle cose visualizzabili opzionalmente)
|
TIME
|
passa in modalità orologio e mostra sullo schermo l'ora corrente (ricordiamo che nelle impostazioni si può settare di modo che si sincronizzi con un pool di orologi atomici via Internet)
|
{"Brightness":100}
|
setta la luminosità max a 100 (valori disponibili in genere da 1 a 100)
|
{"Speed":20}
|
setta la velocità dello scrolling in centesimi di secondo
|
STATE
|
restituisce data e ora
|
Come noto, per MQTT è necessario un sistema locale o remoto (accessibile via Internet) che faccia il Broker.
Se stai facendo un'automazione con SuperClock e Wifi, puoi semplificare, ed evitare questa necessità utilizzando anziché MQTT dei semplici comandi HTTP / Web, spiegati a inizio pagina.