Witam,
Przez ostatnie miesiące pracowałem nad projektem dla urządzenia Mobilus Cosmo GTW, którego celem jest dodanie wsparcia dla standardu Matter. Chciałem w bardziej uniwersalny sposób zarządzać urządzeniami podłączonymi do Cosmo GTW za pomocą Apple HomeKit czy też Home Assistant. Standard Matter doskonale rozwiązuje ten problem.
Dla tych, którzy nie mieli jeszcze styczności z Matter - to otwarty standard komunikacji dla urządzeń smart home, mający na celu zapewnienie kompatybilności niezależnie od ekosystemu. Urządzenia z logo Matter można podłączyć m.in. do Apple HomeKit, Home Assistant, Google Home, itd. o ile dany system wspiera standard Matter.
Aplikacja mobmatter została oparta na oficjalnym Matter SDK i działa bezpośrednio na samym Cosmo GTW. Komunikuję się on z głównym procesem mobilus po MQTT. Obecnie aplikacja wspiera tylko rolety: Senso (eg. siłowniki ERS), Cosmo oraz C-MR. Jako, że sam posiadam rolety z siłownikami ERS, najlepiej przetestowany jest Senso. Cosmo oraz C-MR nie miałem możliwości zweryfikować w praktyce, ale ze względu na w miarę podobną zasadę działania powinny również działać.
Dzięki temu, że Mobilus używa zdarzeń do raportowania o zmianach stanów urządzeń, aplikacja automatycznie przekazuje to dalej, tym samym mając natychmiastowe aktualizacje o stanie urządzeń w podłączonych systemach.
link do repozytorium
Instalacja
Do zainstalowania mobmatter wymagany jest dostęp SSH, jak go aktywować tutaj. Również upewnij się, że wersja oprogramowania Twojego Cosmo GTW jest przynajmniej 0.1.7.8.
Po połączeniu się z urządzeniem, uruchom poniższe polecenie w celu przeprowadzenia instalacji runtime, które posłuży do odpalenia mobmatter:
wget --no-check-certificate -qO- https://raw.githubusercontent.com/piku235/mobgtw-runtime/main/install.sh | sh
Teraz, możesz zainstalować mobmatter taką prostą komendą:
/opt/jungi/bin/pkg install mobmatter
Odpowiednio dostosuj dane logowania do Mobilus jeżeli używasz innych danych logowania niż te domyślne w Cosmo GTW:
vim /opt/jungi/etc/mobmatter.conf
Po dokonanych zmianach w mobmatter.conf wykonaj komendę do przeładowania usługi:
/etc/init.d/mobmatter reload
Aby sprawdzić czy mobmatter poprawnie działa możesz zobaczyć log usługi:
logread -e matter
Po pierwszym uruchomieniu aplikacja znajduję sie tzw. trybie commissioning. Jest to tryb, który pozwala na sparowanie urządzenia. Tryb ten zostanie automatycznie zamknięty po pierwszym pomyślnym sparowaniu.
Tryb parowania można przeprowadzić na 2 sposoby: QR albo kod manualny.

kod: 21693312337 lub 20202021