Platforma HomeKit to rozwiązanie Apple dające możliwość integracji urządzeń tworzących „inteligentny” dom. Z założenia pozwala ona w prosty i szybki sposób łączyć poszczególne moduły z centralnym systemem, z którego możemy wszystkim sterować.

Tyle teorii, w praktyce szybko przekonamy się, że urządzeń natywnie wspierających HomeKit nie jest wcale tak dużo i z całą pewnością nie należą one do tych tanich. Na szczęście z pomocą przychodzi programowalny mostek Homebridge, który możemy samodzielnie zainstalować na mikrokomputerach (np. Raspberry Pi), serwerach NAS czy jako usługę w systemie operacyjnym, tworząc tym samym bramę dla sprzętu, który z założenia nie jest wspierany przez HomeKit. Niestety nie ma róży bez kolców, wdrożenie usługi Homebridge potrafi być wyjątkowo uciążliwe. Nie bez przyczyny w internecie znajdziemy opisy w stylu „Homebridge, czyli HomeKit dla ambitnych”, gdzie napotkamy całą listę linuxowych komend, których należy użyć. Ja postanowiłem pójść na przekór i znaleźć sposób, aby poradzić sobie z instalacją opisywanej usługi w możliwie łatwy i efektywny sposób. Jeżeli chcesz rozszerzyć swój system inteligentnego domu o dodatkowe urządzenia, to zdecydowanie polecam skorzystać z opisanej metody. Krok po kroku przebrniemy przez całą procedurę i konfigurację, tak aby finalnie móc w prosty i wygodny sposób zarządzać nią z przeglądarki oraz iPhone’a.

Potrzebne elementy

  • Raspberry Pi 3, opcjonalnie można użyć również starszych modeli, ale dla największej wydajności i stabilności usługi Homebridge zdecydowanie polecam najnowszy model wyposażony w złącze Ethernet,
  • kabel zasilający (micro USB) oraz zasilacz (dla pewności pracy Raspberry najlepiej 2,5 A),
  • kabel sieciowy do połączenia z internetem,
  • karta micro SD,
  • aplikacja Homebridge for RaspberryPi autorstwa Niklasa von Weihe (w czasie pisania tego artykułu wyceniona na 32,99 zł),
  • opcjonalnie obudowa na Raspberry Pi, aby płytka nie zbierała kurzu i lepiej prezentowała się np. przy domowym routerze.

Przygotowanie karty micro SD

  1. Pobieramy obraz systemu „Raspbian Stretch Lite” z oficjalnej strony Raspberry Pi.
  2. Pobieramy i instalujemy aplikację balenaEtcher, za pomocą której wypalimy obraz systemu Raspberry na karcie micro SD.
  3. Podłączamy kartę micro SD do naszego Maca (najwygodniej skorzystać z uniwersalnego czytnika).
  4. Uruchamiamy zainstalowaną w kroku drugim aplikację balenaEtcher.
  5. Korzystając z przycisku „Select image”, wskazujemy pobrany obraz Raspbian Stretch Lite (plik będzie miał nazwę w stylu 2018-11-13-raspbian-stretch-lite.zip).
  6. Jeżeli aplikacja balenaEtcher automatycznie nie rozpozna naszej karty micro SD, wskazujemy ją ręcznie w kroku drugim procedury wypalania systemu Raspbian.
  7. Klikamy przycisk „Flash!”. W wypadku pojawienia się monitu o podanie hasła, wpisujemy dane logowania naszego użytkownika macOS z uprawnieniami administracyjnymi.

  8. Czekamy na zakończenie procesu wypalania systemu, co może potrwać od kilku do kilkunastu minut w zależności od szybkości karty i naszego czytnika.
  9. Po zakończonym procesie wyjmujemy i ponownie wkładamy kartę do czytnika.
  10. Uruchamiamy systemową aplikację terminal (najszybciej jest skorzystać z wyszukiwarki Spotlight, naciskając klawisze cmd + spacja, a następnie wpisać „terminal”).
  11. Wykonujemy polecenie cd /Volumes/boot/, aby zmienić lokalizację na kartę micro SD.
  12. Wykonujemy polecenie touch ssh, aby utworzyć na karcie pusty plik „ssh” aktywujący protokół SSH, za pomocą którego aplikacja Homebridge for RaspberryPi zainstaluje dla nas usługę „Homebridge”.
  13. Wyjmujemy kartę z czytnika i umieszczamy ją w Raspberry.

