Opublikowany w home-assistant, SmartHouse, z-wave, z-wave

Home Assistant – konfiguracja

O. Usunięcie urządzenia z sieci z-wave ZWP 10 (pilot) i dodanie do Z-Wave JS w HA

  1. Usuniecie:
    • Wcisnąć IN/EX 2 razy
    • Nacisnać przycisk i przytrzymac P (gorny) na rolecie
  2. Dodanie:
    • Prawy dolny róg: wybieram: manage nodes
    • Inclusion -> next
    • Nadaje nazwe w konwencji: Blind_nazwaPomieszczenia_nazwa_rolety (jesli trzeba)
    • Next
    • Default – Next
    • Wciskam P na rolecie

1. Developer Tools

W sekcji TEMPLATE mozna przecwiczyc dzialanie ‚Templating’, np:

2. Setting -> Automations -> Script

  1. Nazwa jak nazwa urzadzenia + „_nazwaAkcji”, np: Blind_stairs_left_up
  2. Sequence -> Add Action: Wait for a trigger
  3. Add Trigger: MQTT:
    • When an MQTT message has been received:
    • Topic = cmnd/GROUND_FLOOR/STAIRCASE/BLIND_STAIRS_RIGHT/MOVE_DIRECTION
  4. Add Trigger: template
    • value_template: „{{ trigger.payload.split(‚:’)[0] == ‚UP’}}”
  5. Add Action: Device
    • Device: Blind_stairs_right
    • Action: Open Blind_stairs_right
  6. Add Action: Wait for time to pass (delay):
    • Add anything in seconds, then switch to ‚Edit in YAML’, and change seconds to: "{{int(trigger.payload.split(':')[1])/1000}}"
  7. Add Action: Device
    • Device: Blind_stairs_right
    • Action: Stop Blind_stairs_right
  8. Na koncu dodalem: Add Action: Repeat
    • Until: Template 1=1
  9. Z tym że ta akacja dotyczy tylko ponizszej akcji, w zwiazku z tym przenioslem ja na sama górę i przerobilem w YAML sekwencje Repeat tak, żeby dotyczyła całego skryptu, czyli calosc wyglada:
alias: Blind_stairs_right_up
sequence:
  - repeat:
      until:
        - condition: template
          value_template: 1=1
      sequence:
        - wait_for_trigger:
            - platform: mqtt
              topic: cmnd/GROUND_FLOOR/STAIRCASE/BLIND_STAIRS_RIGHT/MOVE_DIRECTION
            - platform: template
              value_template: "{{ trigger.payload.split(':')[0] == 'UP'}}"
          continue_on_timeout: false
        - device_id: a14fb99ff2ea5b8d3991516d52882adc
          domain: cover
          entity_id: f1a57b5a00c764b4191a9c1fccdb39e7
          type: open
        - delay:
            hours: 0
            minutes: 0
            seconds: "{{int(trigger.payload.split(':')[1])/1000}}"
            milliseconds: 0
        - device_id: a14fb99ff2ea5b8d3991516d52882adc
          domain: cover
          entity_id: f1a57b5a00c764b4191a9c1fccdb39e7
          type: stop
mode: single
icon: mdi:roller-shade

3. Settings -> Automations

  1. Create AUTOMATION (name: Blind_tymek_right_up)
    • Triggers: MQTT
      • When an MQTT message has been received: cmnd/SECOND_FLOOR/ROOM_TYMEK/BLIND_RIGHT/MOVE_DIRECTION
    • Conditions:
      • condition: template
      • value_template: „{{ trigger.payload.split(\”:\”)[0] == ‚UP’}}”
    • Actions:
      • Open Blind_tymek_right
        • Device: Blind_tymek_right
        • Action: Open Blind_tymek_right
      • Delay for: … seconds: „{{int(trigger.payload.split(‚:’)[1])/1000}}” …
      • Stop Blind_tymek_right
        • Device: Blind_tymek_right
        • Action: Stop Blind_tymek_right

3.1 Zatrzymanie automatyzacji

Potrzebne jest kiedy roleta jest w trakcie opuszczania i ktos nacisnie jej podnoszenie.

Wtedy przed uruchomeniem nowej automatyzacji, musze (w ramach nowej) zatrzymac stara automatyzacje.

Sa jeszcze 2 sprawy: zatrzymanie automatyzacji powoduje ze obliczona pozycja rolety nie zostala osiagnieta i kolejny wyznaczony czas (czy otwarcia czy zamkniecia) jest nieprawidlowy. Mozna albo zliczac czas jaki trwal do momentu przerwania akcji albo blokowac mozliwosc przerwania akcji (to drugie raczej slabe).

https://community.home-assistant.io/t/once-automation-is-triggered-can-it-be-terminated/213382/11

:

 

Opublikowany w home-assistant, SmartHouse, z-wave, z-wave

Razberry, z-wave

Dokumentacja:

https://z-wave.me/files/manual/z-way/#

