piGarden v 0.4.0 e piGardenWeb v 0.3.0: novità relative alla sicurezza, schedulazioni, statistiche

Salve a tutti,
da poche ore ho rilasciato la nuove versioni si piGarden e piGardenWeb le quali vanno ad aggiungere, come cita il titolo del post, alcune funzioni relative alla sicurezza, schedulazioni e statistiche. Ma andiamo con ordine…..

piGarden v 0.4.0

La nuova versione di piGarden, script per la gestione del nostro impianto di irrigazione gestito da Raspberry Pi, aggiunge le seguenti caratteristiche.

Credenziali di comunicazione sul socket server

Come già detto in passato la piGarden e piGardenWeb comunicano grazie ad socket server esposto sulla rete. Fin quando i due componenti risiedono sulla stessa macchina non ci sono grossi problemi, ma nel caso che l’applicazione web gestita da piGardenWeb giri su un secondo Raspberry (come nel mia installazione) allora il socket server deve rimanere in ascolto sull’interfaccia di rete che lo collega alla lan lasciandolo in balia di possibili intrusi.

Per ovviare a questa vulnerabilità ho introdotto la possibilità di definire le credenziali del socket server e che i client (piGardenWeb) dovranno indicare per autenticarsi in fase di connessione.

Per fare si che il socket server sia soggetto ad autenticazione dovranno essere definite nel file di configurazione le variabili TCPSERVER_USERTCPSERVER_PWD.

Funzione di lock/unlock su richieste concorrenti nell’apertura/chiusura delle elettrovalvole

Nel caso in cui vengano definite per lo stesso orario due o più schedulazioni di apertura/chiusura il sistema andava in crisi e potevano verificarsi problemi per cui una delle due schedulazioni non portava a termine l’operazione. Per ovviare a questo problema ho introdotto un sistema di lock/unlock il quale da priorità ad eventuali richieste concorrenti e mette in attesa tutte le altre, una volta processata la prima, passa alla seconda e così via.

Schedulazioni disabilitate

E’ stato aggiunto la possibilità di definire delle schedulazioni disabilitate di apertura/chiusura delle elettrovalvole. Questa nuova caratteristica è stata aggiunta per dare supporto a piGardenWeb per gestire la possibilità di disabilitare le schedulazioni già definite.

Per potere inserire una schedulazione disabilitata è necessario impartire il comando add_cron_open seguito dall’opzione disabled:

piGarden.sh add_cron_open alias m h dom mon dow [disbled]

Corretto perdita dati delle ultime piogge

In fase di inizializzazione del sistema tramite il comando init, venivano eliminate le informazioni relative all’ultima pioggia rilevata dal sensore e dal servizio online. Con questo aggiornamento queste informazioni vengono mantenute e quindi non più eliminate.

Raccolta statistiche di utilizzo

In questi ultimi giorni, vendendo i grafici dei clone di piGarden eseguiti su github mi sono reso conto che non avevo nessuno strumento per capire quali effettivamente fossero utilizzati e quanto invece cestinati magari perché scaricati solo per curiosità.

Ho pensato quindi di aggiungere una funzione che raccolga una sorta di attività giornaliera delle installazioni attive.

Il sistema funzione generando un’identificativo univoco di 32 caratteri, ricavato facendo un md5sum del mac address della prima interfaccia di rete presente sul Raspberry. Questa stringa mi permetterà di identificare in maniera univoca l’installazione in un ambito statistico, ma nel rispetto della privacy, non avrò nessun modo per potere risalire, identificare o rintracciare l’hardware originale da cui proviene l’identificativo.

L’identificativo viene scritto nel file /tmp/pigarden.id e viene inviato con una frequenza massima di 24 alla url https://www.lejubila.net/statistic/collect_usage/piGarden indicando la versione utilizzata.

Per chi volesse disabilitare l’invio dell’identificativo per non essere soggetto a statistiche di utilizzo, lo può fare definendo nel file di configurazione la NO_SEND_IDENTIFIER e impostandola con il valore uno:

NO_SEND_IDENTIFIER=1

Aggiornamento dalla v 0.3.1

Per eseguire l’aggiornamento di piGarden alla versione 0.4.0 procedere come segue:

cd
cd piGarden
git pull

Definire il percorso dell’eseguibile stat nel file di configurazione:

# Percorso stat
STAT="/usr/bin/stat"

Definire le credenziali del socket server con i valori che preferite:

# Utente e password che i clients devono utilizzare per stabilire una connessione tramite socket server
TCPSERVER_USER=""
TCPSERVER_PWD=""

Definire la variabile per impedire l’invio delle statistiche:

# Con impostato il valore 1 non invia l'identificativi per statistiche di utilizzo
NO_SEND_IDENTIFIER=0

piGardenWeb

Credenziali di comunicazione con socket server

Come già detto sopra, ho introdotto la possibilità di definire le credenziali di accesso al socket server gestito da piGarden, di conseguenza piGardenWeb dovrà autenticarsi in modo corretto. Per definire le credenziali di autenticazione andranno definiti parametri PIGARDEN_SOCKET_CLIENT_USERPIGARDEN_SOCKET_CLIENT_PWD nel file .env.

Abilitare o disabilitare una schedulazione di apertura / chiusura

Con questa versione è stata aggiunta la possibilità di disabilitare o abilitare le schedulazioni di apertura / chiusura delle zone. Questo può risultare utile quando vorremo sospendere temporaneamente una schedulazione senza doverla necessariamente eliminare per poi essere reinserita successivamente. Basterà semplicemente disabilitarla per poi essere riabilitata quando necessario.

Aggiornamento dalla v 0.2.0

Per eseguire l’aggiornamento di piGardenWeb dalla v 0.2.0 alla v 0.3.0 eseguire come segue:

cd
cd piGardenWeb
git pull

Se necessario definire del file .env le credenziali di accesso al socket server come indicato sopra.

Conclusioni

Per ora è tutto. Per qualsiasi dubbio o problema scrivete pure nei commenti.

