Menu główne

Natywna integracja z Home Assistant (komponent)

Zaczęty przez admin, Listopad 14, 2019, 17:14:25

Poprzedni wątek - Następny wątek

admin

#165
A co do ściągania pliku loga. To nie musisz się bawić w wyciąganie karty SD. Z tego co rozumie, to masz hass.io na malinie. A jeśli tak to masz dostęp do add-onów. Tak się składa, że zacząłem testować nieoficjalny pakiet hass.io na Synology i też teraz eksploruję dostępne addony. HA nie przestaje mnie zadziwiać i wprawiać w podziw co do jego architektury i rizwiązań. Addony są rozwiązane na prawdę niesamowicie fajnie. W żargonie możnaby rzecz, że jest to seamless integration. Wszystko działa w ramach wirtualnej sieci, autoryzują się centralnie w HA. Nie trzeba żadnego reverse proxy żeby móc oglądać zawartość serwowaną przez serwer web addona w HA jako karta rozszerzenia. Mnóstwo rzeczy, które trzeba by było rzeźbnić, aby osiągnąć jedynie przybliżony efekt - odpada. Wiem coś o tym, bo próbowałem dorabiać te addony ręcznie bez hass.io. Zabawy i kombinacji co niemiara. Ale z tych żmudnych i wkurzających a nie ciekawych i rozwijających. HA to na prawdę super system. Techniczni docenią.

Ale do sedna - jeśli masz hass.io to skorzystaj z genialnego addona: http://homeassistant.local:8123/hassio/addon/core_configurator (ten adres powinien zadziałać w twojej sieci lokalnej) o nazwie "File editor". Dzięki niemu możesz w prosty sposób edytować pliki konfiguracyjne HA wprost z przeglądarki. Możesz też dowolny plik ściągnąć na dysk. I polecam ci właśnie wyciągać loga w ten sposób - będzie chyba najprościej.
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

wswsws

Zapytam tylko czy to odwrócenie stanu rolet nie zmieni nic w scenach, kiedy roleta ma się przymknąć np na 30%?
Nie no karty nie wyciągam. Dostęp do karty mam chyba jako dysk sieciowy - skrót w mój komputer - lokalizacja sieciowa. Za chwile wgrywam.

admin

Cytat: wswsws w Kwiecień 03, 2020, 19:54:51
Zapytam tylko czy to odwrócenie stanu rolet nie zmieni nic w scenach, kiedy roleta ma się przymknąć np na 30%?
Nie no karty nie wyciągam. Dostęp do karty mam chyba jako dysk sieciowy - skrót w mój komputer - lokalizacja sieciowa. Za chwile wgrywam.
Owszem zmieni się. Tak jak pisałem wcześniej - to jest tzw. breaking change. Trzeba przekalkulować nowe położenie suwaka w scenach i automatyzacjach na zasadzie: nowa_pozycja = 100 - stara_pozycja.
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

admin

A no i nie zapomnij o zmianie timeout-u na 15 bo znowu znikną ci encje w HA :)
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

wswsws

Ok chyba działa poprawnie. Oczywiście w scenach zmiana nastąpiła - ale za chwile to poustawiam i zobaczymy.

admin

