Files
lucianoandClaude Opus 5 5b45e5f485 Guida di ripresa per la prossima sessione
DOMANI.md: dove siamo arrivati, comandi per ripartire e i sei passi da fare
nell'ordine — inserire il giardino vero, misurare la portata dei settori,
collegare l'app all'agente, verificare in simulazione col dito nel terreno,
posare le sonde Watermark e solo alla fine accendere l'automazione.

Include i trabocchetti che fanno perdere lavoro (il localStorage separato per
porta, la data delle piante perenni, i backup) e le cose rimaste fuori.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GFnqupGt8T5HNNhPPHCjKs
2026-09-07 14:43:42 +02:00

7.3 KiB

Guida per domani

Dove siamo arrivati e cosa conviene fare, nell'ordine giusto.


Come si riparte

Dalla cartella del progetto:

npm run dev       # solo l'app, con ricarica automatica → http://localhost:5173
npm run agente    # app + centralina insieme → http://localhost:8088

Usa npm run agente se vuoi lavorare sull'irrigazione automatica, npm run dev se stai solo mettendo mano al codice.

L'indirizzo da aprire dal telefono (stessa Wi-Fi) è quello di rete della macchina su cui gira l'agente, sulla porta 8088. Per trovarlo: ipconfig getifaddr en0.

Tutto è su https://github.com/luzadev/polliceverde, un solo commit, niente in sospeso.


Cosa c'è già

L'app — sei sezioni: Oggi (meteo, allerte, cosa bagnare adesso), Orto (aiuole e colture), Acqua (bilancio idrico per coltura), Turni (programma per la centralina), Guida (58 schede di ortaggi, frutta e aromatiche), Diario.

Il motore idrico — metodo FAO-56: il terreno come serbatoio, consumo giornaliero pari a evapotraspirazione per coefficiente colturale, ricarica da pioggia e irrigazioni. Ricostruito su 21 giorni reali e proiettato su 10 di previsione.

L'automazione — un agente Node che apre le valvole all'orario stabilito, un settore alla volta, e registra nel diario quello che ha erogato. Driver per ESP32, Shelly e Tasmota. Parte sempre in simulazione.

Le sonde Watermark — veto sui turni, riancoraggio del bilancio, confronto fra misura e calcolo. Firmware ESP32 pronto in firmware/.


Da fare domani, in ordine

1. Metti dentro il giardino vero

È il passo da cui dipende tutto il resto, ed è anche l'unico che non posso fare io. In Orto → + Aiuola, una per ogni gruppo di piante che condivide terreno e impianto.

Per ogni aiuola servono: superficie in m² (la proiezione della chioma per gli alberi, non tutto il giardino), tipo di terreno, metodo di irrigazione, ed eventualmente pacciamatura e serra.

Per il tipo di terreno, se non lo sai: inumidisci una manciata di terra e prova a farne un salsicciotto. Si sbriciola subito → sabbioso. Si modella ma si spezza piegandolo → franco. Fai un anello senza crepe → argilloso.

Poi + Pianta qui per ogni coltura. Per le piante perenni che c'erano già, scegli la scorciatoia "C'era già": se lasci la data di oggi, l'app crede che il terreno sia stato appena bagnato all'impianto e per qualche giorno ti dirà che va tutto bene anche se è secco.

2. Misura la portata di ogni settore

Serve a trasformare i millimetri in minuti di valvola aperta, e misurarla è molto più affidabile che calcolarla dalle schede tecniche: la pressione di casa tua non è quella nominale.

Apri una sola valvola, raccogli per un minuto esatto l'acqua di un gocciolatore, moltiplica per il numero di gocciolatori del settore e per 60. Il risultato va in Orto → modifica aiuola → Portata del settore (litri/ora).

