Integrare Aeotec WallMote / WallMote Quad a Home Assistant

6 minuti di lettura
SCOPI DELLA GUIDA
CONCETTI AFFRONTATI:
  • Utilizzo e configurazione software
COMPONENTI SOFTWARE UTILIZZATE:
PREREQUISITI
  • Home Assistant configurato e funzionante
  • Una rete Z-Wave già definita presso Home Assistant (spiegato a seguire)
DISPOSITIVI FISICI UTILIZZATI:
GUIDA maggiormente indicatA per:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi modifica all'impianto elettrico dev'essere effettuata da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (la presente guida ha puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere la garanzia.
Revisione guida: 1.0

Abstract

L’adozione di pulsanti touch wireless nella propria domotica personale può essere particolarmente comoda al fine di controllarne le diverse funzioni con il semplice tocco di un dito, senza tra l’altro la necessità di spaccare muri, portare alimentazioni di rete o altro.

Il WallMote della Aeotec è proprio uno di questi pratici attuatori: una volta fissata la sua base magnetica tramite un sottile biadesivo al muro di destinazione, è sufficiente avvicinarvi l’unità per far sì che essa si ancori ad essa e diventi in tutto e per tutto una superficie tattile tramite la quale comandare la domotica. L’alimentazione a batteria – ricaricabile – garantisce il funzionamento per mesi.Aeotec WallMote - In mano

Ora, trattandosi di un dispositivo Z-Wave è naturale immaginarlo integrato ad Home Assistant al fine di utilizzarlo per controllarne le entità in esso definite; a differenza di altri componenti basati di questo protocollo – i quali è sufficiente aggiungerli come nodi alla rete Z-Wave gestita da Home Assistant per vederli “sorgere” quali entità autonome immediatamente utilizzabili – l’Aeotec WallMote si differenzia per un piccolo perfezionamento nella configurazione strettamente necessario al fine di riuscire ad utilizzarne le funzioni.

Questa guida illustra tale perfezionamento, dando per assunta la presenza di una rete Z-Wave su Home Assistant; l’HUB, infatti, integra in sé la capacità di gestire i nodi di una rete Z-Wave tramite la presenza di un antenna fisica collegata sul computer su quale sia in esecuzione.

Per definire una rete Z-Wave tramite Home Assistant esistono svariate antenne (solitamente in formato dongle USB); noi consigliamo – per il semplice fatto di averlo testato con successo – l’adozione dell’antenna dongle USB Aeotec Z-Stick.

Si parte

Aggiungere il nodo alla rete Z-Wave è piuttosto semplice, ma spesso porta confusione. Chiariamo immediatamente che l’inclusione del nodo rappresentato dall’attuatore WallMote di Aoetec deve venire effettuata direttamente da Home Assistant e non in altre modalità: per farlo è sufficiente recarsi presso il pannello di gestione Z-Ware di Home Assistant (“Impostazioni” > “Z-Wave“) e selezionare “Add Secure Node” o “Add Node” in base alle modalità di inclusione previste dal componente da aggiungere:

Home Assistant - Z-Wave - Add Node

Una volta selezionata la voce d’interesse sarà sufficiente premere il piccolo pulsante posto sul retro dell’unità WallMote per permettere l’ingresso del componente sulla nostra rete Z-Wave.

Dopo pochi istanti presso la voce “Nodes” nell’elenco dei nodi dovrebbe apparire il nuovo nodo chiamato “AEON Labs ZW130 WallMote” oppure “AEON Labs ZW130 WallMote Quad” (in base al modello).

Home Assistant - Z-Wave - Aeotec WallMote Node

Segnarsi da parte il numero di nodo assegnato al componente (in questo caso “2“).
Si consiglia poi di riavviare Home Assistant.

Entità

L’inclusione del componente presso la nostra rete Z-Wave genera presso Home Assistant una serie di entità: quattro sensor e sei switch:

  • zwave.aeon_labs_zw130_wallmote
  • sensor.aeon_labs_zw_wallmote_alarm_level
  • sensor.aeon_labs_zw_wallmote_alarm_type
  • sensor.aeon_labs_zw_wallmote_power_management
  • sensor.aeon_labs_zw_wallmote_sourcenodeid
  • switch.aeon_labs_zw_wallmote_switch
  • switch.aeon_labs_zw_wallmote_switch_2
  • switch.aeon_labs_zw_wallmote_switch_3
  • switch.aeon_labs_zw_wallmote_switch_4
  • switch.aeon_labs_zw_wallmote_switch_5

Purtroppo – e da qui la necessità della presente guida – nessuna di queste entità può essere utilizzata direttamente come trigger di un’automazione come invece il nome suggerirebbe (sopratutto per quanto riguarda le entità “Switch“). La prima entità (“zwave.aeon_labs_zw130_wallmote_quad“) è quella rappresentativa dell’unità WallMote – è importante riconoscerla per utilizzarla, successivamente, nell’automazione.

Per far sì che sia possibile innescare delle azioni automatiche a fronte della pressione di uno dei due/quattro pulsanti del WallMote è necessario attuare una piccola modifica al file contenente le scene e le configurazioni dei componenti Z-Wave.

File zwcfg

Dopo aver definito una rete Z-Wave presso Home Assistat e dopo aver aggiunto uno o più nodi, nella cartella nella quale è solitamente contenuta la configurazione appariranno nuovi file:

  • zwscene.xml
  • zwcfg_*.xml

Il secondo file varia di nome in base alla propria installazione, ma contiene sempre il prefisso “zwcfg“, il che lo rende sempre facilmente distinguibile. Tale file contiene una serie di informazioni relative ai nodi Z-Wave; in questo caso andremo ad identificare quelle relative al nodo WallMote aggiungendo alcune voci che ci abiliteranno poi all’uso in automazione. Si tratta di un file scritto in linguaggio marcatore XML.

Innanzitutto per effettuare tali modifiche è necessario interrompere l’esecuzione di Home Assistant.

Con Home Assistant in stop, aprire tramite un editor di testo il file zwcfg_*.xml e identificare il blocco relativo all’attuatore WallMote. Tipicamente tale blocco comincia a grandi linee così:

 <Node id="2" name="" location="" basic="4" generic="24" specific="1" roletype="4" devicetype="7172" nodetype="0" type="Basic Wall Controller" listening="false" frequentListening="false" beaming="true" routing="true" max_baud_rate="40000" version="4" query_stage="Complete">

dove “Node id=”2″” corrisponde al numero precedentemente identificato nella fase di inclusione del componente nella propria rete Z-Wave. Il blocco contiene tutti i sottoblocchi e le chiavi di configurazione relative a tutti i nodi della propria rete Z-Wave.

Una chiave xml ulteriormente illuminante contenuta nel blocco di cui sopra è la seguente:

<Product type="2" id="82" name="ZW130 WallMote" />

A questo punto è necessario identificare, all’interno del blocco relativo al WallMote da configurare il sottoblocco “CommandClass” con id numero “91“:

<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE">

il quale si chiude, come tutti i blocchi di tipo “CommandClass“, con:

</CommandClass>

A questo punto è necessario sostituire per intero il blocco e il suo contenuto (quale che sia) con il seguente:

<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE" version="1" request_flags="5" innif="true" scenecount="0">
	<Instance index="1" />
	<Value type="int" genre="system" instance="1" index="0" label="Scene Count" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
	<Value type="int" genre="system" instance="1" index="1" label="Button One" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
	<Value type="int" genre="system" instance="1" index="2" label="Button Two" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
	<Value type="int" genre="system" instance="1" index="3" label="Button Three" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
	<Value type="int" genre="system" instance="1" index="4" label="Button Four" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
	<Value type="int" genre="system" instance="1" index="5" label="Other" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
</CommandClass>

a questo punto è necessario salvare il file e avviare Home Assistant. Ad avvio completato, verificare che il contenuto del file zwcfg_*.xml sia effettivamente quello modificato.

Automazione

A questo punto abbiamo indirettamente abilitato le seguenti “scene Z-Wave” (da non confondersi con le “scene” di Home Assistant) utilizzabili tramite automazione:

Azionescene_idscene_data
Bottone uno singola pressione10
Bottone uno mantenimento pressione12
Bottone uno rilascio11
Bottone due singola pressione20
Bottone due mantenimento pressione22
Bottone due rilascio21
Bottone tre singola pressione *30
Bottone tre mantenimento pressione *32
Bottone tre rilascio *31
Bottone quattro singola pressione *40
Bottone quattro mantenimento pressione *42
Bottone quattro rilascio *41

* se presente.

Poniamo, a mo’ d’esempio, di voler definire un’automazione che si inneschi alla pressione del pulsante 2. e che accenda/spenga una “Light” chiamata “light.ingresso“.

Il codice sarà il seguente:

automation:
- alias: Wallmote pressione pulsante 2
  trigger:
    platform: event
    event_type: zwave.scene_activated
    event_data:
      entity_id: zwave.aeon_labs_zw130_wallmote
      scene_data: 0
      scene_id: 2
  condition: []
  action:
  - service: light.toggle
    entity_id: light.ingresso

Come facile intuire, è necessario indicare la corretta entità (in questo caso “zwave.aeon_labs_zw130_wallmote“) della quale intercettare la scena Z-Wave (campi “scene_data” e “scene_id“) al fine di usarla come trigger dell’automazione. Ovviamente la tabella di cui sopra è necessaria in consultazione per definire la corretta coppia “scene_data” e “scene_id” da utilizzare in automazione.

È quindi possibile/necessario definire tante automazioni quanti sono i comportamenti attesi da gestire tramite WallMote (fino a 6 nel caso del modello a due pulsanti e 12 nel caso del modello a quattro).

Ovviamente nel blocco action, come sempre nelle automazioni, sarà possibile indicare qualsivoglia servizio collegato a una o più entità da controllare tramite il nostro WallMote / WallMote Quad.


Home Assistant Official LogoATTENZIONE: 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.


Please comment below