#170
Witajcie zintegrowani z HA! ;)
Tak jak wspominałem w ostatnim czasie na forum - wypuszczam kolejną wersję integracji zawierającą, to co już w pierwsze 2 dni wersji 1.0 pojawiło się w zapowiedziach - rozszerzone mapowanie urządzeń ROP/ROP na encje typu light zamiast switch oraz zmiana działania w sterowaniu roletami.
To także pierwsza wersja integracji, która zawiera tzw. breaking changes (na pewno znane wam jeśli czytacie Release Notes kolejnych wydań Home Assistant'a). Oznacza to, że w pewnych obszarach zmieni się zachowanie działania integracji wynikające z nowości. Na szczęście dla leniwych lub tych, którzy po prostu będą chcieli, aby wszystko działało po staremu można będzie dostosować te nowości pod siebie zachowując dotychczasową logikę sterowania i mapowania. Szczegóły poniżej

Nowe funkcje:
Wprowadziłem obsługę opcji konfiguracyjnych (dodatkowe wpisy w pliku configuration.yaml) w celu zwiększenia elastyczności dla użytkowników końcowych i wpłynięcia na zachowanie integracji w HA. Opcje dotyczą poszczególnych platform (np. cover, light etc). Obsługiwane są następujące opcje:
  * cover: sterowanie odwrócone (opcja: inverted_control; domyślnie: False) - powoduje, że suwak pozycji cover działa tak jak w aplikacji Exta Life. 0 = roleta schowana, 100 = roleta całkowicie opuszczona (okno całkowicie zakryte). Ustawienie to pozwala zachować dotychczasową logikę działania - jak w wersji 1.0. Efekty uboczne: przyciski GUI do otwierania / zamykania HA są niepoprawnie wyszarzone w GUI HA w skrajnych położeniach (0 i 100), ponieważ GUI HA oczekuje, że roleta w pełni schowana to pozycja = 100, a nie 0. Generalnie te efekty uboczne to nic nowego - na pewno je znacie, jeśli macie rolety Exta Life zintegrowane z HA. Suwak pozycji rolety działał do tej pory w HA tak samo jak w aplikacji Exta Life. Jest to wygodne, ale HA niepoprawnie wyszarza w GUI przyciski. Dlatego postanowiłem, że od tej wersji domyślnie pozycja = 100 to będzie roleta podniesiona, a zmienić to będzie można właśnie ustawieniem inverted_control

  * light: rozszerzyłem listę ikon dla urządzeń ROP / ROM (opcja: icons_list; domyślnie: 8,9,13,14,15,16,17), które spowodują, że te urządzenia będą reprezentowane w HA jako światło (light) a nie przełącznik (switch). Nowe numery ikon to: 8,9,14,16,17. Znaczenie wszystkich numerków można sprawdzić na naszej wiki pod  tym linkiem
Jeśli komuś to nowe mapowanie nie odpowiada i chce zostawić swoje ROP/ROM jako switch w HA - musi dodać opcje konfiguracyjne i tam wylistować jakie ikony mają powodować mapowanie ROP/ROM na światło w HA. Możliwa jest także pusta lista: [], która spowoduje, że żaden ROP/ROP nie zmapuje się na light.

Przykładowa konfiguracja w pliku configuration.yaml z nowymi opcjami, która pozwoli zachować dotychczasową logikę dla rolet i mapowania świateł z wersji 1.0:
extalife:
  user: root
  password: mojemegahaslo
  options:
    cover:
      inverted_control: True
    light:
      icons_list:
      - 13
      - 15

Cała sekcja 'options' jest opcjonalna i nie trzeba jej dopisywać w pliku configuration.yaml. Ci, którzy zdecydują się na nowe zasady nie muszą nic robić - opcje same ustawią się na domyślne wartości tak ja opisywałem.

Breaking changes:
* Platforma `cover` działa teraz domyślnie zgodnie z modelem abstrakcji Home Assistant, gdzie pozycja 100 oznacza, że ​​roleta jest całkowicie schowana (okno nie jest zakryte). Jest to breaking change, ponieważ wszystkie sceny, skrypty i automatyzacje, które używają suwaka położenia rolety, będą musiały zostać zmienione i wartości dla suwaka przeliczone na nowo. Nowa pozycja powinna być obliczona jako: nowa_wartość = 100 - stara_wartość.
Znaczenie przycisków GUI góra / dół (otwieranie / zamykanie) pozostaje takie samo. To nowe zachowanie można zastąpić, ustawiając opcję ,,inverted_control: True" w opcjach integracji dla platformy ,,cover"

* Domyślnie więcej ikon urządzenia ROP / ROM (przełącznik) będzie miało wpływ na mapowanie tych urządzeń jako świateł w HA zamiast przełączników. ROP/ROM z ikonami 8,9,13,14,15,16,17 zostaną przy starcie HA z wersją integracji 1.1 zmapowane na light a nie switch. Wszystkie sceny, skrypty, automatyzacje i układ GUI będą wymagały zmian i dostosowania. To zachowanie może być również zastąpione przez opcje integracji, ustawiając `icons_list` jedynie na na 13 i 15 platformy `light`.

Poprawki:
* Obsługa błędu podczas wykrywania adresu IP kontrolera, gdy nie jest podany w konfiguracji. W rzadkich przypadkach mogło się zdarzyć, że ten błąd się pojawiał (w zasadzie tylko gdy pracowałem nad integracją startując ją na nowo co chwila i testując ją) i powodował błąd ładowania całej integracji co skutkowały tym, że w HA nie pojawiały się żadne encje z Exta Life

* zwiększony domyślny limit czasu wykonywania komend z 5 do 15 sekund. Zapobiega błędom w inicjalizacji integracji podczas startu HA w dużych instalacjach, w których kontroler EFC-01 potrzebuje dużo więcej czasu na odczytanie stanu wszystkich odbiorników. Przy dużych instalacjach takich jak u kolegi @wswsws domyślna wartość 5 sekund nie wystarczała i kontroler w tym czasie nie zdążył odpytać wszystkich urządzeń i skutek był taki, że encje odbiorników nie pokazywały się w HA. Potestowałem to i sądzę, że zwiększenie timeout'u nie będzie miało negatywnych skutków ani dla integracji ani dla HA

Do pobrania z: https://github.com/dgtal1/extalife_custom_component/releases/tag/1.1

Jak zawsze feedback mile widziany! :)
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