Nella stessa schermata metti il canale (l'uscita a relè, si conta da 0) e il nome del settore sulla centralina.

3. Collega l'app all'agente

Avvia npm run agente e apri l'app dall'indirizzo dell'agente (porta 8088), non dalla 5173. In Impostazioni → Centralina scrivi quell'indirizzo nel campo Indirizzo dell'agente.

⚠️ Attenzione a un dettaglio che fa perdere lavoro: i dati stanno nel localStorage del browser, che è separato per ogni indirizzo. Se hai già inserito il giardino sulla 5173 e poi apri la 8088, trovi tutto vuoto. Prima di cambiare porta fai Impostazioni → Esporta backup e importalo dall'altra parte. Poi lavora sempre e solo sulla 8088.

4. Lascia tutto in simulazione e verifica col dito

Per una o due settimane tieni il driver su Simulato. L'agente calcola, scrive nel registro cosa farebbe, e non tocca niente.

Nel frattempo fai la prova che conta: quando l'app dice di irrigare, prima infila il dito nel terreno a 15-20 cm. Se le due cose concordano, del calcolo ti puoi fidare. Se l'app anticipa o ritarda sistematicamente, le manopole sono in Impostazioni → Taratura del calcolo (efficienza dei metodi e risparmio della pacciamatura).

Registra le irrigazioni che fai, anche quelle a mano: è quello che aggancia il bilancio alla realtà. Finché non c'è nessuna irrigazione registrata per una coltura, l'app scrive "stima provvisoria" in giallo, e ha ragione.

5. Quando arrivano le sonde Watermark

Prima di interrarle, provale in un bicchiere d'acqua: dopo dieci minuti /sensori deve leggere 0-5 kPa. Lasciale asciugare all'aria un giorno e devono salire oltre 100 kPa. Se restano inchiodate, il problema è nel cablaggio.

Per la posa: a metà della profondità delle radici (15-20 cm per l'orto, 30-40 per un albero) e a 15-20 cm di lato dal gocciolatore, mai sotto — sotto misureresti il bulbo bagnato, non il terreno che la pianta esplora. Fai il foro con una punta di legno, bagna la sonda prima di inserirla, e versa un po' di terra stemperata nel foro: una sonda con aria attorno legge sempre secco.

Poi assegnale alle aiuole in Orto → modifica aiuola → Sonda Watermark.

Schema di collegamento completo in firmware/README.md.

6. Solo alla fine, accendi l'automazione

Nell'ordine, prima di attivarla: prova ogni canale a mano dal pannello in Turni e verifica che apra la valvola giusta; controlla che le sicurezze (minuti e litri massimi) siano tarate sul tuo impianto; fai una prova a secco e guarda se i risultati hanno senso.

Poi Impostazioni → Centralina → Automazione attiva. Ti chiede conferma.

Il pulsante rosso Chiudi tutto in Turni è sempre lì.


Cose che è utile sapere

I turni non sono a intervallo fisso. In Turni trovi due cose diverse: il programma fisso è il ritmo di regime, simulato a terreno in equilibrio e tempo asciutto — il caso peggiore, quello da lasciare impostato sulla centralina. I giorni esatti partono invece dall'acqua che c'è adesso e scontano le piogge previste. Ricontrollali una volta a settimana.

Fai un backup ogni tanto. Impostazioni → Esporta backup. Se svuoti i dati del browser, il giardino sparisce. Con l'agente collegato il rischio è minore, perché lo stato vive anche in agente/dati/stato.json, ma quel file non è nel repo (giustamente: sono dati tuoi, e il repo è pubblico).

L'app funziona offline, ma il meteo no: senza rete usa l'ultima previsione scaricata. In giardino va benissimo; dopo qualche giorno senza connessione, meno.

In caso di dubbio il sistema si ferma. Sonda guasta, dispositivo che non risponde, dati meteo mancanti, canale non assegnato: in tutti questi casi il settore non viene irrigato invece di essere irrigato alla cieca.


Cosa è rimasto fuori

Cose di cui abbiamo parlato ma che non abbiamo fatto, se un giorno servissero:

  • Notifiche a app chiusa — servirebbe un servizio push o un bot di messaggistica sull'agente. Un bot Telegram è la via più semplice e gratuita.
  • Integrazione con Home Assistant — esporre il calcolo come sensore e lasciare le automazioni là.
  • App pubblica su hosting (Netlify, Vercel) per consultarla ovunque. Nota che una pagina in HTTPS non può comandare dispositivi locali in HTTP: resterebbe per consultazione, mentre l'irrigazione si comanda dall'indirizzo di casa.
  • Più sonde per settore, per mediare invece di fidarsi di un punto solo.

Ultimo aggiornamento: 7 settembre 2026.