HOT – Aggiornamento 0.113 per Home Assistant Core

5 minuti di lettura

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 Raspbian);
  • 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.

UPDATE

Procedura DI UPDATE Windows

Il comando (da eseguire da prompt dei comandi) è il seguente:

pip3 install --upgrade homeassistant

In caso si stia eseguendo Python in ambiente virtuale, i comandi sono i seguenti:

cd homeassistant
Scriptsactivate.bat
py -m pip install --upgrade homeassistant

Procedura DI UPDATE Linux/Raspberry

I comandi per l’update sono:

sudo systemctl stop home-assistant@homeassistant
sudo -u homeassistant -H -s
source /srv/homeassistant/bin/activate
pip3 install --upgrade homeassistant
exit
sudo systemctl start home-assistant@homeassistant

N.b. In caso di problemi insormontabili (ma non siate frettolosi nel giudicarli tali), è sempre possibile effettuare un rollback con i comandi:

sudo systemctl stop home-assistant@homeassistant
sudo -u homeassistant -H -s
source /srv/homeassistant/bin/activate
pip3 install homeassistant==0.XX.X
exit
sudo systemctl start home-assistant@homeassistant

avendo cura di sostituire, nel comando:

pip3 install homeassistant==0.XX.X

le “X” con la versione precedente che funzionava (eg. 0.104.3).

Procedura di UPDATE Mac

Su MAC (tramite terminale) il comando è il seguente:

pip3 install --upgrade homeassistant
Procedura di UPDATE HASSIO

Hassio si aggiorna nelle solite, semplici modalità.

Prima di procedere si consiglia, come sempre, di effettuare un backup della propria configurazione e, comunque,  di utilizzare “Check Home Assistant configuration” per verificare in anticipo che la configurazione in uso sia corretta rispetto alla nuova versione di Home Assistant.

Per effettuare l’aggiornamento, accedere presso il menu “Supervisor” e, presso “DASHBOARD“, cliccare su “Update” presso il box che segnala la disponibilità di aggiornamento. Prima di procedere si consiglia, come sempre, di effettuare un backup della propria configurazione.

HASSIO update


Home Assistant Official Logo ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica a Home Assistant, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.


Telegram News Channel