Instalacja usługi HomeBridge

  1. Podłączamy kabel sieciowy do gniazda Ethernet w Raspberry Pi.
  2. Podłączamy Raspberry Pi do zasilania za pomocą kabla micro USB.
  3. Uruchamiamy aplikację Homebridge for RaspberryPi na iPhonie podpiętym do tej samej sieci lokalnej co Raspberry i rozpoczynamy konfigurację przyciskiem „Let’s go”.
  4. Zatwierdzamy spis posiadanych elementów i przechodzimy dalej.
  5. Zatwierdzamy informację o niezbędnym przygotowaniu Raspberry do instalacji (zainstalowany system na karcie oraz aktywny protokół SSH).
  6. Potwierdzamy, że Raspberry jest wpięte do sieci.
  7. Uruchamiamy rekomendowaną opcję „Setup new Homebridge”.
  8. Wskazujemy na liście urządzeń sieciowych naszą malinkę („raspberrypi”). Jeżeli nie jesteśmy pewni, jaki ma adres IP, możemy to sprawdzić w ustawieniach DHCP domowego routera.
  9. Po pomyślnym połączeniu z Raspberry Pi kreator zapyta nas o nową nazwę, użytkownika i hasło. O ile dwie pierwsze opcje mogą pozostać bez zmian, tak zalecam zmianę domyślnego hasła raspberry na inne.
  10. Po zapisaniu danych do zalogowania klikamy w „Feed Pi”, po czym odkładamy telefon (nie wygaszając go), najlepiej podłączając go do zasilania.
  11. Homebridge for RaspberryPi wykonuje za nas całą instalację, a po jej ukończeniu powiadomi nas sygnałem dźwiękowym. Dla niecierpliwych prezentowana jest orientacyjna godzina zakończenia całej operacji.
  12. Jeżeli wszystko poszło OK, naszym oczom ukaże się panel do zarządzania usługą HomeBridge.


Konfiguracja

  1. W aplikacji Homebridge for RaspberryPi przechodzimy do zakładki Tools i wybieramy „Terminal”.
  2. Wykonujemy następujące polecenie: sudo npm install -g --unsafe-perm homebridge-config-ui-x celem zainstalowania webowego panelu administracyjnego do usługi HomeBridge.
  3. Po instalacji ww. pakietu z zakładki Tools warto wykonać profilaktyczny restart usługi HomeBridge.
  4. W zakładce „plugins” powinna pojawić się pozycja „config-ui-x” potwierdzająca obecność zainstalowanego dodatku. Jeżeli tak się nie stanie, możemy zamknąć i ponownie uruchomić aplikację Homebridge for RaspberryPi, aby ta ponownie załadowała listę zainstalowanych wtyczek.
  5. Przechodzimy do zakładki „Devices” i klikamy w plus w prawym górnym rogu celem dodania konfiguracji nowej platformy „config-ui-x”.
  6. Wybieramy z listy „config-ui-x”, a następnie wpisujemy nazwę „Config”, wskazujemy typ „Platform” oraz podajemy identyfikator „config”.

  7. Dodajemy dwie tekstowe zmienne: „port” z wartością „8080” oraz „sudo” z wartością „false”.
  8. Zapisujemy zmiany, po czym ponownie restartujemy usługę HomeBridge z zakładki Tools.
  9. Teraz z dowolnej przeglądarki internetowej urządzenia będącego częścią naszej sieci lokalnej wchodzimy na stronę http://ipNaszegoRaspberryPi:8080 np. http://192.168.0.10:8080. Adres IP malinki możemy znaleźć w pierwszej zakładce „Status” tuż pod informacją o działaniu usługi.
  10. Logujemy się domyślnym kontem użytkownika: admin z hasłem admin (najlepiej od razu zmienić je po pierwszym logowaniu).
  11. Przechodzimy do zakładki konfiguracja, gdzie dla dodatkowego bezpieczeństwa zmieniamy domyślny pin w sekcji „bridge”. Nowy musi być zgodny ze standardem ###-##-### (gdzie # to cyfry 0-9).
  12. Warto wprowadzić jeszcze poniższe zmiany w samej konfiguracji wtyczki config-ui-x. Dzięki temu z poziomu przeglądarki będziemy mieli dostęp do dziennika zdarzeń, temperatury mikroprocesora oraz opcji wykonania restartu usługi.

