Centralina livello 1/Primo avvio
Centralina livello 1 - Primo avvio
Prima prova di avvio centralina
Mi preparo al primo test di funzionamento, per trovare eventuali "bug", iniziero` come se accendessi per la prima volta.
Fermo tutto
Fermo eventuali "demoni" in esecuzione, e` tutta roba in python per cui il comando:
ps -e -o pid,cmd | grep python
mostra tutti i programmi python in esecuzione.
Esempio (reale) di comandi da eseguire:
./mqtt2redis_init.d.sh stop ./setsgraph_init.d.sh stop sets:graph:mobile1
Svuoto database Redis
Copio e incollo la "schermata":
pi@level1:~ $ redis-cli 127.0.0.1:6379> FLUSHALL OK (0.72s) 127.0.0.1:6379>quit pi@level1:~ $
Mi fermo di scrivere perche` ho trovato il primo bug: la pagina html principale. ;)
E` gia` configurato per "localhost", ma e` possibile definire il database Redis da utilizzare, selezionate "config.json" da menu nella pagina web:
Possiamo usare la prima voce di menu per visualizzare tutte le chiavi Redis attualmente presenti:
Avvio del "demone" principale
.. e problema, non "bug":
pi@level1:~ $ /var/www/cgi-bin/mqtt2redis_init.d.sh start Starting system mqtt2redis_d daemon:. pi@level1:~ $ Connected with result code 0 Arresto programma: manca il file ../conf/config.json
Mi fermo di scrivere per andare a correggere. ;)
Riproviamo (ora funziona):
/var/www/cgi-bin/mqtt2redis_init.d.sh start
Da ora, tutti i dati arrivati al broker mqtt, vengono letti, elaborati e scritti nel database Redis.
Questo e` quello che vediamo dopo qualche minuto nella pagina "chiavi":
Sono comparsi i primi dati, dai sensori, sonde, eccetera .. che hanno inviato almeno un valore, i dati sono stati divisi in due chiavi distinte, una del segnale (che andremo a manipolare successivamente) e la rispettiva dei valori.
I valori sono inviati dai "remotes" (meglio che "utenze") ad ogni variazione, mi limito a leggerli, aggiungere data e ora ed accodarli.
#Promemoria C'e` la possibilita` di creare un grafico per qualsiasi chiave ":Valori", ma solo da linea di comando, mi e` sembrata una funzionalita` utile solo in fase di debug (sono tantissimi valori, a volte arrivano anche ogni mezzo secondo .. per cui ..)
Un po` di configurazione
Meglio identificarsi i "remotes", prima che diventino troppi e non si capisca a cosa si riferisca.
Oltre a cio`, dovremo definire anche eventuali anomalie sulle letture, il tipo di segnale, ecc.ecc.
Sempre dalla selezione chiavi, filtriamo se necessario, per individuare meglio il "remote" da configurare, per esempio solo i "PIR":
Spostiamoci verso il basso con la barra di scorrimento, selezioniamo il giusto PIR e poi il pulsante modifica della chiave "hash" (e` il tipo, visibile a fianco del nome chiave), se sbagliate 'sezione' non preoccupatevi, non funzionera` (a meno che clicchiate ELIMINA, ma anche qua, perderete i dati attuali, al primo nuovo valore ricomparira` di nuovo):
C'e` una breve descrizione dei campi, ma non e` del tutto attendibile, mi sembra che ho cambiato qualcosa, comunque, per ora mi limito alla descrizione:
Qualcosa di simile, per la sonda di temperatura:
Promemoria
- valori2csv