🪄 Oficjalne przejście na Home Assistant Supervised

Szanowni Użytkownicy

→ kliknij by przejść do ogłosznia ←

Z przyjemnością chcielibyśmy Was poinformować o znaczącej zmianie, która wpłynie na naszą platformę w pozytywny sposób. Po przemyślanej analizie oraz wysłuchaniu Waszych opinii, zdecydowaliśmy się na całkowite przejście z systemu operacyjnego Adroid/Termux na Linux, a co za tym idzie, z Home Assistant Core na Home Assistant Supervised.

Dlaczego ta zmiana?

1. Asystent Głosowy Wbudowany w Home Assistant

W 2023 roku Home Assistant pracował nad wbudowanym w system asystentem głosowym. Pracę te dobiegają końca i w efekcie nasze rozwiązanie oparte na usługach STT i TTS wbudowanych w system Android przestało być niezbędne do działania asystenta.

Zdecydowaliśmy się rozwijać i wspierać rozwiązanie dostarczane przez Home Assistant.

W naszym wpisie na blogu opisujemy jak dodać własne wyrażenie włączające mikrofon “Wake Word: Hey Yolca - “Wake Word”, własne wyrażenie włączające mikrofon To pierwszy s serii wpisów w których będziemy zajmowali się asystentem głosowym wbudowanym w Home Assistant.

2. Kontenery Docker-a i dodatki Home Assistant

Kontenery Docker to lekkie, przenośne i samowystarczalne jednostki oprogramowania, które umożliwiają pakowanie, dostarczanie i uruchamianie aplikacji w izolowanym środowisku. W przypadku Androida kontererami były Aplikacje, ale prawda jest taka, że Home Assistant działa na kontenerach Dockera a nie Anroida. Dzięki przejściu na Linux-a będziemy mieli dostęp do wszystkich dodatków Home Assistant.

3. Łatwiejsze Aktualizacje Systemu

Zmiana na Linux ułatwi proces aktualizacji systemu Home Assistant. Aktualizacja systemu Home Assistant w przypadku działania Home Assistant w kontenerze sprowadza się do aktualizacji kontenera Docker. Tak samo aktualizowane są dodatki które działają też w kontenerach Docker. To ułatwia proces aktualizacji ponieważ aplikacje są pakowane wraz ze wszystkimi niezbędnymi zależnościami i konfiguracją, co sprawia, że są przenośne między różnymi środowiskami. Oznacza to, że to, co działa na jednym systemie, powinno działać na innym bez większych modyfikacji.

4. Pakiety Linux-a

W przypadku Termux, liczba dostępnych pakietów jest mniej imponująca w porównaniu do tradycyjnych dystrybucji Linuxa na komputerach stacjonarnych lub serwerach. Termux jest środowiskiem do uruchamiania terminala na systemie Android, a liczba pakietów jest ograniczona ze względu na specyficzne wymagania i ograniczenia środowiska Android.

W ostatnich latach Termux znacząco rozszerzył swoją ofertę, a liczba dostępnych pakietów stale rośnie. Aktualnie Termux oferuje dostęp do wielu popularnych narzędzi i programów, w tym edytory tekstowe, języki programowania, narzędzia programistyczne, serwery, narzędzia sieciowe itp. Jednak liczba pakietów nie jest w dziesiątkach tysięcy, jak w przypadku tradycyjnych dystrybucji.

W przypadku systemu Linux bazującego na dystrybucji Debian mamy do dyspozycji praktycznie wszystkie pakiety Linux-a a co za tym idzie możemy instalować na bramce więcej pożytecznych rzeczy.

5. Obsługa adapterów i seriala

W systemie Android, który jest zaprojektowany głównie z myślą o urządzeniach mobilnych, takich jak smartfony i tablety, obsługa portu szeregowego (serial port) nie jest domyślnie wbudowana.

Większość producentów adapterów (Zigbee, Z-Wave, Thread, Lora …) nie oferuje obsługugi USB ale wymaga obsługi portu szeregowego. Taka komunikacja jest zwykle bardziej istotna w kontekście bramek IoT, systemów do kontroli przemysłowej i innych specjalizowanych zastosowań. Natomiast urządzenia Android są głównie ukierunkowane na obsługę standardowych interfejsów komunikacyjnych, takich jak USB, Bluetooth czy Wi-Fi.

Obchodziliśmy te ogranicznia z różnym skutkiem, kompilując jądro Linux-a i/lub urzywając adapterów które rozumiały komunikację USB. Teraz dzięki przejściu na system Linux, będziemy w stanie obsługiwać każdy adapter.

