Naciskasz przycisk w aplikacji, a komenda do żarówki wiszącej trzy metry od ciebie leci przez serwer producenta i wraca. Tak z pudełka działa wiele urządzeń Tuya i część ekosystemu Xiaomi, choć dokładna architektura zależy od modelu. Opóźnienie to tylko najbardziej widoczny objaw głębszego problemu: funkcja, która może przestać działać, gdy padnie łącze albo serwer producenta. Pokażę, jak odzyskać sterowanie lokalne nad tym sprzętem - co da się uwolnić od chmury w całości, co tylko częściowo, a co najrozsądniej wymienić przy najbliższej okazji.

Chmura producenta to dług, nie darmowy dodatek

Zacznijmy od opóźnień, bo je czuć codziennie. Komenda z telefonu do żarówki w tym samym pokoju potrafi pokonać trasę: telefon, router, serwer producenta w innej części świata, z powrotem przez router do żarówki. W dobrych warunkach to kilkaset milisekund, w gorszych dwie sekundy albo wcale. Dla ręcznego sterowania to irytujące; dla automatyzacji, które mają sprawiać wrażenie natychmiastowych - światło na czujnik ruchu w korytarzu, rolety na czujnik zmierzchu - to dyskwalifikacja. Żadne strojenie nie skróci pętli, która fizycznie biegnie przez pół globu.

Druga rata długu to prywatność. Urządzenie, które melduje się serwerowi producenta, melduje mu też rytm twojego domu: kiedy śpisz, kiedy wychodzisz, kiedy wracasz, które pomieszczenia są używane i o jakich porach. Telemetria bywa opisana w polityce prywatności ogólnikami, a jej zakres weryfikujesz dopiero, podglądając ruch sieciowy. Nie musisz nawet zakładać złej woli producenta - wystarczy, że dane wyciekną przy włamaniu albo zmienią właściciela razem z całą firmą.

Trzecia rata jest najboleśniejsza: ryzyko wyłączenia. Historia smart home ostatniej dekady to cmentarzysko usług - producenci upadali, byli przejmowani albo po prostu uznawali, że utrzymywanie serwerów dla starszych produktów się nie opłaca, a sprawne fizycznie urządzenia zamieniały się z dnia na dzień w bezużyteczny plastik. Nie muszę wskazywać palcem konkretnych marek; zjawisko jest na tyle powtarzalne, że bezpieczniej założyć, że każda konsumencka chmura kiedyś zgaśnie, niż liczyć, że akurat twoja przetrwa. Do tego dochodzą cichsze warianty tego samego ryzyka: zmiana regulaminu, przeniesienie darmowych wczoraj funkcji do płatnego abonamentu, wyłączenie integracji z zewnętrznymi systemami po aktualizacji.

I rata czwarta, prozaiczna: brak internetu równa się martwy dom. Awaria łącza, awaria zasilania u operatora, przeciążony serwer producenta w Black Friday - i przełącznik na ścianie przestaje robić cokolwiek, choć żarówka i przekaźnik są sprawne i oddalone od siebie o dwa metry. Wszystkie cztery raty razem składają się na uzależnienie od dostawcy (vendor lock-in): to producent, nie ty, decyduje o tym, jak długo i na jakich warunkach działa twój dom.

Urządzenie, które do zapalenia światła potrzebuje serwera na innym kontynencie, nie jest twoje - jest wypożyczone na warunkach, które producent może jutro zmienić.

Trzy wcielenia tego samego urządzenia

Zanim zaczniesz cokolwiek uwalniać, warto rozrysować mapę, bo ten sam produkt bywa sprzedawany w trzech wcieleniach o zupełnie różnym polu manewru:

WcielenieJak działaPole manewru
Wi-Fi z chmurąUrządzenie łączy się z twoim routerem i rozmawia bezpośrednio z serwerem producentaIntegracje lokalne, flashowanie albo wymiana - zależnie od modelu
Zigbee za bramką producentaUrządzenie mówi otwartym protokołem Zigbee, ale bramka tłumaczy wszystko na chmuręWystarczy zastąpić bramkę własnym koordynatorem - chmura znika w całości
Zigbee z własnym koordynatoremUrządzenie rozmawia bezpośrednio z Home AssistantJuż jesteś na miejscu - chmury nie ma

