Jeżeli po aktualizacji z jakiegoś powodu system się nie uruchamia, to z obecnych doświadczeń wiemy, że mogą być 3 przyczyny:
-
Asystent domowy ma problem z bieżącą konfiguracją, nie może doinstalować zależności/jakiegoś pakietu. System jest jeszcze w wersji beta, dochodzi do zmian, które mogą powodować problem (breaking changes). Może też się zdarzyć, że dodałeś własne niestandardowe komponenty, które mają zależności do pakietów, które blokują poprawną aktualizację oficjalnych komponentów.
-
W trakcie aktualizacji zabrakło prądu (albo Asystent bardzo długo instalował zależności, nie sprawdzałeś w konsoli, co się dzieje na bramce w logach, zabrakło Ci cierpliwości na czekanie do końca aktualizacji i wyłączyłeś bramkę z prądu, gdy aktualizowała pakiety systemu).
-
Brakuje miejsca na dysku i nie można zainstalować aktualizacji do końca.
Z wersji na wersję staramy się te rzeczy eliminować, nasze testowe bramki działają cały czas i mają włączoną auto aktualizację. Jednak na tym etapie rozwoju projektu problemy mogą się zdarzyć (szczególnie jeżeli dodajesz jakieś niestandardowe rzeczy do bramki) dlatego ważne jest, żeby umieć diagnozować przyczynę problemu. Poniżej opiszemy jak postępować w takim przypadku krok po kroku.
Krok 1. Dostęp do konsoli
Trzeba sprawdzić, co się dzieje na bramce, w tym celu trzeba dostać się do konsoli, jest na to kilka sposobów:
a) Dostęp do konsoli bramki po SSH
https://sviete.github.io/AIS-docs/docs/en/ais_bramka_remote_ssh.html
b) Przejście do konsoli z ustawień zaawansowanych aplikacji na bramce
https://sviete.github.io/AIS-docs/docs/en/ais_bramka_settings.html
c) Dostęp do konsoli po ADB
https://sviete.github.io/AIS-docs/docs/en/ais_bramka_remote_adb.html
Krok 2. Sprawdzenie logów na bramce.
Gdy już jesteś na konsoli bramki, to trzeba sprawdzić logi procesów, żeby zobaczyć czy są jakieś problemy.
Usługi, które działają na bramce (serwer aplikacji asystent domowy, mqtt, ftp, ssh, zigbee) zarządzane są przez menedżera procesów PM2.
Status usług/procesów sprawdzisz poleceniem w konsoli:
pm2 status
Najważniejszy proces to Asystent domowy, w pm2 jego nazwa to ais.
Jeśli cos nie działa, w aplikacji Asystent domowy, to zrestartuj proces ais poleceniem:
pm2 restart ais
a następnie obserwuj logi, które się pojawiają podczas jego uruchomienia, poleceniem:
pm2 logs ais
W logach powinieneś widzieć, z czym aplikacja Asystent domowy ma problem - nie pasuje mu jakaś konfiguracja, nie może doinstalować jakiegoś pakietu itp.
Postaraj się naprawić problem, np. przez odinstalowanie pakietu, który dodałeś lub poprawkę konfiguracji. Następnie zrestartuj proces ais wszystko powinno być OK.
Bardziej obszerny opis w dziedzinie logów na bramce dostępny jest tu:
https://sviete.github.io/AIS-docs/docs/en/next/ais_faq_logs.html#logi-procesow-asystenta-domowego
3. Instalacja reczna
Jeśli w logach wygląda, że problemem nie jest konfiguracja, ale aplikacja się nie zainstalowała, podczas aktualizacji (bo zabrakło Internetu, prądu, miejsca na dysku, itp.).
To nic nie szkodzi zawsze możesz wykonać instalacje ręcznie z konsoli - w tym celu wystarczy zwykle wykonać w konsoli aktualizacje aplikacji ais-dom (jednej ze składowych systemu).
pip install ais-dom -U
Następnie obserwuj proces instalacji. Jeżeli wszystko zakończyło się sukcesem to zrestartuj serwis ais:
pm2 restart ais
i obserwuj logi podczas jego uruchomienia:
pm2 logs ais
Cala procedura ręcznej instalacji wszystkich składowych opisana jest tu:
https://sviete.github.io/AIS-docs/docs/en/next/ais_bramka_update_manual.html
4. Pelny reset aplikacji
Jeżeli, nie wiadomo co się stało, nie potrafisz naprawić problemu a Asystent domowy nadal nie działa poprawnie to nie przejmuj się - mamy wersję, która na pewno działa. Wystarczy, że wykonasz pełen reset aplikacji do najnowszej wersji naszych domyślnych kodów i ustawień. Opisane tu:
https://sviete.github.io/AIS-docs/docs/en/next/ais_bramka_reset_ais_step_by_step.html
Jeżeli nadal nie działa, to opisz w komentarzu, co dokładnie się dzieje, jakie są objawy, co jest w logach — postaramy się wyjaśnić, co należy zrobić, żeby było OK.