Instalacja na raspbian:

  1. Ściągnąć i zainstalować Raspbian
  2. Podłączyć się na monitorze i włączyć ssh (https://www.raspberrypi.org/documentation/remote-access/ssh/): sudo raspi-config, Interfacing Options
  3. Instalacja Z-Way: wget -q -O – https://razberry.z-wave.me/install | sudo bash  lub sudo wget -q -O – https://storage.z-wave.me/RaspbianInstall | sudo bash
  4. Wystartowanie serwera: /etc/init.d/z-way-server start
  5. Może być potrzeba zatrzymania bluetooth: /etc/init.d/bluetooth stop
  6. Dostępny pod adresem http://192.168.88.13:8083, login: admin, ID:  126146

1

2

3

5

7. Trzeba najpierw usunać rolete z pilota

8. Po wcisnieciu Start, trzeba pobiec do rolety i przytrzymać P

Nowa procedura

  1. Wchodze w expert mode: IP:8083/expert
  2. Na zakladce Network wciskam Start Controler Change, jednoczesnie na pilocie musze wcisnac jeden raz przycisk IN/EX (nad bateriami w srodku). Na pilocie wyswietli sie 1 i 4, a potem 2 i 3. Na stronie bede mial jak nizej, gdzie wciskam just proceed.

3. Po tym jak jestem juz w sieci widze wszystkie urzadzenia, tyle ze chyba nie do konca dzialaja, trzeba najpierw zrobic w expert mode (configuration) ‚force interview‚ (trzeba czasami probowac kilka razy i nawet jak sa wskazywane jako offline):

4. Co powoduje ze w widoku podstawowym urzadzenie jest juz wyboldowane (albo i nie..):

5. Moge teraz z expert sterowac komendami: off – zamyka, on – otwiera:

Dostęp do ap

  1. Dostępne pod adresem: http://192.168.1.108:8083/ZAutomation/api/v1/devices
  2. jakis przyklad uzycia:
  3. https://forum.z-wave.me/viewtopic.php?t=26137
import json
import requests

topLevelUrl = 'http://127.0.0.1:8083'
DevicesUrl= topLevelUrl +'/ZAutomation/api/v1/devices'
LoginUrl = topLevelUrl + '/ZAutomation/api/v1/login'
username = 'admin'
password = 'password'
LoginHeader = {'User-Agent': 'Mozilla/5.0', 'Content-Type': 'application/json'}
Formlogin = '{"form": true, "login": "'+username+'", "password": "'+password+'", "keepme": false, "default_ui": 1}'

session = requests.Session()
session.post(LoginUrl,headers=LoginHeader, data=Formlogin)

response = session.get(DevicesUrl)
#html = response.text
#print html
parsed_json = response.json()
print parsed_json

Zmiana hardware

Coś ten z-wave.me slabo dziala z Fakro.. chyba trzeba na cos zmienic..

Może coś z listy wspolpracującej z Home Assistant:

https://www.home-assistant.io/docs/z-wave/controllers/#supported-z-wave-usb-sticks–hardware-modules

Może to: Aeotec https://inteligentnydom.co/bezpieczenstwo/centrale-bezpieczenstwo/centrala-adapter-z-bateria-aeotec-z-stick-gen5-usb-z-wave/

Chyba się zdecyduję jednak na 7mą generację z-stick, tutaj instrukcja integracji z homeassistant:

https://aeotec.freshdesk.com/support/solutions/articles/6000246295-setup-home-assistant-with-z-stick-7-and-z-wavejs-ui

Instalacja Z-Stick Gen5+

Ostatecznie zdecydowałem się na aeotec z-stick gen5+.

Dla całości używa instrukcji: https://www.smarthome.com.au/home-assistant-z-wave-guide/

Instalacja HomeAssistant

Instalacja zgodnie z : https://www.smarthome.com.au/home-assistant-setup-guide/

  1. Sciagam https://www.balena.io/etcher#download-etcher
  2. Instaluje (karta minimum 32GB! na mniejszej sie wywalalo) na karcie obraz url (sciezka do wersji: https://github.com/home-assistant/operating-system/releases): https://github.com/home-assistant/operating-system/releases/download/9.5/haos_rpi3-9.5.img.xz
  3. Otwieram: http://192.168.1.108:8123/

Może jeszcze ta strona być pomocna:

https://zwave-js.github.io/zwave-js-ui/#/

I ta:

https://aeotec.freshdesk.com/support/solutions/articles/6000246297-setup-home-assistant-with-z-stick-gen5-

Po skończeniu konfiguracji i zalogowaniu do home-assistant:

  1. Instaluję Z-Wave JS UI:
    • Settings -> Add-ons
    • Wyszukuje: zwave
    • Wybieram Z-Wave JS UI
    • Klikam: Install
    • Czekam z 5 minut
    • Przełączam: Show in sidebar
    • Klikam: start
  2. Konfiguracja Z-Wave JS UI:
    • Klikam (trzeba chwile poczekac inaczej: 502 bad gateway): Open Web UI
    • Settings
    • Z-wave

Zeby skonfigurowac integracje z HA, musialem wylaczyc MQTT:

Dopiero wtedy dziala:

  1. Go to the Settings panel and click „Devices & Services”.
  2. In the bottom right, click „+ Add Integration”.
  3. Select the „Z-Wave” integration from the list.
  4. A dialog box will show, asking to use the add-on:
    • UNCHECK that box, it will install the official add-on.
    • Again, the official add-on is recommended, so…
  5. In the next dialog it will ask for the server. Enter: ws://a0d7b954-zwavejs2mqtt:3000
  6. Confirm and done!

Konfiguracja MQTT w HomeAssistant

https://www.home-assistant.io/integrations/mqtt/

  1. Ustawienia -> Urządzenia oraz usługi -> Ddaj integracje
  2. Wybieramy czyste MQTT
  3. Konfiguracja bez zmian (podaje tylko IP mosquitto)

MQTT w Node-Red

W sumie to powyższe chyba nie jest potrzebne, poniewaz obsługę MQTT zapewnia Node-Red.

  1. Wpisuję mqtt w wyszukiwaniu i wybieram mqtt-in
  2. Konfiguruję serwer MQTT naciskając:
  3. Topic dla rolet na górze, przykładowy dla Tymka: cmnd/SECOND_FLOOR/ROOM_TYMEK/BLIND_RIGHT/MOVE_DIRECTION