Ta mapa wyznacza strategię całego artykułu. Najtrudniejszy przypadek to Wi-Fi z chmurą, bo tam protokół producenta siedzi w samym urządzeniu. Najłatwiejszy to Zigbee za bramką: czujnik czy przycisk jest już lokalny z natury, chmurę dokleja dopiero pośrednik, którego można po prostu odłożyć do szuflady. Dlatego przed jakimkolwiek grzebaniem w integracjach sprawdź, którym wcieleniem naprawdę jest twój sprzęt - nadruk na pudełku bywa mylący, a to samo gniazdko potrafi istnieć w wariancie Wi-Fi i Zigbee pod niemal identyczną nazwą.

Tuya po Wi-Fi: most lokalny zamiast serwera

Wiele urządzeń Tuya na Wi-Fi udostępnia protokół lokalny chroniony kluczem urządzenia, ale obsługa zależy od wersji protokołu, kategorii produktu i konkretnego modelu. Nie zakładaj zgodności na podstawie logo Tuya - sprawdź bazę wybranej integracji przed zakupem. Na tym opierają się integracje społecznościowe typu Local Tuya, instalowane zwykle przez HACS. Koncepcyjnie często wygląda to tak: zakładasz konto na platformie deweloperskiej Tuya, wiążesz z nim konto aplikacji i odczytujesz klucze lokalne. Dokładna procedura i wymaganie chmury do pierwszego parowania zmieniają się, więc kieruj się aktualną dokumentacją integracji.

Co działa dobrze: przełączniki, gniazdka, oświetlenie, rolety, sterowniki ogrzewania - urządzenia o prostym modelu stanu, zasilane z sieci. Po skonfigurowaniu komendy chodzą po twojej sieci lokalnej w dziesiątki milisekund, a aplikację producenta możesz odinstalować. Co odpada: urządzenia zaprojektowane tak, że rozmawiają wyłącznie z chmurą - część kamer, odkurzaczy i sprzętu z ekranami w ogóle nie wystawia użytecznego interfejsu lokalnego i żadna integracja tego nie obejdzie. Trzeba też wiedzieć, że klucz lokalny potrafi się zmienić po resecie urządzenia albo ponownym parowaniu z aplikacją - wtedy wracasz na platformę deweloperską po świeży klucz.

Uczciwie o koszcie utrzymania: to jest most, nie stan docelowy. Po większych aktualizacjach Home Assistant warto sprawdzić, czy integracja społecznościowa nadal żyje; po resecie urządzenia trzeba odświeżyć klucze; nowe urządzenie z tej samej serii potrafi przyjść z nowszą wersją protokołu, której integracja jeszcze nie rozumie. U mnie taki most przepracował dwa lata i przez większość czasu był bezobsługowy - ale każda z kilku awarii oznaczała wieczór grzebania w konfiguracji, którego przy Zigbee po prostu nie ma. Traktuj Local Tuya jako sposób na uratowanie sprzętu, który już masz, a nie jako zachętę do kupowania kolejnych urządzeń Wi-Fi.

Zigbee za bramką producenta: wymień tłumacza, nie urządzenia

To najprzyjemniejszy scenariusz na całej mapie. Jeśli twoje czujniki, przyciski i gniazdka Tuya albo Xiaomi mówią po Zigbee, chmura nie siedzi w nich, tylko w bramce, która tłumaczy otwarty protokół radiowy na rozmowę z serwerem producenta. Zigbee jest standardem: te same urządzenia można sparować z własnym koordynatorem podpiętym do serwera i obsługiwanym przez Zigbee2MQTT albo ZHA - pisałem osobno o wyborze między nimi. Bramka producenta ląduje w szufladzie, a razem z nią znika cała warstwa chmurowa: żadnych kont, kluczy, telemetrii ani zależności od cudzych serwerów.

W praktyce operacja wygląda tak: kupujesz koordynator (niewielki adapter USB), stawiasz Zigbee2MQTT albo włączasz ZHA i parujesz urządzenia od nowa, jedno po drugim. Przełożenie dwudziestu czujników może zająć wieczór, ale czas zależy od dostępu do urządzeń i ich trybu parowania. Automatyzacje działają lokalnie, a sieć Zigbee może zyskać dodatkowe trasy, bo większość zgodnych urządzeń zasilanych sieciowo pełni rolę routera. Nie każde urządzenie zasilane z gniazdka jest routerem, więc sprawdź model w bazie zgodności.

