Interoperacyjność ma zapewnić standard Matter, początkowo rozwijany pod nazwą Project CHIP (Connected Home over IP). W prace nad nim zaangażowały się kluczowe firmy technologiczne, jak Amazon, Apple i Google. Matter umożliwia współpracę różnych urządzeń i systemów automatyki domowej. Dowolnym sprzętem, który jest kompatybilny z tym standardem, można sterować za pomocą preferowanego asystenta głosowego lub platformy. Na przykład żarówkę z obsługą Matter można skonfigurować za pośrednictwem Apple HomeKit, asystenta Google albo Alexy Amazona, bez obaw o brak zgodności.
Za rozwijanie standardu Matter odpowiedzialna jest organizacja Connectivity Standards Alliance (CSA), dawniej ZigBee Alliance, do której należy ponad pięćset przedsiębiorstw technologicznych. Bazując na doświadczeniach zdobytych przez lata utrzymywania standardu ZigBee, stowarzyszenie CSA połączyło różne technologie i najpopularniejsze platformy inteligentnego domu, w tym Alexę Amazona, Apple HomeKit, Google Home i SmartThings Samsunga, co było dużym wyzwaniem. Wyniki zostały udostępnione na licencji open source. SDK dla standardu Matter jest bezpłatne. Podejście preferowane przez CSA jest znacznie prostsze od certyfikacji urządzeń indywidualnie dla każdej platformy inteligentnego domu.
Przegląd wersji
Prace nad tytułowym standardem trwają od lat. Pierwsza wersja Project CHIP miała ukazać się pod koniec 2020 roku, ale termin ten przesunięto na kolejny rok, zmieniając nazwę na Matter. Następnie zapowiedziano wydanie specyfikacji dopiero latem. Po kolejnym opóźnieniu w końcu standard oraz program certyfikacji Matter 1.0 ogłoszono w 2022 roku. Udostępniono SDK, narzędzia i przypadki testowe i otwarto kilka autoryzowanych centrów certyfikacji. Specyfikacja Matter 1.0 obejmowała tylko niektóre kategorie urządzeń, w tym: żarówki i przełączniki, inteligentne wtyczki, inteligentne zamki, czujniki bezpieczeństwa, urządzenia multimedialne, w tym telewizory, inteligentne rolety i żaluzje, sterowniki bram garażowych, termostaty, sterowniki HVAC.
Pierwsze urządzenia automatyki domowej zgodne z Matter trafiły do sprzedaży jesienią 2022 roku. Od tego czasu ich liczba wciąż się zwiększa.
Pierwszą aktualizację, Matter 1.1, ogłoszono w maju 2023. Obejmowała głównie poprawki błędów. W kolejnej wersji, Matter 1.2, przedstawionej w październiku 2023 roku, dodano obsługę dziewięciu nowych typów urządzeń. Były to: klimatyzatory, zmywarki, pralki, roboty odkurzające, czujniki dymu i tlenku węgla, czujniki jakości powietrza, oczyszczacze powietrza, wentylatory.
Specyfikację Matter 1.3 ogłoszono w maju 2024. Została uzupełniona o funkcje m.in. zarządzania energią i wodą (dla inteligentnych zaworów) i ładowania aut elektrycznych. Dodano także obsługę kolejnych urządzeń, w tym piekarników, suszarek do prania, płyt grzewczych, okapów i kuchenek mikrofalowych. Wprowadzono ponadto ulepszenia funkcji Matter Casting, dzięki którym nie tylko smartfony, ale i inne inteligentne urządzenia, na przykład roboty odkurzające, mogą wysyłać treści multimedialne na telewizor, żeby na przykład informować o tym, że utknęły w trakcie pracy albo zakończyły wykonywanie zadania.
W listopadzie 2024 roku, w Matter 1.4, wprowadzono funkcję Enhanced Multi-Admin, pozwalającą urządzeniom na automatyczne łączenie się z wieloma systemami. Dodano również obsługę urządzeń takich jak panele i inwertery fotowoltaiczne, akumulatory, pompy ciepła i podgrzewacze wody, aby usprawnić automatyzację zarządzania energią w domu.
W wersji Matter 1.4.1 ogłoszonej w maju 2025 roku wprowadzono funkcję Enhanced Setup Flow, która ułatwia instalację bez konieczności korzystania z aplikacji producenta i wprowadza obsługę konfiguracji wielu urządzeń jednocześnie jednym kodem QR lub za pośrednictwem komunikacji NFC. Ta ostatnia stanowi alternatywę dla skanowania kodu QR, jeżeli jest on trudno dostępny, na przykład ze względu na umiejscowienie na spodzie albo z tyłu urządzenia.
What’s the Matter?
Specyfikacja Matter obejmuje trzy najwyższe warstwy modelu OSI: aplikacji, prezentacji oraz sesji (rys. 1). Ich implementacja także jest warstwowa (rys. 2). Najwyższa warstwa, aplikacji, definiuje logikę danego produktu końcowego. Na przykład w przypadku zamka do drzwi obejmuje funkcje otwierania i zamykania określonego modelu zasuwy w reakcji na polecenie głosowe z konkretnego typu asystenta wirtualnego.
Kolejna jest warstwa modelu danych obejmująca obsługiwane zdalnie operacje węzła Matter. Opiera się ona na koncepcji atrybutów, poleceń i zdarzeń grupowanych w logiczne bloki, zwane klastrami. Klastry w specyfikacji Matter mają ściśle zdefiniowany zakres i funkcjonalność, co ma zapewnić interoperacyjność między węzłami różnych dostawców. Klaster może być abstrakcyjny, co oznacza, że stanowi bazę dla kilku typów urządzeń. To ułatwia wprowadzanie kolejnych kategorii produktów do specyfikacji Matter.
Podczas gdy warstwa modelu danych opisuje abstrakcję przetwarzania danych, kolejna, modelu interakcji, definiuje sposób ich wymiany między węzłami. Wyróżnia się dwa ich rodzaje: węzły nawiązujące połączenie, nazywane inicjatorami – przeważnie są to urządzenia klienckie oraz węzły będące adresatami, nazywane celami – zazwyczaj jest to serwer.
Kolejna warstwa (action framing) odpowiada za przekształcanie komunikatów w pakiety binarne. Warstwa bezpieczeństwa szyfruje je i dołącza do nich kod uwierzytelnienia wiadomości. W kolejnej warstwie (message framing and routing) dane są opakowywane w nagłówki umożliwiające routing. Najniższa warstwa zarządza transmisją danych przez sieć IP do urządzenia docelowego. W tym celu wykorzystywany jest protokół TCP lub UDP razem z protokołem Matter MRP (Message Reliability Protocol). MRP implementuje retransmisje, gwarantuje potwierdzenie doręczenia oraz odrzucanie zduplikowanych wiadomości. Alternatywnie, na etapie instalacji, można skorzystać z protokołu Bluetooth Transport Protocol (BTP) Bluetooth LE.
Modele danych
Urządzenie Matter (rys. 3) składa się co najmniej z pojedynczego węzła. Stanowi on implementację funkcjonalności aplikacji i jest identyfikowany unikalnym adresem. Węzeł zawiera jeden lub więcej punktów końcowych, które stanowią zestawy funkcji dla poszczególnych urządzeń.
Na przykład w sterowanym głosem zamku w drzwiach jeden punkt końcowy może implementować funkcje do obsługi rygla, a drugi – do aktywowania zabezpieczeń. Punkt końcowy o numerze 0 jest zarezerwowany dla klastrów użytkowych Matter. Jest on obowiązkowy w każdym urządzeniu.
Punkty końcowe składają się z przynajmniej jednego klastra grupującego atrybuty, polecenia oraz zdarzenia, tworzące pojedynczą cechę. W punkcie końcowym do obsługi zasuwy na przykład jeden klaster może grupować atrybuty do jej przesuwania do pozycji otwartej lub zamkniętej, a drugi – atrybuty do sterowania alarmami w przypadku nieautoryzowanego otwarcia drzwi. Klastry mogą być typu: serwer – wtedy odpowiadają za przechowywanie wartości atrybutów, poleceń, zdarzeń albo klient – wówczas są odpowiedzialne za interakcje z innymi klastrami typu serwer.
Atrybuty to jednostki danych reprezentujące wielkość fizyczną albo stan. Są one przechowywane w pamięci urządzenia Matter, ale mogą być również obliczane na żądanie. Polecenia to akcje, które są wykorzystywane do wywoływania określonego zachowania innych urządzeń. Zdarzenia to z kolei rodzaj atrybutów, które komunikują zmiany stanu urządzenia. Mogą być również traktowane jako zapisy tego, co wydarzyło się na urządzeniu w przeszłości.
Typy urządzeń
Typ urządzenia Matter to oficjalnie zdefiniowany zbiór wymagań dla jednego albo większej liczby punktów końcowych. Wprowadzono je, żeby zapewnić interoperacyjność urządzeń różnych marek. Definicja typu urządzenia składa się z następujących elementów: identyfikatora, wersji, jednego lub więcej obowiązkowych klastrów. Może się ona zmieniać w czasie. Modyfikacje są śledzone na podstawie numeru wersji, początkowo ustawionego na 1.
Przykładowe typy urządzeń ujęte w specyfikacji Matter to: źródła światła, które można włączać i wyłączać za pomocą powiązanego urządzenia sterującego, takiego jak włącznik/wyłącznik światła lub sensor obecności, pompy o zmiennej prędkości wyposażone w czujniki i mechanizm regulacji, przełączniki włączania/wyłączania światła, czujniki obecności wykrywające i raportujące zajętość danego obszaru, zamki uruchamiane ręcznie lub zdalnie.
Interakcje
W specyfikacji Matter przewidziano następujące rodzaje interakcji: odczyt – do pobierania wartości atrybutów albo zdarzeń, zapis – do modyfikowania wartości atrybutów, wywołanie – do wysyłania poleceń, subskrypcja – do okresowego otrzymywania raportów z danymi od obiektu docelowego. Każda interakcja składa się z transakcji, a te z akcji, realizowanych w ramach jednej albo większej liczby wiadomości. Przykładowo kontroler Matter odczytuje z warstwy modelu danych zamka w drzwiach atrybut LockType klastra DoorLock, aby wyświetlić użytkownikowi odpowiednią ikonę. Następnie może zmodyfikować atrybut OperatingMode, by przełączyć zamek w tryb prywatności, w którym drzwi można odblokować wyłącznie ręcznie z wnętrza budynku. Wywołanie polecenie UnlockDoor klastra DoorLock zdalnie odblokowuje drzwi. Jeżeli natomiast zasubskrybuje atrybut LockState będzie otrzymywać powiadomienia za każdym razem, kiedy drzwi zostaną odblokowane przez innego użytkownika.
Zasadniczo każda sieć obsługująca protokół IPv6 nadaje się do wdrożenia Matter. W najnowszej wersji tej specyfikacji, by ułatwić proces certyfikacji, skoncentrowano się na trzech standardach: Ethernet, Wi-Fi i Thread. Warto dodać, że Matter umożliwia użytkownikom obsługę urządzeń IoT nawet bez dostępu do internetu.
Czym jest Thread?
Thread to protokół sieciowy opracowany na potrzeby energooszczędnych sieci Internetu Rzeczy, oparty na standardzie IEEE 802.15.4 dla sieci WPAN. Jego cechy to: prostota, bezpieczeństwo – wszystkie urządzenia w sieci są uwierzytelniane, a komunikacja szyfrowana, niezawodność dzięki samonaprawiającej się topologii mesh, bez pojedynczego punktu awarii i technikom rozpraszania widma, które zapewniają odporność na zakłócenia, oszczędność energii, dzięki obsługiwaniu trybu uśpienia, skalowalność – sieci Thread mogą się składać z setek urządzeń.
W specyfikacji Thread wyróżniono dwa typy węzłów: rutery oraz urządzenia końcowe ED (End Device). Pierwsze przekazują pakiety do urządzeń w sieci, obsługują proces dołączania do niej i są cały czas aktywne. Urządzenia końcowe to węzły, które komunikują się głównie z jednym routerem, nie przekazują pakietów do innych urządzeń w sieci i mogą przechodzić w tryb uśpienia, by ograniczyć zużycie energii. Urządzenie końcowe jest podłączone tylko do jednego rutera. Ruter pełni zawsze funkcję nadrzędną, a urządzenie końcowe – podrzędną.
Typy węzłów
Zdefiniowano również szereg typów węzłów o specjalnych możliwościach. Takimi są FTD (Full Thread Device), które są zawsze aktywne, subskrybują adres multicastowy wszystkich ruterów oraz odpowiadają za mapowanie adresów IPv6. Trzy typy urządzeń FTD to: ruter, węzeł REED (Router Eligible End Device), który może stać się ruterem oraz Full End Device (FED), który nie ma takiej możliwości. FTD może pracować jako router (urządzenie nadrzędne) lub urządzenie końcowe (urządzenie podrzędne). MTD (Minimal Thread Device) natomiast nie subskrybuje adresu multicast wszystkich routerów i przekazuje wszystkie komunikaty do swojego urządzenia nadrzędnego. Wyróżnia się dwa typy MTD: zawsze aktywne MED (Minimal End Device) oraz SED (Sleepy End Device), zwykle w uśpieniu. MTD pracuje wyłącznie jako urządzenie końcowe (podrzędne).
W specyfikacji Thread wyróżniono również lidera, czyli ruter odpowiedzialny za zarządzanie grupą ruterów. Jest on dynamicznie wybierany w celu zapewnienia odporności na błędy. Jego zadaniem jest gromadzenie i dostarczanie informacji o konfiguracji w całej sieci. Taką funkcję może pełnić wyłącznie jeden ruter, inaczej niż w przypadku ruterów granicznych. Ich zadaniem jest przesyłanie informacji między siecią Thread a innymi, na przykład Wi-Fi oraz jej skonfigurowanie pod kątem łączności z innymi sieciami. Dowolne urządzenie może pełnić funkcję rutera granicznego. Może być ich kilka.
Organizacja sieci
Sieć Thread składa się z sekcji. Każdy taki logiczny segment działa jak odrębna sieć, z własnym liderem, przypisanymi identyfikatorami rutera i danymi sieciowymi, przy zachowaniu jednakowych danych uwierzytelniających dla wszystkich urządzeń we wszystkich sekcjach. Między segmentami nie ma łączności – jak tylko taką nawiążą, automatycznie łączą się w jeden.
Sieci Thread są identyfikowane przez trzy unikalne oznaczenia: 2-bajtowy PAN ID (Personal Area Network ID), 8-bajtowy XPAN ID (Extended Personal Area Network ID) i nazwę sieci. Podczas tworzenia nowej sieci lub wyszukiwania istniejącej w celu dołączenia węzeł wysyła ramkę Beacon Request. W odpowiedzi na nią wszystkie rutery i urządzenia końcowe REED, które znajdują się w zasięgu wysyłają ramkę z identyfikatorami PAN, XPAN i nazwą sieci. Po przeszukaniu wszystkich kanałów węzeł może połączyć się z istniejącą siecią lub utworzyć nową, jeżeli żadnej nie wykryje. Do konfigurowania łączy i rozsyłania informacji o sieci wykorzystywany jest protokół Mesh Link Establishment (MLE). Jeżeli węzeł tworzy nową sieć wybiera najmniej zajęty kanał i identyfikator PAN nieużywany przez inne sieci, staje się ruterem, a zarazem liderem i wysyła komunikaty MLE Advertisement do innych urządzeń, informując o stanie łącza oraz odpowiada na Beacon Request od węzłów skanujących, które chcą do jego sieci dołączyć.
Podsumowanie
W pracach nad specyfikacją Matter koncentrowano się dotychczas na implementacji podstawowych funkcjonalności: włączania/wyłączania, uruchamiania/zatrzymywania oraz wysyłania powiadomień – obsługiwane jest na przykład włączanie i wyłączanie światła, zmienianie jego jasności i koloru, włączanie i wyłączanie gniazdek elektrycznych, opuszczanie i podnoszenie rolet czy blokowanie i odblokowywanie zamków. Wprowadzenie możliwości w zakresie zarządzania energią i ładowania samochodów elektrycznych daje jednak nadzieję, że w kolejnych wersjach specyfikacji pojawią się nowe funkcje.
Warto jednak zaznaczyć, że chociaż czołowi dostawcy automatyki domowej dostrzegają korzyści płynące z ujednoliconego standardu, mają opory przed udostępnianiem pełnej kontroli nad swoimi urządzeniami konkurencji. Ograniczona funkcjonalność Matter wynika właśnie stąd, że dostawcy zastrzegają niektóre opcje. Przykładowo, chociaż można włączyć albo wyłączyć urządzenie Apple za pomocą komend głosowych Asystenta Google, to jednak trzeba już użyć Siri lub aplikacji Apple by dostosować niektóre ustawienia lub uzyskać dostęp do zaawansowanych funkcji. Bardzo łatwo jest podać przykład kwestionujący użyteczność Matter w takim przypadku – jeśli mamy inteligentną żarówkę i za pomocą aplikacji Matter można ją tylko włączać i wyłączać, a do zmiany koloru lub jasności światła wymagana jest aplikacja producenta, mało kto będzie chciał się oprzeć tylko na tej pierwszej.
Ponieważ nie ma obowiązku implementacji całej specyfikacji, zakres wsparcia dla funkcji, które standaryzuje Matter jeszcze prawdopodobnie długo będzie różny w zależności od producenta. Na zmianę tego podejścia może wpłynąć popularyzowanie się tego standardu. Krokiem w tę stronę są działania czołowych dostawców wyposażenia inteligentnych domów, m.in. firmy Philips, którzy aktualizują huby i mosty, aby umożliwić podłączenie do sieci Matter niekompatybilnego starszego sprzętu.
Producenci automatyki domowej przechodzący na Matter jako protokół warstwy fizycznej preferują Thread w porównaniu z konkurencyjnymi standardami, ponieważ został on opracowany z myślą o urządzeniach Internetu Rzeczy. W związku z tym jego przewaga nad BLE wynika z zasięgu, zdecentralizowanego zarządzania i możliwości pracy w topologii mesh, natomiast w porównaniu z Wi-Fi wyróżnia go energooszczędność.
Monika Jaworowska