community italiana di domotica personale
 
HOT – Aggiornamento 0.113 per Home Assistant Core

HOT – Aggiornamento 0.113 per Home Assistant Core

Home Assistant Official Logo

Il team di sviluppo di Home Assistant ha rilasciato un nuovo aggiornamento per il noto HUB software gratuito per la domotica personale, il quale si porta alla versione 0.113.x.

Ricordiamo a tutti, a prescindere, l’importanza di eseguire SEMPRE questi aggiornamenti.

Eventuali problemi con questo aggiornamento – segnalati dalla community internazionale – sono disponibili qui. Ovviamente, ci sono sempre anche il nostro FORUM e la nostra CHAT.

Automazioni (e script)

Cardine di questa nuova release dell’HUB è una profonda revisione degli aspetti legati ad automazioni e script.

Innanzitutto sono stati corretti alcuni difetti, in primis sulla gestione dei delay. Per esempio un’automazione di questo tipo:

automation:
  - alias: "esempio"
    trigger:
      - platform: state
        entity_id: binary_sensor.button
        to: "on"
    action:
      - service: light.turn_on
        entity_id: light.bulb
      - delay:
          seconds: 10
      - service: light.turn_off
        entity_id: light.bulb

la quale provvede ad accendere una luce per poi spegnerla dopo 10 secondi, malfunzionava in caso si presentasse due volte il trigger di innesco entro i 10 secondi di delay previsti in action. Condizioni di questo tipo non si verificheranno più.

Nuove modalità di esecuzione

Con questa nuova versione, Home Assistant introduce nuove modalità di esecuzione per le automazioni proprio in ottica di gestione del bug sopra esplicato. In sostanza ora si potrà istruire l’automazione rispetto a come comportarsi nel caso si presenti nuovamente il trigger d’innesco nella situazione in cui l’automazione sia già stata innescata precedentemente e sia ancora in esecuzione

Nasce quindi il parametro mode, il quale prevede le seguenti possibili impostazioni:

single Se si presenta il trigger prima della fine dell’esecuzione, ignoralo
restart Se si presenta il trigger prima della fine dell’esecuzione, interrompi l’esecuzione e riavvia l’automazione
queued Se si presenta il trigger prima della fine dell’esecuzione, portala a compimento e poi riavvia l’automazione
parallel Se si presenta il trigger prima della fine dell’esecuzione, esegui nuovamente l’automazione, in parallelo

Ecco queste varie modalità spiegate graficamente:

Per le modalità queued e parallel è possibile indicare anche il numero massimo di esecuzioni accodate o parallelizzate tramite il parametro max, il quale se non indicato è impostato di default a 10.

Si tratta di una grande novità, che consentirà non solo di gestire situazioni non volute, ma anche di configurare automazioni ancora più efficaci.

Repeat

Altra grande novità la possibilità di ripetere porzioni di automazioni o script in tre diverse modalità:

Counted repeat Ripetizione a numero chiuso
While loop Ripetizione con proseguimento subordinato a una condizione specifica
Repeat until Ripetizione con uscita subordinata a una condizione specifica

Facciamo un esempio. Scriviamo uno script che spammi un medesimo messaggio per dieci volte al proprio smartphone:

script:
- alias: Invia notifica spam al telefono
  repeat:
    count: 10
    sequence:
      - service: notify.marco
        data:
          message: Ding dong! C'è qualcuno alla porta!

e così via.

Chooser

Capita spesso che si abbiano più automazioni che controllino le medesime entità. Da questa nuova versione è possibile definire singole automazioni dotate di selettore, ovvero che eseguano porzioni di blocco action in base alle condizioni configurate.

Si prenda ad esempio questa automazione:

automation:
  - alias: "Esempio"
    description: "Gestione della luce"
    trigger:
      - platform: state
        entity_id:
          - binary_sensor.button1
          - binary_sensor.button2
          - binary_sensor.button3
    action:
      - choose:
        - conditions:
            - condition: state
              entity_id: binary_sensor.button1
              state: "on"
          sequence:
            - service: light.turn_on
              entity_id: light.bulb
        - conditions:
            - condition: state
              entity_id: binary_sensor.button2
              state: "on"
          sequence:
            - service: light.turn_off
              entity_id: light.bulb
        default:
          - service: notify.marco
            data:
              message: "E' stato premuto il pulsante 3"

In pratica l’automazione si innesca con la pressione di uno dei tre pulsanti indicati:

  • binary_sensor.button1
  • binary_sensor.button2
  • binary_sensor.button3

dopodiché nel blocco action avviene la magia: con la nuova sintassi, se viene premuto il pulsante 1, la luce viene accesa; col 2, viene spenta mentre nel caso del tre, dato che non è esplicitamente gestito, viene eseguito il sottoblocco default, ovvero quello che invia un messaggio.

Nuove icone

Come è noto, Home Assistant utilizza le icone di materialdesignicons.com, un sito che ci consente, tramite la sua “vetrina”, di scegliere le icone più appropriate per le nostre personalizzazioni.

Molte nuove icone sono state aggiunte, alcune invece rimosse. Se notate sul vostro frontend dei “buchi”, sapete perché. Volendo potete risolvere sostituendole con nuove icone o, se proprio non potete fare a meno dell’icona precedente, implementare questa integrazione custom per ripristinarle.

Varie, ma importanti

  • viste le considerazione fatte sopra su automazioni e script, ovviamente anche l’interfaccia grafica Lovelace fatta per modificarli/definirne di nuovi è stata aggiornata;
  • velocità! Questa nuova versione porta con se dei ragguardevoli migloiramenti in termini di prestazioni, in alcuni punti addirittura del 40%;
  • i gruppi di entità derivanti dall’integrazione Philips HUE ora possono essere controllati direttamente dal pannello di integrazione;
  • OpenZWave continua a crescere, e presto sostituirà l’attuare l’integrazione Z-Wave (alleluia).

Integrazioni

Nessuna grandissima integrazione di rilievo, giusto qualcosa.
Due invece le integrazioni già esistenti che guadagnano la configurabilità via interfaccia grafica e abbandonano quella manuale:

Breaking changes

Una lista di modifiche che potrebbero eventualmente causare problemi:

  • versione Python: per chi usa un’installazione Home Assistant Core, la versione minima di Python da oggi è la 3.7.1. In caso, provvedete all’aggiornamento (qui una guida esemplificativa per Raspberry Pi OS);
  • Philips HUE: attenzione, l’integrazione manuale via codice YAML sul file di configurazione è da oggi deprecata. Dalle prossime versioni verrà del tutto rimossa in favore della configurazione via interfaccia grafica

e altro ancora. Date una scorsa.

Home Assistant 0.113

 

> Tutti i dettagli di questo rilascio sono disponibili qui.

Aggiornamento

Tutte le modalità di aggiornamento per Home Assistant Core sono riassunte su questa scheda ad hoc:

Utilità: come aggiornare Home Assistant

⚠️ Se di Home Assistant ne sai poco ma sei interessato a capirne di più, ti suggeriamo di partire da qui.

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.