Jedna rzecz, na którą warto się przygotować: egzotyczne modele bywają obsłużone niekompletnie - zgłaszają się, ale część funkcji wymaga dodatkowej definicji. Bazy wspieranych urządzeń obu projektów są publiczne, więc model da się sprawdzić przed zakupem albo przed wieczorem migracji. Własny koordynator usuwa chmurę z codziennego sterowania zgodnym urządzeniem Zigbee, ale może oznaczać rezygnację z aplikacji producenta i jej sposobu aktualizacji oprogramowania układowego. Dlatego zgodność funkcji i aktualizacji sprawdź przed migracją.

Xiaomi: tokeny miio, czujniki BLE i bramki

Ekosystem Xiaomi jest bardziej różnorodny niż Tuya, więc i mapa uwalniania ma więcej pól. Część obsługiwanych urządzeń Wi-Fi - wybrane odkurzacze, oczyszczacze, lampy i nawilżacze - używa lokalnego protokołu miio i tokenu urządzenia. Nie dotyczy to każdego produktu Xiaomi ani każdej wersji regionalnej, dlatego zacznij od listy modeli wspieranych przez integrację Home Assistant. Sposoby zdobywania tokenów zmieniają się wraz z wersjami aplikacji. Po skonfigurowaniu obsługiwany model może być sterowany lokalnie, choć samo urządzenie - jeśli ma dostęp do internetu - nadal może meldować się chmurze.

Czujniki BLE to najwdzięczniejsza część ekosystemu. Termometry, higrometry i czujniki gleby Xiaomi rozgłaszają pomiary w eterze, a Home Assistant potrafi je odbierać zupełnie bez udziału producenta - wystarczy odbiornik Bluetooth w serwerze albo tanie mikrokontrolery z ESPHome rozstawione po domu jako pośredniki Bluetooth, które przy okazji rozwiązują problem zasięgu w większym mieszkaniu. Część modeli szyfruje rozgłoszenia i wymaga podania klucza (bindkey) - jego pozyskanie znów opisuje dokumentacja, bo metody zależą od modelu i wersji oprogramowania.

Bramki Xiaomi to loteria zależna od modelu i wersji oprogramowania układowego: niektóre da się przełączyć w tryb lokalny, inne wymagają modyfikacji, jeszcze inne są zamknięte na głucho. Moja rada po kilku podejściach: nie walcz z bramką, tylko uczyń ją zbędną. Czujniki Zigbee od Xiaomi sparujesz bezpośrednio z własnym koordynatorem, czujniki BLE odczytasz pośrednikami - i nagle okazuje się, że bramka nie robiła niczego, czego nie robisz już sam, tyle że u siebie.

Flashowanie ESPHome i Tasmota: kiedy warto

Najgłębszy poziom uwolnienia to wymiana oprogramowania układowego (firmware) na własne. ESPHome i Tasmota zamieniają urządzenie z klienta cudzej chmury w urządzenie, które rozmawia wyłącznie z twoim serwerem - po flashowaniu nie ma już żadnego protokołu producenta, żadnych kluczy do wyciągania i żadnego mostu do utrzymywania. Przez lata było to zaskakująco łatwe, bo tani sprzęt Wi-Fi budowano niemal wyłącznie na modułach z układami ESP - dokładnie tych, dla których oba projekty powstały. Istniały nawet narzędzia flashujące zdalnie, bez rozkręcania obudowy.

Ta epoka w dużej mierze się skończyła. Producenci załatali drogę zdalną w nowszych wersjach fabrycznego oprogramowania, a co ważniejsze - coraz więcej urządzeń schodzi z taśm z układami innymi niż ESP, na których klasyczne ESPHome i Tasmota nie zadziałają. Dla części tych układów istnieją projekty społecznościowe pokroju LibreTiny, ale wsparcie jest młodsze, lista zgodnych modeli krótsza, a ryzyko unieruchomienia urządzenia większe. Zanim kupisz cokolwiek „pod flashowanie”, sprawdź w społecznościowych bazach, jaki układ siedzi w konkretnej wersji urządzenia - producenci potrafią zmienić elektronikę bez zmiany nazwy modelu.

Kiedy warto: gdy urządzenie ma układ ESP, opisaną konfigurację dla twojego modelu i łatwo dostępne wyprowadzenia do programowania - albo gdy sprzęt jest nietypowy i nie ma następcy z natywnym sterowaniem lokalnym. Dokumentacja ESPHome prowadzi wtedy za rękę od pierwszego lutowania po gotową encję w Home Assistant. Kiedy szkoda czasu: gdy trzeba rozklejać obudowę i lutować się do drobnych punktów na płytce tylko po to, by uratować gniazdko, którego odpowiednik w wersji Zigbee kosztuje tyle co dwie pizze. Flashowanie traktuję dziś jako hobby i deskę ratunku dla sprzętu bez alternatywy, a nie jako strategię wyposażania domu.