{ "port": "8080", "name": "Config", "sudo": "false", "platform": "config", "temp": "/sys/class/thermal/thermal_zone0/temp", "restart": "sudo /etc/init.d/homebridge restart", "log": { "method": "file", "path": "/var/log/homebridge.log" } }

  1. Zapisujemy wprowadzone zmiany w konfiguracji.

Integracja z HomeKit

  1. Uruchamiamy przeglądarkę internetową na komputerze i przechodzimy na stronę internetową usługi config-ui-x, którą skonfigurowaliśmy w poprzedniej sekcji (np. http://192.168.0.10:8080, gdy IP naszego Raspberry to 192.168.0.10).
  2. Uruchamiamy aplikację „Dom” (Apple Home).
  3. Klikamy w ikonę plusa w prawym górnym rogu, a następnie „Dodaj akcesorium”.
  4. Korzystając z aparatu, skanujemy kod QR, który wyświetla się w panelu głównym zainstalowanego dodatku config-ui-x.
  5. Dodajemy mostek Homebridge, potwierdzając jego niezgodność z certyfikatem.
  6. Dodatkowo w standardowej konfiguracji usługi HomeBridge zainstalowanej za pomocą używanej przez nas aplikacji otrzymamy m.in. sensor temperatury mikroprocesora Raspberry Pi jako dodatkowe akcesorium HomeKit. Jego pojawienie się będzie idealnym potwierdzeniem, że wszystko działa zgodnie z oczekiwaniami.

Całą procedurę opisałem możliwie szczegółowo. Mam nadzieję, że bez problemów, korzystając ze wspomnianego duetu w postaci aplikacji Homebridge for RaspberryPi oraz wtyczki config-ui-x, uda się Wam przygotować działający, nieoficjalny mostek HomeKit. Dzięki wygodzie w postaci webowego interfejsu możecie instalować oraz konfigurować kolejne wtyczki bez konieczności korzystania z terminala i dodatkowych komend. Całą masę przydatnych rozszerzeń znajdziecie bezpośrednio w zakładce „Wtyczki”. Dodatkowo spore możliwości daje również sama aplikacja, jaką instalowaliśmy na iOS. Warto przyjrzeć się opcjom, jakie oferuje, bo potrafi pozytywnie zaskoczyć.

Zdaję sobie sprawę, że opisana procedura nie zalicza się do tych najkrótszych, ale zapewniam Was, że jest jedną z najwygodniejszych i wymagających najmniejszej wiedzy praktycznej z tematyki obsługi konsoli komend. Życzę powodzenia w instalacji i satysfakcji z wprowadzonych rozwiązań. Wasze inteligentne domy z pomocą Homebridge i dodatkowych akcesoriów, które oryginalnie nie wspierają HomeKit, mogą bardzo szybko się rozrosnąć i jeszcze bardziej ułatwiać życie domowników.

Zapraszamy również na nasze forum do działu poświęconego HomeKit i HomeBridge

Artykuł ukazał się pierwotnie w MyApple Magazynie nr 2/2019

Pobierz MyApple Magazyn nr 2/2019