SebiCo

Zainstalowane - u mnie wszystko wydaje się działać ok  :D

admin

Cytat: SebiCo w Kwiecień 04, 2020, 22:53:22
Zainstalowane - u mnie wszystko wydaje się działać ok  :D
Niezawodny kolega SebiCo :) Dzięki za info. Liczę na to, że równie ochoczo dasz feedback do kolejnej wersji. Tam dopiero będzie co testować :)
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

SebiCo

Spoko, jest troszkę więcej czasu to można testować ;)

admin

Cytat: SebiCo w Kwiecień 05, 2020, 13:05:53
Spoko, jest troszkę więcej czasu to można testować ;)
Ale to jeszcze trochę trzeba będzie poczekać, choć mam wrażenie, że szybko się z tej masowej kwarantanny nie uwolnimy. Oczywiście udostępnię dopiero taką wersję, która będzie działała stabilnie, i którą sam trochę najpierw potestuję, żeby można było spokojnie używać jej na codzień w ramach testów. Ale na to trzeba jeszcze jednak trochę poczekać, chociaż moim moim zdaniem warto :)
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

wswsws

U mnie również działa poprawnie. Pozdrawiam

Cezary.K

Cytat: admin w Luty 10, 2020, 11:11:11
Tak możnaby to zrobić, ale znowu da o sobie znać wada Exta Life: żaden odbiornik nie powiadamia kontrolera o swojej zmianie stanu przy sterowaniu lokalnymi łącznikami. W rezultacie HA dostanie informację o zmianie przy najbliższym pollingu stanu odbiorników Exta Life czyli domyślnie max po 5 minutach. Jeśli komuś to nie przeszkadza to ok, ale sądzę, że w praktyce jednak będzie uciążliwe.

