Manuale collegamento e formato dati WiFi/HTTP GSM/HTTP e WiFi/MQTT per TXtemp e TXdata
 
E' possibile integrare TXtemp TXdata e TXsoil in qualsiasi automazione nuova o esistente, tramite WiFi, sia usando HTTP che MQTT.  
MQTT è supportato dalla maggior parte degli hub Home Assistant e ci sono trucchetti per usarlo con quelli che non lo supportano direttamente. Configurando correttamente il tuo Assistant, puoi usarlo per leggere temperatura e/o umidità da TXtemp e TXsoil e/o qualsiasi altra grandezza o misura mandi TXdata... 
 
 
Comunicazione HTTP <<< 
Per poter inviare i dati in formato HTTP, TXdata, TXtemp o TXsoil devono essere configurati nelle Impostazioni (vedi il loro manuale veloce nelle rispettive pagine: TXtemp TXdata TXsoil) in modo da collegarsi al tuo WiFi - WiFi che può essere un WiFi "vero" collegato a Internet oppure può anche essere un WiFi virtuale con server Web virtuale creato da una qualche apparecchiatura (smartphone, PC, Mac, microcontrollore, Hub home assistant, ecc.). 
Sempre nelle Impostazioni, la configurazione normalmente preselezionata è quella per l'invio HTTP agli altri prodotti VisualVision (SuperClock, DisplayRX, ControlHUB DX/DY e RXTXeasy GSM); se vuoi usare un tuo script sul tuo server Web va scelta l'opzione successiva che permette di inserire la URL di uno script personalizzato (deve essere http:// e per la porta standard, 80). 
Può essere come http://www.aserver.com/nicescript.php o  www.aserver.com/nicescript.php. Oppure nicescript.pl o nicescript.py ecc. - qualsiasi linguaggio di programmazione del server che supporti una richiesta HTTP POST nel normale standard CGI andrà bene. 
Il nome e il path dello script sul tuo server è a tua scelta. 
 
Parametri inviati via WiFi/HTTP POST CGI 
TXtemp e gli altri inviano, ad ogni trasmissione, delle richieste HTTP in standard CGI (che sono poi le stesse che si inviano quando si scrive qualcosa sulla barra del browser es. Firefox, Chrome, Explorer) alla URL indicata, GET o POST, con questi parametri: 
id (unique identifier; preset when TXtemp or TXdata is assembled) 
pw (password set in the Settings page) 
b (battery charge in % - if less than 25 batteries must be replaced) 
w (wifi Channell if set) 
n (name) 
dm (current frequency / transmission interval: >0 minutes <0 days) 
t (TXtemp only-> current temperature * 100) 
h (TXtemp only -> current humidity if available) 
r (TXdata -> current readings, in plain text as HEX to Ascii;  TXtemp -> t & h as HexAscii; RXTXeasy -> no) 
a0 (RXTXeasy only -> readings retransmitted from 433 Channell #0 format here...
a1 (RXTXeasy " -> readings retransmitted from 433 Channell #1) 
... 
a100 (RXTXeasy " -> readings retransmitted from WiFi Channell #0) 
a101 (RXTXeasy " -> readings retransmitted from WiFi Channell #1) 
... 
 
The server MUST reply with a short text reply (any reply will be actually read as text; lines terminated by LF), that includes: 
- Pass KO if the password is wrong 
- RXOK if all right 
The server additionally can send these lines followed by LF (\n) 
sms=+393475556667 
newdm=10 
newdm=-2 
Meaning: sms=+4432321321321 send immediately a SMS to the number; newdayminute=10 set the frequency to 10 minutes; newdayminute=-2 set the frequency to 2 days. 
 
Cose specifiche per TXtemp 
Per un canale che riceve un TXtemp, i dati in r sono 2 o 3 bytes in HexAscii, (B1) (B2) (B3): 
- temperatura=((B1)*256+(B2)) / 100  
- (se c'è) umidità=(B3) 
Esempio: r=090A sarebbe temperatura 23.14°C oppure r=090A15 sarebbe temperatura 23.14°C e umidità 21% 
 
Cose specifiche per TXdata 
Per un canale che riceve un TXdata, i dati in r sono i bytes in HexAscii che il TXdata riceve dalla sua azione (per esempio una risposta a comando/comandi ModBus) 
 
 
Comunicazione MQTT <<< 
Per avere disponibili i dati di TXtemp TXdata o TXsoil su un canale/Topic MQTT, ci si deve collegare a un WiFi che abbia accesso a un Broker MQTT; per esempio ci si può collegare al Wifi di laboratorio/casa/ufficio. Questo si fa dalle Impostazioni, come illustrato nel manuale veloce. Sempre in Impostazioni alla voce MQTT si inserirà: 
- l'IP o il nome del server dove gira il Broker MQTT (se lasciato vuoto, TXtemp TXdata TXsoil ecc. non useranno MQTT!) 
- eventualmente username e password del Broker, se li necessita 
Il dispositivo mostra nella voce MQTT il nome dei topic di default usati per la pubblicazione/out e per ricevere comandi/cmd; inoltre è possibile specificare un prefisso se ti serve (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 TXeasy si collegherà al Broker, 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 puoi vedere i nomi dei Topic da usare per comandare e per ricevere i messaggi di TXtemp TXdata e TXsoil. 
Ti suggeriamo per sicurezza di utilizzare un Broker installato su un tuo dispositivo (PC o altro; si può scaricare e installare e far girare un programma Broker come Mosquitto anche su un semplice PC Windows) e possibilmente di NON utilizzare cloud esterni / Broker gratuiti esterni perché se lo fai stai potenzialmente mettendo le tue cose in mani di estranei. 
 
Topic di Risposta/Pubblicazione 
Quando rispondono ai comandi, oppure quando vi vogliono dire qualcosa, TXtemp TXdata o TXsoil pubblicano un messaggio sul topic tx-o-nome (dove Nome è il nome che avete dato al vostro dispositivo un po' più in basso sempre nelle Impostazioni). 
L'automazione deve mettersi in ascolto su questo Topic per poter leggere la temperatura e/o gli altri dati. 
 
La risposta/payload è un testo, questo è il testo inviato periodicamente a ogni misura della temperatura da TXtemp. 
{"B":18,"C":0,"Temperature":23.10,"Time":"2020-05-22 14:31.00","H":"0906"} 
(questo formato con le grafe si chiama JSON). 
Se c'è l'umidità, ci sarà anche un parametro "Humidity" mentre per TXdata temperatura e umidità non ci sono, per risparmiare dati non è nemmeno trasmesso Time, e tutti i dati vanno nel settore H ovvero HexAscii (il significato della parte HexAscii per TXtemp è lo stesso che per HTTP). B è la carica della batteria in %; C il canale WiFi scelto (anche se si capisce già quale TXtemp / data / soil è dal nome del Topic, quindi non è indispensabile settarlo). 
Se si accende TXtemp TXdata o TXsoil manualmente, per la configurazione, su questo Topic viene pubblicato invece un messaggio tipo {"ON":1,"C":0,"Time":"2020-05-22 14:30.04","H":""} 
 
Topic di Comando/Ascolto 
TXeasy rimane sempre in ascolto sul topic tx-c-nome (dove Nome è il nome che avete dato al vostro dispositivo un po' più in basso sempre nelle Impostazioni). 
Per comandarlo l'hub (o voi a mano tramite programmi di invio messaggi MQTT) può pubblicare su tale Topic di comando questo messaggio/payload (che tra l'altro è utile solo nel caso vogliate tenere un TXtemp TXdata o TXsoil permanentemente acceso): 
 
STATE oppure {"STATE"}
restituisce lo stato globale
 
 
Come noto, per MQTT è necessario un sistema locale o remoto (accessibile via Internet) che faccia il Broker. 
Se state facendo un'automazione con TXtemp TXdata e TXsoil TXeasy potete semplificare, ed evitare questa necessità utilizzando anziché MQTT dei semplici comandi HTTP / Web, spiegati a inizio pagina. 
Per domande e suggerimenti posta sul forum di TXeasy = TXtemp TXdata TXsoil... 
 
 
 
TXtemp - TXdata - TXsoil 
 
 
Manuale collegamento e comandi WiFi HTTP e MQTT per DoorOpen 
Manuale collegamento e comandi WiFi HTTP e MQTT per NumeroInCoda e Multicoda 
Manuale collegamento e comandi WiFi HTTP e MQTT per Orologio/SuperClock 
 
Manuale collegamento e dati HTTP / MQTT per TXtemp, TXdata, TXsoil 
Manuale con il formato dei dati inviati via HTTP per RXTXeasy 
Manuale con il formato dei dati inviati via HTTP per ModBusEasy 
 
Manuale collegamento e comandi Seriali RS232 per 8888-Display 
Manuale collegamento e comandi ModBus per 8888-Display RS485 ModBus 
Manuale collegamento e comandi WiFi/HTTP per 8888-Display 
Manuale collegamento e comandi WiFi/MQTT per 8888-Display 
 
Home page - Soluzioni Semplici - Home - L'hardware di VisualVision 
(C) 2020 VisualVision