71 pensieri su “piGarden v 0.4.0 e piGardenWeb v 0.3.0: novità relative alla sicurezza, schedulazioni, statistiche

  1. Ciao David,
    purtroppo aggiornando si è incastrato qualcosa. in sostanza non riconosce più lo script come tale. Ad esempio se provo a scrivere (nella cartella) pi+TAB non mi completa il nome e se lo scrivo a mano (piGarden.sh init) mi dice command not found.

    Non vorrei riformattare la SD, ma vorrei reinstallare da capo. Come si possono rimuovere i cloni dei repository e l’eventuale cache? ci ho provato ma riscarica tutto in meno di 1 secondo e il problema persiste.

    Grazie come sempre,
    Marco

  2. Ciao @Marco,
    sei sicuro di avere impartito il comando nel modo giusto ? Mi spiego, se sei nella cartella di installazione per lanciare lo script devi digitare
    ./piGarden.sh
    e non
    piGarden.sh

    stesso discorso vale per l’autocompletamento, devi metter il ./ davanti al comando. Serve ad indicare alla shell che vuoi eseguire il comando che è nalla cartella corrente.

    Se non ti funziona nemmeno così controlla i se lo script ha i permessi di esecuzione, se non ce li ha puoi riassegnarli con
    chmod 755 piGarden.sh

    Per ultimo puoi controllare se nel file di configurazione sono definite tutte le variabili relative ai path dei comandi a cui si affida piGarden, puoi confrontare il tuo file di configurazione che hai in /etc/piGarden.conf con quello di esempio presente in /home/pi/piGarden/conf/piGarden.conf.example

    Se invece vuoi reinstallare da capo eliminando quella attuale puoi fare così
    cd
    rm -rf piGarden
    git clone https://github.com/lejubila/piGarden.git

    Fammi sapere se riesci a risolvere.

  3. Ho risolto la questione dello script, evidentemente ricordavo male la sintassi. Però continua a non funzionare (tentavo proprio di lanciare l’init perché non è più ripartito dopo l’aggiornamento). Quello che ho notato è che all’avvio la procedura init è molto lenta e i led dei relay rimangono tutti accesi. Appena riesco vorrei ripristinare l’immagine di backup che feci sul pc per vedere che tipo di problema è.

    Nel frattempo ritorno a irrigare con il metodo “CoLeMan”!

    Ciao!

  4. Ciao
    ho eseguito l’aggiornamento e tutto sembra funzionare perfettamente. Solo una cosa funziona in modo anomalo: all’avvio del RB il sistema non resetta più le elettrovalvole e rimangono tutte aperte. è necessario agire su ogni singolo canale aprendolo e chiudendolo a mano. Ho controllato il crontab e sembra essere ok.
    cosa potrebbe essere?
    grazie
    Claudio

  5. Ciao @Claudio,
    ho fatto una correzione.
    Per favore puoi provare ad aggiornare e vedere come va ora ?
    Aggiorna facendo così:
    cd
    cd piGarden
    git pull

    Fammi sapere così va meglio
    Grazie.

  6. …sei meglio di help desk 24×7
    Non resetta come prima….considera però che sto lavorando off line, ovvero con la scheda relè collegata al RB ma senza il collegamento alle elettrovalvole.
    Sempre nella medesima configurazione, però, la precedente versione funzionava bene.
    grazie
    Claudio

  7. ho fatto un’ulteriore modifica,
    dovrei avere risolto.
    Puoi rifare l’aggiornamento come prima ?
    Fammi sapere se ti funziona.

  8. Perfetto lejubila
    funziona alla grande!!!
    nella versione precedente resettava contemporaneamente tutti i canali. Nell’attuale li resetta uno per volta. Direi ottimo!!!
    Grazie 1000
    Claudio

  9. Confermo anche io: appena effettuato l’aggiornamento e tutto funziona come dovrebbe.

    Grazie mille!

  10. Ciao @Marco,
    nei vari articoli pubblicati sono previste sei zone (elettrovalvole) di tipo bi-stabile collegate ad un raspberry pi 1 di tipo B.
    Niente vieta che possa aggiungere altre zone baste che il raspberry abbia ulteriori gpio liberi da potere utilizzare.
    Se scegli l’installazione con valvole monostabili risparmi due gpio e quindi puoi aggiungere due zone ulteriori.

  11. Ciao, che tu sappia, c’è modo di creare un file log al giorno? Mi spiego: ogni giorno viene greato un nuovo file o sovrascritto da capo il vecchio.
    Grazie
    Claudio

  12. Ciao @Claudio,
    il comportamento standard di piGarden è accodare i log nel file /home/pi/piGarden/log/piGarden.log (lo puoi cambiare modificando la variabile LOG_FILE nel file di configurazione). Quando raggiunge la dimensione massima specificata in LOG_FILE_MAX_SIZE (sempre nel file di configurazione) viene rinominato e compresso. A questo punto viene creato un nuovo di file di log.
    Se vuoi che tutti i giorni il file di log venga azzerato per poi ricominciare, puoi inserire un cron che tutti i giorni a mezzanotte elimini il file di log. Es:

    0 0 * * * rm /home/pi/piGarden/log/piGarden.log

    Spero di esserti stato utile.

  13. Ciao,
    mi complimento con te per il progetto che stai portando avanti, molto interessante.
    A mio avviso l’interfaccia frontend di un progetto è molto importante. E dato che sono interessato al tuo progetto ho alcune domande da farti.
    L’hardware d’acquistare quale?
    esiste un contenitore che possa alloggiare tutto l’hardware?
    siccome vorrei controllare tutto dal wifi un raspberry pi 3 va bene?
    quali sono poi gli altri moduli che occorrono per gestire 6 elettrovalvole?
    Siccome devo partire da zero mi puoi indicare che sistema installare?
    la tua applicazione web può essere gestita da uno smartphone?

    Grazie e complimenti ancora

  14. Ciao @Tiziano,
    qui sul blog ho pubblicato tutta una serie di post, che ti invito a leggere, dove viene spiegato passo-passo tutto il necessario per realizzare l’impianto.
    Per quanto riguarda il materiale da acquistare puoi leggere il primo post della serie: Impianto di irrigazione con Raspberry Pi (prima parte).
    Per il contenitore puoi vedere questo altro posto (ci sono anche le foto): Impianto di irrigazione con Raspberry Pi: collegamenti esterni alla centralina (sesta parte).
    Il raspeberry 3 va più che bene, tieni conto che io ho utilizzato un raspberry di prima generazione nella versione B con un dongle usb-wifi collegato.
    I moduli necessari sono indicati tutti nei post.
    Tutto il sistema è stato sviluppato e testato su raspbian.
    L’interfaccia dell’applicazione web è responsive e quindi sia adatta ai diversi form-factor dei dispositivi e quindi anche agli smatphone.

    Tieni conto che nei primi post viene descritto l’implementazione dell’impianto con elettrovalvole di tipo bi-stabili, successivamente è stato aggiunto anche il supporto per le elettrovalvole mono-stabili (un po più semplici da gestire). Puoi approfondire in questo post: piGarden v 0.3.1: aggiunto supporto sperimentale per elettrovalvole mono-stabili.

    Se hai dubbi chiedi pure.

    Dimenticavo, a questo link trovi tutto l’elenco dei post ordinati dal più recente al più vecchio.

  15. @lejubila
    Ciao e grazie per la tua gentile risposta.
    Guarderò tutto, mi puoi spiegare cosa intendi con valvola bistabile e monostabile?
    Io ho delle valvole da 24vac della rainbird, quindi devo acquistare un alimentatore 24vac da collegare sul modulo releays, giusto?
    Ad ogni modo è importante per me controllare tutto dallo smartphone, quindi se tutto è compatibile siamo a cavallo.

  16. Ciao @Tiziano,
    non conosco queste elettrovalvole ma dovrebbero essere del tipo mono-stabile, quindi si ti confermo che devi collegare l’alimentatore al modulo relè. Puoi leggere questo post relativo al supporto per le elettrovalvole mono-stabili.

    Ti confermo che puoi usare piGardenWeb dal browser dello smartphone.

  17. @lejubila
    benissimo, io avevo già dato per scontato che avrei collegato tutto via relè.
    Sarebbe bello poter mettere un display da 3.5″ o superiore e visualizzare la grafica di controllo anche sul display, è una cosa fattibile ?
    hai mai provato su un display da 3.5″ ?

  18. Ciao @Tiziano,
    non ho esperienza riguardo a display collegati al raspberry ma non escludo che possa essere realizzato.
    Anzi se pensi di cimentarti in questo impresa e ci riesci magari poi puoi condividere la tua esperienza con noi.

  19. Hai cambiato il valore di EV_TOTAL nel file di configurazione in modo che corrisponda al numero totale di elettrovalvole ?
    Hai definito correttamente la nuova elettrovalvola nel file di configurazione ?
    Se hai qualche dubbio puoi riportare qui sotto le definizioni delle elettrovalvole che hai nel file di configurazione.

  20. ritornando al discorso display, secondo me sarebbe utile li dove bisogna agire manualmente e in rapidità sull’impianto.
    Chissà magari qualcuno può aiutarci…

  21. Secondo me il display per come è stato concepito l’impianto ha solo una funzione estetica (es: Mostrare quale EV sta irrigando e per quanto starà aperta), ma sicuramente non può aiutare ad intervenire “in rapidità” sull’impianto.

    Per implementare una console vera e propria è necessario intervenire a livello di circuito magari inserendo un pulsante “rosso” che permette di bloccare manualmente l’irrigazione, o n pulsanti che permettono di far partire questa o quella EV.

    Io ho ordinato un display (che ci sta mettendo tanto ad arrivare) e come ho già avuto modo di dire a Lejubila ci sarebbe da fare una modifica sulla struttura dello script.

    Insomma, implementare quello che intendi tu si traduce in uno stravolgimento del sistema così come è fatto.

    Ciao,
    Marco

  22. Ciao Marco, grazie per la risposta.
    Si ho capito benissimo la situazione, molte volte capita di dare acqua senza programmare, a questo punto, dato che è complesso farlo via hardware si potrebbe implementare via software la gestione manuale o esiste gia?
    io purtroppo devo ancora progettare tutto, attendo che arrivi il materiale…

  23. Progetto veramente interessante complimenti!
    Sarebbe bello vedere l’integrazione di un sensore di temperatura come dht11 o dht22 e il supporto alla Pi Camera

  24. ciao, dove trovo i passaggi per l’installazione step by step?
    inoltre va installato su raspian 4.9 con desktop?

  25. @Nicola Ciao Nicola grazie ho installato tutto.
    @lejubila ho finalmente ho installato tutto ma i relè ancora no.
    Ho dato uno sguardo sulle possibili configurazioni delle varie zone, ma al momento no posso ancora utilizzarla sul mio impianto.
    Ti propongo alcuni addons nella speranza che si possano integrare:
    – avere la possibilità dal web di configurare 2 /3 irrigazioni al giorno
    – avere la possibilità di poter configurare le irrigazioni ogni N giorni. (ogni 1 o 2 o 3 ecc giorni)
    – poter stabilire gli orari esatti dell’inizio dell’ irrigazione.

    insomma tutto quello che si può fare attualmente con le centraline in commercio.

    Spero che non sia complesso per te…

    fammi sapere…

    ciao e grazie per la tua pazienza

  26. Perdonami ho scoperto solo adesso che è possibile farlo.
    un unica cosa… si puo aggiungere nel menu di avvio rapido la possibilità di scegliere n. minuti per l’irrigazione?
    o al massimo aggiungere 1-3-5-7 minuti? insomma avere piu possibilità di scelta.

  27. Ciao @Nicola,
    idea interessante. Non conosco questi due sensori. Secondo te come potrebbero essere integrati in piGarden ?

  28. Ciao @Tiziano,
    ho aggiunto gli altri tempi di irrigazione di 1, 3, 5, 7 minuti nella funzione di avvio ritardato come da te suggerito.
    Per eseguire l’aggiornamento ti basta impartire questi comandi:
    cd
    cd piGardenWeb
    git pull

  29. @lejubila sei un grande!
    adesso devo testarlo un po per capire può servire altro da suggerirti…
    no notato che manca la possibilità di schedulare la partenza ogni N. giorni, questa sarebbe una bella chicca se si potesse implementare..
    che ne pensi?

    io prendo spunto dalla mia centralina ovviamente…

  30. @lejubila
    ho aperto la porta 8084 sul router per poter accedere da fuori al sistema, ma non funziona, bisogna abilitare qualcosa nel php.ini?

  31. Ciao @Tiziano,
    per ora non c’è una funzione diretta per schedulare l’irrigazione a giorni alterni ma puoi comunque fare una multi selezione dei giorni nella schedulazione che hai già definito impostando per esempio lunedì, mercoledì, venerdì, domenica.
    Per accedere da fuori all’interfaccia web (piGardenWeb) devi aprire la porta 80. La porta 8084 serve soltanto per la comunicazione tra piGarden e piGardenWeb.

  32. @lejubila il mio prato viene irrigato ogni 4 giorni… cioè un giorni si e 4 giorni no.
    come posso schedulare in questo modo ?

  33. Ciao @tiziano,
    attualmente questo tipo di schedulazione non può essere gestita in un modo molto comodo da piGardenWeb.
    Una possibile potrebbe inserire una multi selezione sui giorni del mese, per esempio selezionando i giorni in questo modo: 1, 6, 11, 16, 21, 26, 31.
    Un altro modo sarebbe quello di impostare manualmente da shell un cron di apertura e chiusura in questo modo:
    30 22 1/4 5,6,7,8,9 * /home/pi/piGarden/piGarden.sh open Giardino_Posteriore_SX
    così facendo perdi la possibilità di gestire la schedulazione dall’interfaccia web ma hai impostato l’apertura alle 22,30 per i mesi maggio/giugno/luglio/agosto/settembre a partire dal primo giorno del mese ogni quattro giorni.

  34. ok, spero che si possa implementare in futuro allora…
    mentre per quella funziona che ferma tutte le. schedulazioni in un colpo solo?

  35. Ciao,
    esiste un tutorial completo per installare direttamente da nuovo l’ultima versione di piGarden completa di tutto ? Grazie mille

  36. Finito stasera l’installazione di tutto e testato manualmente: va alla grande! Il meteo visualizza perfettamente la mia zona e adesso devo solo aspettare la prima pioggia lombarda per assicurarmi del funzionamento (anzi del non funzionamento …)
    Più in là penso di implementare il sensore di umidità ma già così è perfetto.
    Grazie dello splendido lavoro.

  37. ciao @lejubila ,
    intanto volevo ringraziarti dell’ottimo lavoro che hai fatto perché è davvero una cosa fantastica!! Io avrei anche bisogno di un controllo per la temperatura tramite un sensore che, settate delle soglie, fa partire una ventola per “raffreddare” una piccola serra. Volevo sapere se era possibile implementarlo nello script e nella controparte web.
    grazie in anticipo.

  38. Ciao @alessandro,
    interessante l’idea dell’attivazione di una ventola in base allo stato di un sensore di temperatura. Però mi sembra poco attinente con il tema dell’irrigazione.
    In futuro avrei intenzione di realizzare sulla falsariga di piGarden un ulteriore progetto per comandare interruttori, switch e monitorare vari sensori. La tua idea la vedo più adatta in questo progetto, che però per ora è solo nella mia mente e non so quando potrò iniziare a lavorarci.
    Comunque sia se hai altre idee o suggerimenti, sono sempre ben accetti.

  39. ciao lejubila,
    complimenti per i post sul sistema di irrigazione.
    Io sto valutando di sostituire le due centraline che comandano il miei due impianti d’irrigazione (uno davanti casa, l’altro dietro) con un sistema più smart e più facilmente gestibile stando seduto sul divano. Mi chiedevo se esiste la possibilità di far comunicare il programma d’irrigazione con un sistema domotico tipo Home Assistant oppure openHAB.

  40. Ciao @Luca,
    grazie per i complimenti.
    Riguardo a Home Assistant e openHAB mi dispiace ma per ora non è prevista l’integrazione.
    Per il futuro non si sa mai 😉

  41. Grazie per il bel prodotto. Ho riscontrato un problema dovuto alla mia inesperienza. Ho eseguito alla lettera le installazioni di piGarden e piGardenWeb. Quando vado sul browser si apre la finestra piGardenWeb con questo messaggio:
    PiGarden server error
    stdClass Object
    (
    [description] => Invalid socket client response at line 120 of file /home/pi/piGardenWeb/app/PiGardenSocketClient.php
    [code] => 0
    )
    Mi potete aiutare? Grazie

  42. Ciao Pierluigi.
    L’errore che indichi sembra essere dovuto ad una risposta malformata che piGarden esegue a seguito della richiesta di stato di piGardenWeb.
    Da shell dovresti impartire i seguenti comandi e indicarmi cosa ti compare in output:

    telnet localhost 8084
    status

    Fammi sapere.

  43. Grazie per la pronta risposta. Ecco il risultato di quanto richiestomi:
    pi@raspberrypi:~ $ telnet localhost 8084
    Trying ::1…
    Trying 127.0.0.1…
    Connected to localhost.
    Escape character is ‘^]’.
    status
    Connection closed by foreign host.

  44. @Pierluigi,
    il problema è che non con il comando status non viene restituito nessun risultato.
    le verifiche che puoi fare sono
    – controllare nel file di log /home/pi/piGarden/log/piGarden.log se sono presenti errori
    – controllare che tutti i percorsi dei comandi definiti nel file di configurazione /etc/piGarden.conf siano esistenti e funzionanti (es: /usr/local/bin/gpio, /usr/local/bin/jq, /usr/bin/curl)

    Eventualmente puoi mandarmi il tuo file di configurazione in modo da che possa verificare se ci sono problemi.

  45. Ho fatto i controlli sia nel file conf sia verificando direttamente l’esistenza dei files. Tutto sembra ok.
    la log mi dice:
    Thu 28 Dec 08:18:00 UTC 2017 socket connection from: 127.0.0.1 – command: status
    Thu 28 Dec 08:18:01 UTC 2017 ERROR solenoid alias not found: 1
    Provo a mandarti il mio file conf come allegato via mail
    Grazie mille

  46. Non riesco a mandartelo ma ti posso segnalare 2 righe che ricorrono sempre:

    Thu 28 Dec 08:17:32 UTC 2017 socket connection from: 127.0.0.1 – command: status

    Thu 28 Dec 08:17:32 UTC 2017 ERROR solenoid alias not found: 1

    Ancora grazie

  47. @Pierluigi
    dovresti riportarmi la parte di configurazione inerente le elettrovalvole perché probabilmente c’è qualcosa di sbagliato nel nome (presenza di spazi?).

  48. Ho verificato nel file .conf il nome delle valvole. Erano presenti degli spazi che ho eliminato. Ora tutto sembra andare per il meglio. Non so come ringraziarti per la tua disponibilità. Buon Anno!

  49. Ricomincio con gli auguri di Buon Anno.
    Premetto che dispongo di EV monostabili e di un solo modulo con 4 relè.
    Nel file .conf ho impostato EV_monostable a 1 e nel mio caso ho inserito 2 EV visto che, comunque, i primi 2 switch sono per l’uso delle EV bistabili. Ho provato in diversi modi a utilizzare il modulo per tutte e 4 le mie EV ma senza risultato. Domanda: per controllare 4 EV è proprio necessario che acquisti un altro relè?
    Grazie

  50. No! con la configurazione “BISTABILE” hai bisogno di 2 SWITCH per invertire le polarità, unitamente ad un altro switch dedicato ad ogni EV per chiudere il circuito e aprirla/chiuderla a seconda, appunto, della polarità.
    In caso di configurazione “MONOSTABILE” ogni switch pilota una EV visto che la polarità è sempre la stessa, quindi di fatto vai a chiudere solo il circuito della EV che ti interessa pilotare in quel momento.
    Ricapitolando, in modalità MONOSTABILE, per 4 EV servono 4 relè.

    Ciao!

  51. Ciao @Pierluigi,
    grazie per gli auguri che ricambio.
    Per quanto riguarda le elettrovalvole mono stabili aggiuntive, ti basta definirle nel file di configurazione similmente alle altre due che già sono funzionanti e per ognuna indicare il numero di gpio utilizzato per pilotare i relativi relè.

  52. Grazie per le info. Ho proceduto secondo le tue indicazioni e tutto funziona per il meglio.
    Ciao.

  53. Ciao. Sto facendo una serie di prove, con successo, che mi hanno portato a fare alcune considerazioni. Usando le schedulazioni, un po’ macchinose ma necessarie, mi sono accorto che l’inizio e quindi la fine sono differiti, rispetto alle mie impostazioni, a un’ora dopo. L’orologio di sistema è corretto. Vorrei inoltre abusare della tua disponibilità per chiederti di inserire una finestra sotto quelle delle schedulazioni, con le date, i tempi e i tipi (manuale/programmato) di irrigazione e magari, i periodi di non irrigazione perché bloccati dal meteo. Senza queste info è difficile sapere se ho irrigato o no. Utile, ma non determinante, sarebbe la presenza di un orologio sia sulla “dashboard” che sulle zone. Tutto ciò è possibile? Anche se sono ultra settantenne attendo fiducioso! Grazie

  54. Ciao @Pierluigi,
    riguardo l’avvio errato delle schedulazioni ti consiglio di ricontrollare la data di sistema del tuo raspberry perché queste si affidano al cron di sistema, quindi se ti partono ad orari errati sicuramente di pende dalla data del raspberry.
    Per verificare che sia corretta ti consiglio di digitare il comando “date” che dovrebbe mostrarti un output del genere:
    lun 8 gen 2018, 14.40.32, CET
    è importante che presenti la stringa CET sul finale.
    Se noti che sul tuo sistema è diversa puoi provare a riconfigurare il timezone nel seguente modo:
    sudo raspi-config
    Localisation Options
    Change Timezone
    Quindi seleziona Europa e poi Roma.

    Riguardo invece mostrare i log delle irrigazioni, la cosa è un po complicata in quanto lo script di irrigazione è completamente slegato dall’interfaccia web e dovrei trovare un sistema per comunicare i log da uno all’altro. Sicuramente è una cosa fattibile ma ho veramente proprio tempo da dedicare modifiche sostanziali o nuove implementazioni. Infatti il poco tempo che ho lo sto impiegando ad un nuovo pannello web più generalizzato che dovrebbe ospitare la gestione di piGarden più altri moduli in fase di sviluppo (antifurto, pannello domotico). Sicuramente i tuoi suggerimenti potrò implementarli in questo nuovo progetto ma per adesso è tutto in stato embrionale.
    Per l’orologio, non so se fa al caso tuo ma è già presente qualcosa del genere nella dashboard, infatti se hai configurato la il recupero delle condizioni mete da servizio internet (puoi vedere il post dove lo spiego), nell’interfaccia dovresti visualizzare anche la data e l’ora locale.

    Fammi sapere se hai risolto il problema dell’orario.

  55. Non so che cosa sia successo ma ora l’orario è ok così come la data di sistema. Ti ringrazio per l’attenzione che mi hai dato. Resto fiducioso circa la possibilità di vedere le implementazioni che ho suggerito. Ciao, che tutti possano essere disponibili come te!

  56. Ciao lejubila
    Ottimo progetto che prendo come riferimento per convertire il mio sistema attuale di irrigazione con Controller. Stavo pensando se fattibile, di alimentare tutta la struttura con un pannellino solare da 10/15 W con abbinato regolatore e batteria a tampone. Facendo due conti molto approssimativi dovrebbe essere fattibile. Hai per caso già pensato a questo ?

    ciao e grazie

  57. Ciao @Michele,
    no non ho mai pensato di potere alimentare il tutto tramite pannello fotovoltaico, anche perché non sono così competente in materia.
    Se riesci nell’impresa fammi sapere. Se ne hai voglia sarebbe bello condividere il tuo progetto con gli altri, magari con un articolo qui sul blog o dove ritieni tu più opportuno.

  58. Ciao Lejubila’s
    sono in test con pigarden alimentato da Pannello solare. In una condizione provvisoria e tutto in test ( abbandonato a sè stesso ) da una settimana. Sembra rispondere bene. Ho preso un pannello da 30 Watt con un regolatore di tensione di pari potenza, provvisto già di uscite USB. Per ora sto provando il tutto con una batteria da 12 Volt 7 A, però credo che opterò per mettere in serie due batterie nella versione definitiva.
    Ho dovuto invertire la configurazione delle gpio nello script, per avere una situazione di riposo senza i relè eccitati.
    Mi prendo un paio di settimane per testare l’affidabilità e la tenuta della batteria, poi si ti può interessare ti passerò tutte le info. Se hai voglia di pensarci valuta nell’interfaccia web una gestione dell’energia.
    Ho qualche problema con il sensore online della pioggia ( non ci salto fuori con identificare la località ).

    Saluti

    Michele

  59. Ciao Michele,
    che dire …. wow.
    Certo che sono interessato. Se vuoi quando sei pronto posso crearti un’account qui, così puoi documentare direttamente tu questo tuo progetto.
    Per quanto riguarda l’interfaccia web per la gestione dell’energia secondo te cosa dovrebbe contenere ?
    Per il sensore online se mi passi la località vedo se riesco a trovarti io la configurazione corretta.

  60. Ciao Lejubila
    Mi prendo qualche settimana per vedere se il sistema in produzione e’ in grado di sopportare il carico, con qualsiasi condizione meteo.
    ho da risolvere un problema su una seconda batteria di Relè che mi partono con lo stato eccitati ( no buono per la gestione energetica ).
    Potrebbe essere che ho sbagliato qualche collegamento. Oggi cerco di verificare per bene. Mi manca solo il sensore pioggia, ma questo con calma .
    Per quanto riguarda la visualizzazione di dati energetici intendevo voltaggio e potenza in tempo reale. potrebbe essere un elemento iniziale utile per monitorare lo stato della carica della batteria ed eventualmente abbinarli ad un sistema di notifica. ( sto fantasticando ).
    Per il meteo, abito a Parma. Testando la pagina di prova con la mia Api key mi restituisce una pagina dicendomi che esistono molte località con questo nome. Ho indicati il codice IY per Italia.

    Ti aggiorno

    Grazie

  61. Ciao @Grimo75,
    riguardo il rilevamento pioggia tramite il servizio online, per la città di Parma la configurazione è la seguente:
    WUNDERGROUND_LOCATION=”IT/Parma”

    Fammi sapere se funziona.

  62. ho dovuto modificare i nomi delle elettrovalvole in piGarden.conf
    ora in pigardenweb mi esce questo:

    PiGarden server error

    stdClass Object
    (
    [description] => Invalid socket client response at line 120 of file /home/pi/piGardenWeb/app/PiGardenSocketClient.php
    [code] => 0
    )

    cosa devo fare?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.