Wpadł mi do głowy jednak pewien pomysł. Zamel zmieniając sposób komunikowania się odbiorników systemu z dwukierunkowego na pseudo-dwukierunkowy (odczyt stanu tylko na żądanie kontrolera) w sofcie 0.9.5 z kwietnia 2018 roku poprawił stabilność systemu, ale wylał przy tym dziecko z kąpielą. I sterowanie lokalne - jakże popularne i użyteczne - nie pozwala na natychmiastowe monitorowanie stanu w aplikacji lub HA. Pomysł polega na tym, aby Zamel wprowadził we wszystkich odbiornikach natychmiastowe powiadamianie kontrolera o zmianie stanu uaktywniane za pomocą konfiguracji z poziomu aplikacji. Tym sposobem to użytkownik decydowałby, które klocki mają nadawać od razu. To zdecydowanie zwiększy komfort używania oraz pozwoli na realizowanie kolejnych scenariuszy integracyjnych taki jak Twój pomysł z wykorzystaniem odbiornika jako triggera.
Chyba zapodam taki feature-request na oficjalnym forum.
Obecnie ciepię z powodu braku mobilnych przycisków dla sterowania odbiornikami spoza ekosystemu Exta Life. Mam wolne RNK i kombinuję jak je wykorzystać w w HA (w moim przypadku Jolka). Czy może pojawiły się jakieś nowe rozwiązania dla tych nadajników. A może jest dla nich alternatywa? Do zastosowania w HA bez większych kosztów.
Elementy systemu, których używam: Bramka AIS DEV3 "Jolka" + pilot+aplikacja WearOS, 32 urządzenia Exta Life z EFC-01, Mi-flora, Sonoff, ESP8266, ESP32 (ESPHome, Tasmota) Zigbee2mqtt, kamery IP, inteligentny głośnik w oparciu o AIS DEV1, urządzenia SIP.

Cezary.K