:heart: Dziękujemy za Wasze zrozumienie i wsparcie. Ta zmiana ma na celu podniesienie standardów naszego systemu i dostarczenie Wam jeszcze lepszego doświadczenia z Home Assistant.


Jak przystąpić do aktualizacji?

Instrukcje dotyczące aktualizacji oraz migracji są dostępne na naszym forum:

Wystarczy zaopatrzyć się w kartę SD lub pendrive i można pobrać nasze obrazy Linuxa z już zainstalowanym i skonfigurowanym Home Assistant, następnie trzeba nagrać obraz systemu na nośnik i uruchomić bramkę na nowym systemie.

Gotowe karty SD

Dla osób które chciały by kupić gotową kartę z zainstalownym systemem Home Assistant oferujemy w naszym sklepie nowy produkt - SDCARD 128GB - HOME ASSISTANT SUPERVISED:

SD

Mając gotową kartę cały proces przejścia na Linux jest bardzo prosty, ChatGPT widzi to w ten sposób :wink: → “magikwkłada kartę sd do pingwina linux, w ten sposób magicznie wypędza z niego ducha google android”

Bramki AIS

Nowo sprzedawane bramki AIS, dostarczane są już z zainstalowanym systemem Linux oraz Home Assistant Supervised - AIS DOM DEV-3 BRAMKA IOT&AUDIO - WERSJA DEWELOPERSKA

SD


AIS Android, na kanale ALFA :slight_smile:

Na kanale alfa, będziemy nadal wydawać wersje. Z uwagi jednak na argumenty opisane powyżej: kłopotliwą aktualizację, brak wsparcia dla wszystkich pakietów linux-a, brak obsługi wszystkich adapterów(brak obsługi seriala) w systemie Android, brak obsługi kontenerów w systemie Android, zalecamy przejście na system Linux i Home Assistant Supervised.

więcej na naszym blogu:

5 polubień

Co do tego punktu mam wątpliwości. Nie odchodził bym całkowicie od Jolki bo wiem jak działa asystent na HA i myślę że z Jolka było fajniej :grin: STT działa dobrze ale pod warunkiem że korzystamy z płatnej usługi Nabu Casy, inne silniki są do niczego jeśli chodzi o język PL. Jeśli dodacie Jolke jako add-on to (o czym już wspominałem jakiś czas temu) to myślę że będzie to krok milowy dla polskich użytkowników, szyfrowany tunnel już został dodany i można korzystać z niego z powodzeniem więc czekam kolejny wielki krok :star_struck:

3 polubienia

Noce coraz dłuższe, czas na migracje.
Może już było, ale czy piloty radiowe będą wykorzystane czy to już przeszłość?
Jest gdzieś tutek/repo do tego jak zainstalować natywnie dystrybucję na DEV-3 i PRO bez systemu na karcie/pendrive?

wydaje mi się, że najnowsze wydania linuxa nie będą startować z pamięci wewnętrznej i trzeba używać kart SD

1 polubienie

Tak, mamy to na uwadze, bawimy się ChatGPT (w całym tym wpisie obrazy zostały wygenerowane przez DALL·E 3) i jednocześnie sprawdzamy niesamowite możliwości Google gemini. Generalnie staramy się tym razem więcej czasu poświęcić na alanizę problemu niż na rozwiązanie :wink:
Bardzo szybko się rozwija ostatnio temat Generatywnego AI, to już tylko kwestia czasu jak asystenci głosowi będą w stanie wszystko zrozumieć, zrobić i odpowiedzieć pięknym głosem.
Obserwuje ten niesamowity postęp i jestem w stanie się założyć, że nie przejdę na emeryturę jako programista, bo AI mnie zastąpi :slight_smile: … ale wracając do asystentów, wczoraj Home Assistant podsumował prace nad asystentem głosowym:

W HA zrobili fajne rzeczy z Espressif S3-BOX-3 i zapowiedzieli, że opracują własne urządzenie - asystenta do każdego pokoju oraz, że dodadzą model językowy - tak żeby rozumieć komendy ala ChatGPT.

po włożeniu klucza usb z pilota, w Linuxsie mamy nowe urządzenie:

lsusb

evtest

pokazuje, że mamy jakieś nowe urządzenia wysyłające zdarzenia typu klawiatura/myszka

showkey

tak możemy zbobaczyć kod klawisza w pilocie

jak by to połączyć z tym:

to już jakieś sterowanie by chyba było :slight_smile:

PS
niestety pod Linuxsem jeszcze nie działa mikrofon w pilocie :frowning:

To niestety faktycznie skomplikowane bardziej, teoretycznie mamy na urządzeniu skrypt armbian-install


i zadaniem tego skryptu jest sformatowanie wewnętrznej pamięci eMMC i instalacja tam systemu, ale niestety to nie w każdym modelu bramki działa i z nie każdym wydaniem Linuxa.
Sprawa się rozbija o bootloader (program ładujący) , gdy uruchamiamy urządzenie z karty SD/PenDrive to korzystamy z Androidowego bootloadera znajdującego się na eMMC. Jednak podczas formatowania eMMC i instalowania Linux-a na eMMC, zastępujemy bootloader Androida programem u-boot dla Linux-a. Dlatego przy ponownym uruchomieniu z eMMC wymagany jest prawidłowy u-Boot a nasz niestety nie zawsze jest poprawny.
Moja walka w tym temacie opisana jest tu:

Staneło na tym, że jądro Linux-a w wersji 6.1.y wymaga innego bootloadera u-boot niż ten który ja przygotowuje i konieczne są dalsze testy i dostosowanie u-boota. Kiedyś do tego jescze wrócę ale na tą chwilę możemy uruchamiać bramki z SDCard albo Pendrive, a jak chcemy się pozbyć całkowicie Androida to mozemy dysk wewnętrzny wykożystać na dane:

Myślę, że w ten sposób mamy trochę win-win - kontenery działają szybko bo są na wewnętrznej pamięci (opiszemy jak to zrobić), otrzymujemy niezniszczalną bramkę (nawet jak pamięć wewnętrzna po 20 latach “się skończy” to i tak bramka będzie działać z SDcard/PenDrive) :slight_smile:

4 polubienia

No znając jakość pamięci flash to odważne stwierdzenie :wink:

Czy gotowe karty SD będą działać z najstarszą wersją bramki DEV3 (czyli wyposażoną w kartę sieciową 100Mb - z “miękką” etykietą na górze bramki) ?

I przy okazji chciałem podpytać o możliwości podłączenia głośnika po kablu do HA w wersji Supervised. Dotychczas korzystałem z mini jack. Zakładam że to już w wersji Docker nie będzie działać?

W dotychczasowej wersji Jolki mamy również dostęp do Google Calendar - czy uda się to uruchomić na Supervised?

Oraz co z bazą danych na PostgreSQL
Rozumiem że będzie można ją zainstalować ale zmieni się sposób konfiguracji?

tak, ale przy zakupie trzeba wybrać opcje DEV3-100M (dzięki za info dadaliśmy tą opcje)

niestety to narazie nie działa, działają głośniki po USB, możliwe, że będzie w tym temacie aktualizacja

tak, to działa:

tak, wystarczy zainstalować bazę w systemie Linux:

ssh root@<ip-bramki>
hasło: 1234

apt update
apt install postgresql

 systemctl status postgresql

konfiguracja bazy

sudo -u postgres psql
CREATE USER homeassistant WITH PASSWORD 'yourpassword';
CREATE DATABASE homeassistant_db WITH OWNER homeassistant ENCODING 'utf8' TEMPLATE template0;

restart serwisu

systemctl reload postgresql

modyfikacja configuration.yaml

restart ha i powinno działać

Oczywiście można prościej z dodatkiem MariaDB:

Powodzienia :wave:

3 polubienia

Dokładnie tak, większość ludzi właśnie dlatego ucieka np. z RPi i HA ze względu na ciągłe awarie kart pamięci.

Czyli rozumiem że żegnamy się z głosem jolki i wszystkie automatyzację z komunikatami głosowymi nie działają?
Jest jakaś szansa na przeniesienie konfiguracji?
Dużo pytań :slightly_smiling_face:

1 polubienie

U mnie RPi4B śmiga na SSD…

A czy jest możliwość uruchomić bluetooth w supervised na pro1?

1 polubienie

Obraz dla DEV3 na MEGA jest z sierpnia 2023, czy przewidywania jest aktualizacja?

To jak to jest z DEV1? Były głosy, że ma za mało RAM, żeby HA Supervised działało poprawnie.

2 polubienia

Bo ludzie po prostu stosują nieodpowiednie karty SD, HA na moim RPi3 z kartą SD klasy A1 A2 (oczywiście powinno być A2, moje przejęzyczenie) jakieś 2 lata, do końca bez awarii karty SD, kiedy RPi3 już nie dawało rady zmigrowałem się na generic x86-64.

