Pracując okazjonalnie z aplikacją VIRTUINO nie miałem pojęcia jakie potężne możliwości oferuje. Większość z nich (np. rejestrator danych czy charakterystyki czasowe) mają sens jedynie przy stale działającej aplikacji. A gdy już uruchomimy na stałe Virtuino pojawia się nam nieprawdopodobna liczba możliwych operacji i działań. Wcześniej używany BLYNK w tym porównaniu wypada bardzo słabiutko.
Jeżeli chcemy wykorzystać programistyczne możliwości Virtuino należy zapewnić nieprzerwaną pracę aplikacji 24/7 oraz niezawodną łączność pomiędzy aplikacją a modułami ESP.
Zapewnienie stabilnej i nieprzerwanej pracy aplikacji w Androidzie tak naprawdę nie jest możliwe. Nie do takich celów został zaprojektowany ten system. To nie Linux czy Windows Serwer. Ponadto z założenia Android minimalizuje liczbę aplikacji działających w tle. W zasadzie działa tylko to co widzimy na ekranie - pozostałe aplikacje (za wyjątkiem niewielu systemowych) zawieszają działanie. I tak zmiana karty w przeglądarce zamraża działanie wcześniej oglądanej karty. To sam dotyczy pulpitów Virtuino. Zmiany w obrębie pulpitu dokonują się jedynie wtedy gdy pulpit jest widoczny. Jaki ma to konsekwencje dla działania aplikacji zostanie opisane później.
Te i inne ograniczenia mocno rzutują na możliwości zapewnienia nieprzerwanej pracy Virtuino w systemie Android. Można postawić aplikację na Windowsie ale to burzy piękną koncepcję pulpitu sterującego domowym systemem automatyki - czyli powieszenie taniego tabletu i sterowania z niego całym domem.
Należy więc przyzwyczaić się do tego że jednak czasami nasza aplikacja przestanie działać i uwzględnić to przy projektowaniu systemu. Na przykład wszystkie istotne funkcje sterowania muszą działać autonomicznie w obrębie danego modułu ESP nawet w przypadku utraty komunikacji z Virtuino. Nie jest to trudne i większości przypadków w zupełności akceptowalne.
Pewne działania można tez zrobić w samym Virtuino
Dla zwiększenia niezawodności pracy Androida warto postawić Virtuino na "czystym" systemie bez żadnych dodatkowych aplikacji. Warto też przypiąć ekran Virtuino co może zapobiec przypadkowemu wyłączeniu aplikacji https://support.google.com/android/answer/9455138?hl=pl#pin_older_android
W ustawieniach baterii należy wskazać Virtuino jako aplikację wyłączoną z automatycznej kontroli działania co pozwoli na automatyczne uruchamianie aplikacji przy włączeniu urządzenia i działaniu aplikacji w tle. Powinno pozwolić ale u mnie to jak raz nie działa na Android w wersji 8.
Jeśli mamy w miarę stabilnie uruchomione Virtuino należy zapewnić jeszcze stabilne połączenie aplikacji z modułami. Przez chwilę był problem z niezawodnością komunikacji pomiędzy aplikacją a modułami. Transmisja danych zawieszała się co jakiś czas i wymagany był restart aplikacji lub ESP. Problem udało się zlokalizować i naprawić. Szczegóły tu>>> i tu>>>>
Teraz już można przystąpić do programowania w Virtuino używając podstawowego do tego narzędzia jakim są skrypty
Brak komentarzy:
Prześlij komentarz