Cytat: onufr w Luty 10, 2020, 08:30:42
No właśnie mam to samo, już prawie nabyłem dodatkowe ROPy w celu przerobienia ich na własne moduły ale estetycznie odstraszyło mnie posiadanie kolejnych "przedłużaczy" czy dziwnych puszek walających się po podłodze czy pod szafkami - akurat w miejscu gdzie mam lampy, nie mam gdzie ich schować a na przedłużacze ogólnie jestem uczulony ;)
Co do alternatywy to widzę że jest tego pełno, chciałbym jednak żeby to było spójne, przynajmniej żeby działało na jednych kneflach i nie wymagało sięgania po telefon czy szukania pilotów - stąd pomysł wykorzystania stanu włącznika w HA, nie doczytałem jednaj wcześniej że takiej opcji Zamel nie przewidział.
Zostaje czekanie na inteligentne gniazdko od Zamela lub pomysł, który wpadł mi podczas pisania tej odpowiedzi :)
Wprawdzie kosztowo podniesie to wartość projektu ok 2x ale będzie spójne, jako trigger dla gniazdek od majfrenda można wykorzystać np odbiornik SLR-21 - lub jakikolwiek inny dla którego stosunek ceny do ilości kanałów byłby korzystniejszy;) Parujemy sobie fizyczne knefle z SLR-em (wrzuconym gdziekolwiek) a zmianą stanu na jego wyjściu wyzwalamy w HA włączenie estetycznego gniazdka z Ali...
Przy czterokanałowym odbiorniku daje to nam ~80cebulionów za gniazdko zamiast 40 ale pewnie i tak będzie to taniej niż za mityczne gniazdko od przyjaciół z Pszczyny:)
Pewnie ktoś wpadł na to przede mną, pytanie zatem czy i jak się sprawdza takie rozwiązanie ;)
onufr - zainspirowałeś mnie. W mojej instalacji jest parę wolnych kanałów w odbiornikach. Jako tigger`y w HA były by dobre do automatyzacji. Tylko jak zmusić kontroler do odpytania ich stanów? Ale mam inny pomysł. Może podkraść mu fakt odbioru sygnału z radiolinii. Wysterować nim moduł ESP8266 (czy inny), który uruchomił by skrypt w HA do odpytania odbiorników poza ustalonym pollingiem. W sumie większość z nas ma już rozbebeszony EFC. Może kolega Gadułowaty podpowiedział by w którym miejscu sprzętowo można by podebrać sygnał. Admin - jak, to widzisz od strony programowej integracji z HA?
Elementy systemu, których używam: Bramka AIS DEV3 "Jolka" + pilot+aplikacja WearOS, 32 urządzenia Exta Life z EFC-01, Mi-flora, Sonoff, ESP8266, ESP32 (ESPHome, Tasmota) Zigbee2mqtt, kamery IP, inteligentny głośnik w oparciu o AIS DEV1, urządzenia SIP.

admin

#178
Cytat: Cezary.K w Kwiecień 21, 2020, 21:36:04
Obecnie ciepię z powodu braku mobilnych przycisków dla sterowania odbiornikami spoza ekosystemu Exta Life. Mam wolne RNK i kombinuję jak je wykorzystać w w HA (w moim przypadku Jolka). Czy może pojawiły się jakieś nowe rozwiązania dla tych nadajników. A może jest dla nich alternatywa? Do zastosowania w HA bez większych kosztów.
Czyli nie tylko ja mam takie potrzeby! Obecnie nie ma na to rady, ale powiem tylko tyle, że pracuję nad nową wersją integracji. Będzie setup z GUI, będzie pełna reprezentacja klocków Exta Life jako Urządzeń w HA włącznie z kontrolerem oraz nadajnikami! Dodatkowo przygotuję integrację na dokładnie taki scenariusz o jakim piszesz: na możliwość otrzymywania powiadomień z kontrolera gdy kontroler odbierze sygnał klawisza z nadajnika Exta Life! A to oznacza, że będzie można w bardzo prosty sposób budować automatyzacje (device automations) HA w oparciu o sygnał z nadajnika! Czyż to nie wspaniała wizja?
Na etapie proof-of-concept to już działa. Szczegóły zostawię na później, ale powiem tylko, że kolejne ograniczenia kontrolera zostaną zniesione dzięki HA. Prace są już bardzo zaawansowane, ale w nowej wersji jest bardzo dużo zmian na wszystkich poziomach przetwarzania, więc rozgrzebałem to mocno i próbuję teraz poskładać na nowo, a to trwa.
Jednakże, aby to działało - potrzebujemy ukłonu ze strony firmy Zamel. Mam głęboką nadzieję, że kolega @przemek.zamel sprawę potraktuje poważnie i, że na prawdę coś się z tego urodzi, bo mam wrażenie, że kontroler zawiera wszystkie potrzebne składniki, aby odsyłać do aplikacji powiadomienie o zdarzeniu z nadajnika Exta Life, bo przecież wyzwala sceny dzięki temu, a z kolei w czasie rzeczywistym dosyła do aplikacji powiadomienia o zmianach stanu czujników. Wydaje się więc, że wszystko co potrzebne już jest tylko trzeba dodać taką funkcję.

Na oficjalnym forum Zamel opisałem szeroko zastosowanie: https://extalife.pl/forum/topic/104/#postid-363

Uważam, że można to zrobić tak samo jak notyfikację dla polecenia 20, które przysyła do aplikacji powiadomienia z czujników oraz zmiany stanów od innych użytkowników podłączonych do kontrolera.

Potencjał jest, zastosowań mnóstwo, a Exta Life mogłaby wypełnić kolejną niszę. Sam bym dokupił jakieś nadajniki Exta Life pod takie zastosowanie w HA.
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

Cezary.K

Super wieści, trzymam kciuki. Chętnie przetestuję "nową" integrację.
Moja konfiguracja HA dociera się bardzo wolno. Docelową pewnie nigdy nie będzie, bo wciąż rodzą się nowe pomysły.
Szukam sprzętu do testowania i nauki HA. Zastanawiam się nad zakupem takiego pudełka dla celów edukacyjno/integracyjno/eksperymentalnych:
http://www.prolech.com.pl/index.php?mod=przedmiot&id=42161
Jest jeszcze Dell Wyse...
P.S.
Dzięki Tobie mam na nowo zapalone hobby. To jest super, bo na ryby nie ma jak jeździć...
Elementy systemu, których używam: Bramka AIS DEV3 "Jolka" + pilot+aplikacja WearOS, 32 urządzenia Exta Life z EFC-01, Mi-flora, Sonoff, ESP8266, ESP32 (ESPHome, Tasmota) Zigbee2mqtt, kamery IP, inteligentny głośnik w oparciu o AIS DEV1, urządzenia SIP.