Kurna, nawet działa: drugie życie kamer YI
Planowałem wymianę całego monitoringu, ale zanim kupiłem nowe kamery, postanowiłem najpierw uratować te, które już miałem. Kami zamieniło korzystanie z nich w festiwal reklam, wyskakujących okienek i kolejnych abonamentów. Wykorzystałem starego miniPC z Debianem i Dockerem, postawiłem Home Assistanta oraz Scrypted, a potem okazało się, że kamery mogą trafić do Apple Home i zapisywać nagrania w iCloud. Po drodze dołączyły klimatyzator, osuszacz i stary Brother. Klasyczna historia o tym, jak nie wyrzucić starego sprzętu i przypadkiem zrobić sobie pół smart home.
Planowałem wymianę całego monitoringu, ale zanim kupiłem nowe kamery, postanowiłem najpierw uratować te, które już miałem. Kami zamieniło korzystanie z nich w festiwal reklam, wyskakujących okienek i kolejnych abonamentów. Wykorzystałem starego miniPC z Debianem i Dockerem, postawiłem Home Assistanta oraz Scrypted, a potem okazało się, że kamery mogą trafić do Apple Home i zapisywać nagrania w iCloud. Po drodze dołączyły klimatyzator, osuszacz i stary Brother. Jeśli masz w domu podobne urządzenia, warto przeczytać, zanim wyrzucisz je do szuflady z kablami, których przeznaczenia nie pamiętasz.
Miało być tylko na przeczekanie
To nie był projekt pod tytułem „buduję sobie inteligentny dom, bo mam za dużo wolnego czasu”. Nie planowałem od razu automatyzacji, serwera w piwnicy ani panelu, który pokaże mi temperaturę w każdym kącie mieszkania. Chciałem po prostu jeszcze przez jakiś czas korzystać ze starych kamer, zamiast kupować nowe tylko dlatego, że producentowi zmieniła się koncepcja na zarabianie pieniędzy.
Kamery Xiaomi Yi Home Outdoor 1080P nie są już sprzętem pierwszej świeżości. Jakość też nie jest najwyższych lotów, więc i tak wiem, że kiedyś przyjdzie moment wymiany. Ale „kiedyś” to nie to samo co „teraz, bo aplikacja postanowiła urządzić mi prezentację abonamentu”. Pomyślałem, że skoro i tak planuję w przyszłości wymienić cały monitoring, to może na ten okres przejściowy da się stare YI jakoś ulepić.
Słowo „ulepić” było tu bardzo trafne. Nie miałem gotowego planu. Miałem kilka kamer, problem z aplikacją i przekonanie, że gdzieś w internecie ktoś już musiał wpaść na pomysł, jak wycisnąć z tego sprzętu jeszcze trochę życia.
Kami i festiwal reklam
Kiedy kupowałem te kamery i działały jeszcze w YI Home, było fajnie. Była kamerka, był podgląd i człowiek miał poczucie, że kupił urządzenie, a nie wejściówkę do przyszłego cennika usług dodatkowych.
Później zaczęło się robić coraz gorzej. W Kami praktycznie wszystko zaczęło krzyczeć o abonament. Do tego wszędzie reklamy, trudne do zamknięcia, a co chwilę wyskakiwało coś nowego. Zamiast wejść zobaczyć obraz z kamery, można było odnieść wrażenie, że człowiek przypadkiem otworzył centrum handlowe.
Nie miałem problemu z tym, że każda usługa w chmurze jest z definicji zła. Po prostu nie chciałem dokładać kolejnej subskrypcji do rzeczy, które już fizycznie stały u mnie na półce. Jeżeli kamera nadal działa, obraz z niej istnieje, a problemem jest głównie to, że aplikacja chce mi sprzedać kolejną funkcję, to naturalnym odruchem jest sprawdzić, czy da się tę aplikację ominąć.
Stary miniPC wchodzi cały na biało
Przypomniałem sobie, że Xiaomi Yi Home Outdoor 1080P dało się jakoś przerabiać. Zapytałem ChatGPT, co i jak, i wtedy wyszło, że temat może być znacznie ciekawszy, niż zakładałem.
Okazało się, że kamery można wpiąć do Home Assistanta, a potem wystawić je w Apple Home. Do tego doszła możliwość nagrywania do iCloud przez HomeKit Secure Video, bez dokładania osobnego abonamentu tylko do kamer. Tego ostatniego w ogóle się nie spodziewałem. Wchodzę w temat z nastawieniem „spróbuję odzyskać podgląd”, a tu nagle ktoś mi mówi, że jeszcze iCloud może się tym zająć. No kosmos.
Do uruchomienia wykorzystałem starego miniPC z Debianem. To nie jest sprzęt, który raczej ktoś kupiłby ode mnie z wypiekami na twarzy. MiniPC i tak pracuje u mnie jako domowy serwer do różnych pseudo-projektów, a Docker już tam sobie działał. Skoro więc miałem urządzenie, które i tak pobiera prąd i wykonuje bliżej nieokreślone zadania, to dołożyłem mu kolejne.
Postawiłem Home Assistanta i Scrypted, a kamery przerobiłem na lokalne RTSP. Nie będę tu robił poradnika krok po kroku, bo moja konfiguracja nadal jest w toku, a opis „u mnie działa” nie jest jeszcze dokumentacją dla całej ludzkości. Chodziło mi o odzyskanie obrazu z kamer i przeniesienie go do systemu, nad którym mam trochę większą kontrolę.
Od strony technicznej Scrypted jest platformą do integracji wideo. Według jego dokumentacji może przyjmować strumienie z różnych kamer i przekazywać je między innymi do HomeKit i Home Assistanta. Home Assistant ma z kolei oficjalny HomeKit Bridge, który pozwala udostępniać jego urządzenia w aplikacji Apple Home. To właśnie ta układanka zrobiła z kilku starych kamerek coś więcej niż eksponat przypominający o dawnych zakupach.
Po co mi Home Assistant, skoro używam Apple Home?
To może wyglądać dziwnie, bo skoro docelowo chcę mieć urządzenia w Apple Home, to po co po drodze jeszcze Home Assistant i Scrypted? Odpowiedź jest prosta: Home Assistant jest tutaj zapleczem, a Apple Home miejscem, w którym chcę tych urządzeń używać.
Nie stawiam kolejnych usług po to, żeby podziwiać ich interfejsy. Chcę, żeby urządzenia pokazały się w Apple Home, żebym mógł robić automatyzacje i skróty. To jest cały sens tej układanki. Home Assistant może sobie działać gdzieś z tyłu, Docker może udawać, że ma plan na życie, a ja chcę finalnie wejść do aplikacji Home i zobaczyć tam urządzenia, które normalnie nigdy by się w niej nie pojawiły.
W dokumentacji Apple HomeKit Secure Video jest opisane jako usługa, w której aktywność z kamer może być analizowana na domowym hubie i przesyłana do iCloud, a nagrania są szyfrowane end-to-end. Apple wymaga tu odpowiedniego huba domowego, a Scrypted również wskazuje HomePoda albo Apple TV jako element potrzebny do HKSV. To nie jest więc po prostu magiczny folder na nagrania, który pojawia się po wpisaniu jednego zaklęcia w Dockerze.
Najbardziej zależy mi na tym, że nie muszę używać oryginalnej aplikacji producenta jako jedynego okna do własnej kamery. Jeżeli mogę mieć wygodny podgląd w Apple Home i dodatkowo zapisywać nagrania w iCloud z abonamentu, który już mam, to czemu nie? Nie chcę kupować kolejnej subskrypcji za samo prawo do oglądania obrazu z urządzenia, które już kupiłem.
Kurna, nawet działa
Największe zaskoczenie przyszło wtedy, kiedy po prostu zaczęło to działać. Kamery wykrywają ruch i nagrywają. System zaczął nawet rozpoznawać twarze. Patrzę na ekran i zastanawiam się, czy na pewno wszystko skonfigurowałem sam, czy może miniPC przejął już gospodarstwo domowe i za chwilę zacznie wystawiać mi rachunki.
Nie zrobił się z tego profesjonalny system monitoringu za darmo. Dwie kamery mają słaby zasięg Wi-Fi. Do czasu zakupu nowych jakoś to przetrwa, ale do ideału temu daleko. Stare urządzenia mają swoje ograniczenia, a fakt, że udało się je uruchomić w nowym środowisku, nie sprawił nagle, że przestały być starymi urządzeniami.
Mimo wszystko satysfakcja jest spora. Miało być rozwiązanie przejściowe, a dostałem działający podgląd, nagrywanie, wykrywanie ruchu i funkcje, o których wcześniej nawet nie myślałem. Właśnie dlatego lubię takie kombinowanie. Nie zawsze kończy się sukcesem, czasem kończy się trzema godzinami czytania dokumentacji i pytaniem, czemu człowiek nie kupił po prostu nowego sprzętu. Tym razem, ku mojemu zdziwieniu, kurna, nawet działa.
Automatyzacja, która wyłącza klimatyzację
Skoro kamery już się pokazały, zacząłem patrzeć, co jeszcze da się podpiąć. W ten sposób do Apple Home trafił klimatyzator EBERG i osuszacz MyCond. Na razie nie sprawdziłem ich możliwości jakoś bardzo szeroko. Można nimi sterować i tyle wiem na dziś.
Jedną rzecz już sobie jednak zrobiłem. Jeżeli zostanie wykryta ciecz, na przykład przy przelaniu pojemnika na skropliny, klimatyzacja zostanie wyłączona. To jest dokładnie ten rodzaj automatyzacji, który człowiek sobie wyobraża, kiedy słyszy hasło „smart home”. Nie potrzebuję automatyzacji, w której lodówka wysyła mi powiadomienie, że skończył się jogurt. Chodzi o to, żeby w razie potencjalnego problemu urządzenie przestało pracować.
Czy to jest już dopieszczone i przetestowane w każdych możliwych warunkach? Nie. Wszystko jest w toku. Na razie mam działającą konfigurację i pomysł, który trzeba jeszcze spokojnie sprawdzić. Nie zamierzam po jednym udanym uruchomieniu pisać, że oto stworzyłem system odporny na wszystko, bo wystarczy jeden fałszywy alarm i klimatyzacja będzie wyłączana przez kroplę wody, która spadła nie tam, gdzie trzeba.
Home Assistant wykrył Brothera, więc czemu nie AirPrint?
Później Home Assistant wykrył starego Brothera. I tu powinienem był powiedzieć: „świetnie, działa wykrywanie, wracam do swoich zajęć”. Zamiast tego pomyślałem, że może uda się ogarnąć go tak, żeby działał jako drukarka AirPrint.
No i działa. Czy w pełni? Jeszcze nie wiem. To również jest testowane, bo zwykłe ratowanie kamer rozrosło się na kilka mniejszych projektów pobocznych.
To chyba najlepiej pokazuje, jak ten projekt zaczął żyć własnym życiem. Nie planowałem serwera druku. Nie planowałem integrowania klimatyzacji ani osuszacza. Nie planowałem sprawdzania, czy stary Brother dogada się z urządzeniami Apple. Po prostu Home Assistant coś wykrył, a ja zacząłem się zastanawiać, czy da się to wykorzystać.
I nagle człowiek ma zagwozdkę, co jeszcze można podpiąć. To nie jest już zwykłe „naprawię kamerę”. To jest stan umysłu, w którym każde urządzenie w domu wygląda jak potencjalny cel kolejnego wieczoru spędzonego przy Dockerze.
To nadal rozwiązanie przejściowe
Nie twierdzę, że stare kamery YI będą teraz służyły wiecznie. Ich jakość nie jest już najwyższych lotów, dwie mają problemy z zasięgiem Wi-Fi, a cała konfiguracja nadal wymaga testów. To jest most do czasu zakupu nowego zestawu.
Kiedy przyjdzie pora na wymianę, następne kamery będą już musiały trafić do tego samego ekosystemu. Myślę o BCS albo Hikvision i chcę mieć możliwość korzystania z wygodnego podglądu niekoniecznie w oryginalnej aplikacji producenta. Jeżeli przy okazji nagrania będą mogły trafiać do iCloud, tym lepiej.
Nie mam przy tym gotowej listy wymagań, którą mogę wydrukować i przykleić na lodówce. Co jeszcze musi zadziałać, żeby uznać projekt za skończony? Nie wiem jeszcze. Jak to mówił Ferdek Kiepski: nie mam pomysła.
Czasem warto pokombinować
Najlepsze jest to, że wszystko zaczęło się od prostego planu. Nie usiadłem z kartką i nie rozpisałem architektury domowego smart home. Chciałem najpierw uratować stare kamery, zanim wymienię cały monitoring. Problem polegał na tym, że korzystanie z nich przez aplikację robiło się coraz gorsze, a na każdym kroku pojawiały się kolejne propozycje abonamentu.
Po drodze wykorzystałem starego miniPC, który i tak robił za serwer do różnych pseudo-projektów. Nauczyłem się kolejnych rzeczy, postawiłem Home Assistanta i Scrypted, wyprowadziłem kamery do Apple Home, uruchomiłem nagrywanie do iCloud, zacząłem sterować klimatyzatorem i osuszaczem, a na dokładkę próbuję zrobić AirPrint ze starego Brothera.
Czy zbudowałem gotowy, idealny smart home? Nie. Czy wszystko działa perfekcyjnie? Też nie. Czy planuję jeszcze sprawdzać, co da się do tego podpiąć? Oczywiście, że tak, bo najwyraźniej nie potrafię zobaczyć wykrytego urządzenia i zostawić go w spokoju.
Czasem naprawdę warto pokombinować. Nie zawsze po to, żeby stworzyć rozwiązanie na lata. Czasem wystarczy odsunąć zakup nowego monitoringu, wykorzystać sprzęt, który już mamy, i przy okazji nauczyć się czegoś nowego. A jeżeli na końcu spojrzymy na całość i powiemy „kurna, nawet działa”, to chyba był całkiem niezły wieczór.