Progetto fai-da-te / Dashboard
Scheda raccolta differenziata per Home Assistant: guida completa
Un pacchetto pronto all'uso che aggiunge a Home Assistant una scheda con i sei secchi della raccolta differenziata (plastica, carta, umido, indifferenziato, vetro, pannolini), un calendario settimanale personalizzabile e un promemoria automatico la sera prima del ritiro, via notifica push, annuncio vocale (Alexa o Google) o Telegram.
Scarica il pacchetto (.zip)↓
Così appariranno i secchi sulla dashboard una volta installata la scheda.
Cosa ottieni
Una scheda con i secchi accesi solo per il rifiuto previsto oggi, e un promemoria che parte da solo la sera prima.
Cosa serve prima di iniziare
- Un'istanza Home Assistant già funzionante e raggiungibile.
- Un modo per copiare file nella cartella di configurazione: l'add-on File editor (il più semplice, si installa dal negozio componenti aggiuntivi) oppure Samba/SSH se li usi già.
- Nessuna conoscenza di programmazione: si copia, si incolla, si personalizza dal menu.
1. Scarica ed estrai il pacchetto
Clicca sul pulsante Scarica il pacchetto (.zip) in alto, poi estrai lo zip sul computer (tasto destro sul file → Estrai tutto su Windows, doppio clic su Mac). Otterrai una cartella con dentro quattro elementi: www, packages, dashboard e un file README.md. In questa guida copieremo www e packages nei prossimi due passaggi, mentre le schede della dashboard le scriveremo direttamente dal browser: la cartella dashboard contiene già gli stessi due file YAML pronti all'uso, comodi come riferimento o se preferisci incollarli da lì invece di ricopiarli dalla pagina.
2. Copia le icone dei secchi
Se non hai già l'add-on File editor, installalo così: Impostazioni → Componenti aggiuntivi → Negozio componenti aggiuntivi, cerca File editor, apri la sua pagina e premi Installa, poi Avvia. Quando è avviato comparirà una nuova voce nel menu laterale.
- Apri File editor dal menu laterale.
- Clicca l'icona della cartella in alto per sfogliare i file, ed entra nella cartella
www(se non esiste, creala con l'icona apposita). - Copia al suo interno l'intera cartella
rifiutiche hai estratto dallo zip, in modo da ottenere il percorsowww/rifiuti/con dentro 12 file.svg.
3. Copia la configurazione
Sempre in File editor, verifica che nel file configuration.yaml (nella cartella principale) sia presente questa riga; se manca, aggiungila all'inizio del file:
homeassistant:
packages: !include_dir_named packagesPoi crea (se non esiste già) una cartella chiamata packages nella cartella principale, ed entraci dentro. Apri il file rifiuti.yaml che trovi nella cartella packages dello zip, copiane tutto il contenuto, crea un nuovo file con lo stesso nome rifiuti.yaml dentro la cartella packages di Home Assistant e incollacelo dentro.
4. Riavvia Home Assistant
Questo passaggio è necessario solo la prima volta, per far leggere a Home Assistant i nuovi file.
- Vai su Impostazioni (icona a forma di ingranaggio, in fondo al menu laterale).
- Apri Sistema.
- In alto a destra premi i tre puntini ⋮ e scegli Riavvia Home Assistant, poi conferma.
Attendi circa un minuto: quando la pagina torna raggiungibile, la configurazione è attiva.
5. Crea la vista "Opzioni"
Questa è una seconda pagina della dashboard, dove terrai il calendario settimanale e le notifiche. Non comparirà tra le schede in alto: ci si arriva solo tramite un pulsante dedicato, che creeremo al passaggio 6.
- Apri la dashboard dove vuoi installare il progetto e premi la matita in alto a destra (Modifica dashboard).
- Premi il simbolo + accanto alle schede, in cima alla pagina.
- Nella finestra che si apre, scrivi come titolo Opzioni Rifiuti, come icona
mdi:cog, e come disposizione scegli Muratura. Salva. - Premi di nuovo i tre puntini ⋮ in alto a destra e scegli Editor di configurazione testuale.
- Nel testo, trova la vista appena creata (riconoscibile dal titolo
Opzioni Rifiutiche hai appena scritto) e sostituisci tutto il suo contenuto con questo:
title: Opzioni Rifiuti
path: rifiuti-opzioni
icon: mdi:cog
visible: false
cards:
- type: markdown
content: "[⬅️ Torna a Rifiuti](/lovelace/rifiuti)"
- type: entities
title: "Pianificazione settimanale (codici: plastica, carta, umido, indifferenziato, vetro, pannolini — separati da virgola)"
entities:
- entity: input_text.rifiuti_lunedi
name: Lunedì
- entity: input_text.rifiuti_martedi
name: Martedì
- entity: input_text.rifiuti_mercoledi
name: Mercoledì
- entity: input_text.rifiuti_giovedi
name: Giovedì
- entity: input_text.rifiuti_venerdi
name: Venerdì
- entity: input_text.rifiuti_sabato
name: Sabato
- entity: input_text.rifiuti_domenica
name: Domenica
- type: entities
title: "Canali di notifica"
entities:
- entity: input_boolean.rifiuti_notifica_app
- entity: input_boolean.rifiuti_notifica_vocale
- entity: input_boolean.rifiuti_notifica_telegram
- entity: input_datetime.rifiuti_ora_promemoria
name: "Orario promemoria (sera prima)"
- entity: input_boolean.rifiuti_promemoria_mattina_attivo
- entity: input_datetime.rifiuti_ora_promemoria_mattina
name: "Orario promemoria (mattina)"
- type: entities
title: "Destinatari notifiche"
entities:
- entity: input_text.rifiuti_notify_app_service
- entity: input_select.rifiuti_vocale_assistente
name: "Assistente vocale (Alexa o Google)"
- entity: input_text.rifiuti_notify_vocale_entity
- entity: input_text.rifiuti_notify_telegram_target
- type: button
name: "Invia notifica di prova"
icon: mdi:bell-ring
tap_action:
action: call-service
service: script.rifiuti_test_notificaPremi Salva in alto a destra, poi chiudi l'editor con la X.
6. Crea la scheda principale "Rifiuti"
Ripeti la stessa procedura del passaggio precedente per creare la scheda che mostra i secchi.
- Sempre in modifica dashboard, premi di nuovo il + accanto alle schede.
- Titolo Rifiuti, icona
mdi:trash-can, disposizione Muratura. Salva. - Apri di nuovo tre puntini ⋮ → Editor di configurazione testuale, trova questa nuova vista
Rifiutie sostituisci il suo contenuto con:
title: Rifiuti
path: rifiuti
icon: mdi:trash-can
cards:
- type: vertical-stack
cards:
- type: grid
columns: 3
square: false
cards:
- type: picture-entity
entity: binary_sensor.rifiuti_oggi_plastica
name: Plastica
show_state: false
show_name: true
state_image:
"on": /local/rifiuti/plastica_on.svg
"off": /local/rifiuti/plastica_off.svg
- type: picture-entity
entity: binary_sensor.rifiuti_oggi_carta
name: Carta
show_state: false
show_name: true
state_image:
"on": /local/rifiuti/carta_on.svg
"off": /local/rifiuti/carta_off.svg
- type: picture-entity
entity: binary_sensor.rifiuti_oggi_umido
name: Umido
show_state: false
show_name: true
state_image:
"on": /local/rifiuti/umido_on.svg
"off": /local/rifiuti/umido_off.svg
- type: picture-entity
entity: binary_sensor.rifiuti_oggi_indifferenziato
name: Indifferenziato
show_state: false
show_name: true
state_image:
"on": /local/rifiuti/indifferenziato_on.svg
"off": /local/rifiuti/indifferenziato_off.svg
- type: picture-entity
entity: binary_sensor.rifiuti_oggi_vetro
name: Vetro
show_state: false
show_name: true
state_image:
"on": /local/rifiuti/vetro_on.svg
"off": /local/rifiuti/vetro_off.svg
- type: picture-entity
entity: binary_sensor.rifiuti_oggi_pannolini
name: Pannolini
show_state: false
show_name: true
state_image:
"on": /local/rifiuti/pannolini_on.svg
"off": /local/rifiuti/pannolini_off.svg
- type: markdown
content: >
## 🗑️ Raccolta rifiuti
**Oggi ({{ now().strftime('%A') }}):** {{ state_attr('sensor.rifiuti_oggi','lista') | map('capitalize') | list | join(', ') if (state_attr('sensor.rifiuti_oggi','lista') | count) > 0 else 'nessuna raccolta' }}
**Domani:** {{ state_attr('sensor.rifiuti_domani','lista') | map('capitalize') | list | join(', ') if (state_attr('sensor.rifiuti_domani','lista') | count) > 0 else 'nessuna raccolta' }}
- type: tile
entity: sensor.rifiuti_oggi
name: Opzioni
icon: mdi:cog
color: blue
tap_action:
action: navigate
navigation_path: /lovelace/rifiuti-opzioniPremi Salva, poi Fatto in alto per uscire dalla modifica. Dovresti già vedere i sei secchi, tutti spenti (grigi): è normale, non hai ancora impostato il calendario.
7. Trova il nome del servizio di notifica del tuo telefono
Ti serve solo se vuoi ricevere il promemoria come notifica push sul telefono.
- Apri l'app Home Assistant Companion sul telefono almeno una volta, così risulta collegato.
- Sul sito, vai su Impostazioni → Dispositivi e servizi → scheda Azioni.
- Nel campo di ricerca scrivi notify e individua la voce con il nome del tuo telefono, ad esempio
notify.mobile_app_iphone_di_mario: è il nome completo che ti servirà al passaggio successivo.
8. Imposta il calendario e i destinatari
Qui non si tocca più nessun file: tutto si fa dalla scheda appena creata.
- Apri la scheda Rifiuti dalla dashboard e tocca la riga Opzioni.
- In Pianificazione settimanale, scrivi in ogni giorno uno o più codici tra
plastica,carta,umido,indifferenziato,vetro,pannolini, separati da virgola se un giorno ne prevede più di uno (es.plastica,umido). Lascia vuoto un giorno senza raccolta. - In Destinatari notifiche, incolla nel primo campo il nome trovato al passaggio 7 (es.
notify.mobile_app_iphone_di_mario). - In Canali di notifica, attiva l'interruttore notifica push (app Home Assistant).
9. Prova
Sempre nella pagina Opzioni, in fondo trovi il pulsante Invia notifica di prova: premilo e verifica che la notifica arrivi davvero sul telefono, prima di fidarti del promemoria automatico che parte da solo ogni sera alle 20:00 (orario modificabile nella stessa pagina) se il giorno dopo è prevista una raccolta.
In Canali di notifica trovi anche un secondo promemoria opzionale, disattivato di default: parte al mattino (07:30, orario anch'esso modificabile) e avvisa se oggi stesso è prevista una raccolta — utile se preferisci un secondo avviso il giorno stesso invece del solo promemoria della sera prima. Attivalo con l'interruttore Rifiuti - promemoria aggiuntivo al mattino.
Vuoi anche l'annuncio vocale o Telegram?
Sono entrambi opzionali e si attivano dalla stessa pagina Opzioni, con questi prerequisiti:
- Annuncio vocale: nel campo "dispositivo per annuncio vocale" inserisci l'entità del tuo altoparlante (es.
media_player.echo_soggiornoomedia_player.google_nest_cucina), poi scegli nel campo "Assistente vocale (Alexa o Google)" quale dei due usare — nessun file da modificare.- Google Nest/Home è l'opzione di default: basta l'integrazione nativa Google Cast, già inclusa in Home Assistant, nessuna installazione aggiuntiva.
- Alexa richiede invece l'integrazione non ufficiale Alexa Media Player (si installa tramite HACS), perché l'integrazione Alexa ufficiale non permette di far parlare i dispositivi: installala prima di selezionare "Alexa", altrimenti l'invio fallirà.
- Telegram: serve aver già collegato un bot tramite l'integrazione ufficiale Telegram Bot di Home Assistant.
Personalizzare i colori delle icone
I 12 file .svg dentro www/rifiuti sono semplice testo: aprili con un editor qualsiasi se vuoi cambiare colori o forme, senza bisogno di programmi di grafica.