Strategia zakupowa: nie wnoś nowej chmury do domu

Najtańsza w usunięciu jest chmura, której nigdy nie kupisz. Przed każdym zakupem zadaję sobie trzy pytania. Pierwsze: czy istnieje wariant Zigbee albo Matter over Thread z potwierdzonym sterowaniem lokalnym? Urządzenie Zigbee nie ma bezpośredniego dostępu do internetu. Thread jest natomiast siecią IP: urządzenie może komunikować się przez router brzegowy, a sam napis „Thread” nie gwarantuje braku chmury. Matter zapewnia lokalny protokół sterowania, ale produkt może nadal oferować dodatkowe funkcje producenta przez internet. Sprawdź konkretny model i zachowanie bez łącza.

Drugie: czy urządzenie działa z Home Assistant bez konta producenta? Szukaj deklaracji sterowania lokalnego, sprawdzaj publiczne bazy zgodności Zigbee2MQTT i ZHA, a przy sprzęcie z wyższej półki - oznaczenie „Works with Home Assistant”. Kluczowe jest słowo „lokalnie”: istnieją integracje oficjalne, które technicznie działają z Home Assistant, ale każdą komendę i tak przepuszczają przez serwer producenta, więc niczego nie rozwiązują. Trzecie pytanie: co się stanie, gdy producent zniknie? Jeśli odpowiedź brzmi „urządzenie przestanie działać”, to nie kupujesz produktu, tylko subskrypcję o nieznanej dacie końca.

Migracja bez wyburzania domu

Nie wymieniaj wszystkiego naraz - to najkrótsza droga do porzucenia projektu w połowie i mieszkania w domu, który jest w połowie stary, w połowie nowy i w całości nieudokumentowany. Kolejność, która u mnie zadziałała, ma trzy etapy. Etap pierwszy: zasada zero nowej chmury - od dziś każdy nowy zakup spełnia kryteria z poprzedniego rozdziału. Nie kosztuje nic, a zatrzymuje pogłębianie problemu. Etap drugi: wymiana punktów krytycznych - czujniki zalania i dymu, zamki, sterowanie ogrzewaniem, wszystko, co musi działać także podczas awarii internetu. Tu nie czekasz na naturalną śmierć urządzenia, bo koszt awarii przewyższa koszt wymiany. Etap trzeci: cała reszta w tempie okazji - żarówki i gniazdka chmurowe mogą dożyć swoich dni za mostem Local Tuya i odchodzić pojedynczo, gdy trafi się promocja na następców Zigbee.

Zostaje kategoria czwarta: urządzenia, których chmury nie da się usunąć, a które chcesz zatrzymać - telewizor, robot sprzątający, klimatyzacja. Tych nie uwolnisz, ale możesz je ogrodzić: osobna sieć VLAN dla urządzeń IoT z zaporą, która pozwala im rozmawiać z internetem, ale nie z resztą domu, a tam, gdzie sterowanie lokalne istnieje - tnie także ruch do serwerów producenta. Urządzenie wciąż jest chmurowe, ale przestaje być oknem na twoją sieć i strumieniem telemetrii bez nadzoru. To samo ogrodzenie przydaje się zresztą urządzeniom już uwolnionym: miio po tokenach działa lokalnie, ale dopiero zapora gwarantuje, że lokalnie znaczy wyłącznie lokalnie.

Podsumowanie

Chmura producenta to dług spłacany opóźnieniami, telemetrią i ryzykiem wyłączenia usług. Zgodny sprzęt Zigbee przenosisz pod własny koordynator z Zigbee2MQTT albo ZHA, po sprawdzeniu funkcji i aktualizacji. Część urządzeń Tuya na Wi-Fi obsłużysz mostem typu Local Tuya z kluczami lokalnymi, a wybrane modele Xiaomi - tokenami miio. Flashowanie ESPHome i Tasmota zostaje opcją tam, gdzie konkretny układ i wersja sprzętu na to pozwalają. Nowe zakupy wybieraj według zasady potwierdzone sterowanie lokalne przed deklaracją protokołu, a to, czego uwolnić się nie da, zamykaj w VLAN. Najuczciwszy test na koniec migracji: wyjmij kabel internetu z routera i policz, co przestało działać.