Tak, HA ma niechlubną opinię “niszczyciela pamięci” bo zdarzało się, że logował tysiące wpisów na sekundę w pętli. Odkąd Home Assistant zaczął sprzedawać własne bramki, z wbudowaną pamięcią to jest już znacznie lepiej w tej sprawie :wink:

Wydaje mi się jednak, że działanie na karcie SD to nie jest taki głupi pomysł, jak dodamy kopie zapasowe na wbudowanej pamięci, to otrzymamy w ten sposób niezniszczalne rozwiązanie - w przypadku gdy HA “oszaleje” i zacznie swój “sztorm zdarzeń” to wszystko, co może się zniszczyć to wymienną karta SD, a nie wewnętrzna pamięć. Lepiej wymienić kartę za 50zł niż bramkę za 450zł.

Żegnamy się ale nie na zawsze :wink: Jolka nie powiedziała ostatniego słowa jeszcze!
Konfiguracje można przenieść bo format i configuration.yaml jest w sumie ten sam, ale komunikaty głosowe trzeba przerobić na TTS w HA

teoretycznie powinna być, jak w konsoli HA wpiszemy:

ssh root@172.17.0.1
pass: 1234

to przejdziesz do konsoli bramki (hosta kontenerów dockera)

następnie w konsoli hosta wpisujesz

armbian-config

i wybierasz Network

i instalujwsz wsparcie dla BT

jak się zainstaluje to powinno wykrywać urządzenia BT:

w urządzeniach powinien się dodać BT

i możliwe że :wink: wykryją/dodadzą się jakieś urządzenia

niestety to może nie działałać jeszcze dobrze, może wraz z aktualizacjami systemu linux będzie lepiej

tak, testujemy nowsze kompilacje i jak będzie warto to zaktualizujemy obrazy (znajdziemy też lepsze miejsce niż mega)

można próbować dodać pamięć swap, będzie wolniej ale docker powinien się tą pamięcią zadowolić

armbian-swap 2

Rosyjska firma jethome, ciągle sprzedaje bramki z 1GB i za HA na tym samym systemie Linux co my (Armbian)

i jakoś to działa

Tak, dobra, niezawodna i szybka karta SD to teraz podstawa
Gorąco polecamy „Klasę 10” z min. szybkość zapisu 10 MB/s (to ta 10 w kółeczku na zdjęciu poniżej)

1 polubienie

Rozumiem że Jolka będzie działać cały czas na android dopóki nie przejdzie się na HA jak wyżej. Jedynie nie będzie aktualizacji?
Nie ukrywam że nie mam głowy żeby teraz wszystko przerabiać i kombinować :slightly_frowning_face:
Może warto ostatnią wersję z beta wydać na stabilnym tak aby trochę odświeżyć soft :slightly_smiling_face:

2 polubienia

Tak, zgadza się. Rozpoznawanie mowy i mówienie jest wbudowane w Androida. Jak mamy porobione automatyzacje i nie mamy potrzeby używania “czystego HA” z kontenerami to oczywiście można dalej używać Androida.
Fajne jest to, że mamy wybór - możemy sobie sprawdzić jak działa “czysty HA” - mamy twz. DUAL BOOT :slight_smile:
Z czasem pewnie wydamy asystenta “Jolka” jako dodatek do HA i wtedy przejście na Linux z HA będzie prostsze.

Tak wygląda instrukcja, którą wysyłamy z kartami SD:

W ostatniej wersji, którą rozwijamy na Android jest zmiana python na 3.11 i to powoduje, że aktualizacja jest dość skomplikowana - bo trzeba odinstalować cały system HA, zaktualizować pythona i ponownie zainstalować cały system HA. Obawiamy się, że mogą z tym być problemy i dlatego zdecydowaliśmy się nie wydawać tego na kanale stabilnym - żeby nie denerwować przed świętami :wink:
Niestety aktualizacja to jeden ze słabych punktów systemu działającego bez kontenerów dockera - jak się przejdzie na czystego HA z kontenerami to znika 90% problemów z aktualizacją.
Z powodu powyższego skłaniamy się raczej na wydawaniu kolejnych wersji na kanale ALFA, ale zobaczymy jeszcze jak to będzie.

2 polubienia

Witam. Zakupiłem nową bramkę AIS Dom DEV-3 bramka IoT&audio - wersja deweloperska od czego zacząć żeby nie zrobić złych ustawień. Do tej pory używałem bramki DEV1. Mam zapisany obraz moich ustawień. Czy mogę go wczytać do nowej bramki ?
pozdr.

1 polubienie