homebridge
homebridge

HomeKit – Część 1 – prosty poradnik instalacji HomeBridge na Raspberry Pi 3 B+

Jeśli znalazłeś się tu nieprzypadkowo wiesz, iż certyfikowane urządzenia HomeKit kosztują krocie. Ceny zwykłych „kolorowych” żarówek, kompatybilnych z domowym systemem Apple, zaczynają się od ponad 200 złotych. Co jeśli byłbyś w stanie podłączyć tanią niekompatybilną żarówkę RGB Xiaomi do oficjalnego systemu firmy z Cupertino?

Czym jest HomeBridge i dlaczego powinieneś go skonfigurować?

HomeBridge jest serwerem NodeJS pracującym jako mostek, dzięki któremu możemy dodać niewspierane urządzenia do aplikacji Dom na naszym iPhonie/iPadzie/Macu. W pierwszej części poradnika pokażę Ci, w jak najprostszy sposób zainstalować to rozwiązanie na platformie komputerowej Raspberry Pi 3 B+.

poradnik instalacji HomeBridge na Raspberry Pi
Przykładowe użycie HomeBridge z żarówką Xiaomi

Czego będziemy potrzebować:

  • komputer z systemem Linux/Windows/MacOS
  • Raspberry Pi 3 Model B+
  • karta pamięci microSDHC min. 16GB
  • czytnik kart pamięci
  • zasilacz z kablem microUSB, minimum 2,5A
  • trochę chęci i minimalnej wiedzy na temat pracy z terminalem

Opcjonalnie:

  • kabel HDMI
  • monitor
  • kabel Ethernet
  • myszka USB
  • klawiatura USB

Większości poradników w sieci wymaga posiadania zewnętrznego monitora, aby Raspberry Pi zostało do niego podłączone. Co jeśli nie macie takiej możliwości? Nie martwcie się, poradnik ten przygotowany jest także dla Was. Pokażę w nim dwa sposoby instalacji HomeBridge, z dostępem do zewnętrznego ekranu oraz bez jego dostępu.

Krok 1 – Instalacja Systemu Raspbian na Malince

Pierwszym krokiem, jaki musimy wykonać, jest wgranie systemu na naszą nowo zakupioną Raspberry Pi. Żeby to zrobić pobieramy: „Raspbian Stretch with desktop and recommended software” – jest to oficjalny system przygotowany z myślą o naszym mikro komputerze. Ściągnąć możemy go z TEJ strony. Po odnalezieniu wcześniej wymienionej nazwy, klikamy w czerwony kwadrat z napisem „Download ZIP„. Pobrany obraz systemu rozpakowujemy z archiwum ZIP w dowolnie wybranym miejscu na dysku.

Teraz na chwilę musimy oderwać się od komputera i odnaleźć kartę microSD przeznaczoną do instalacji HomeBridge. Podłączamy ją do naszego komputera za pomocą czytnika kart SD, a następnie formatujemy do systemu plików FAT32.

Kolejnym krokiem będzie pobranie programu „balenaEtcher”, pozwalającego na utworzenie bootowalnego obrazu systemu na naszej karcie SD. Po instalacji oprogramowania, na naszym komputerze uruchamiamy balenaEtcher. Na ekranie wyświetli się takie okno:

poradnik instalacji HomeBridge na Raspberry Pi
Program balenaEtcher

Klikamy w przycisk Select image i w okienku, które nam właśnie wyskoczyło, odnajdujemy wcześniej pobrany i rozpakowany obraz systemu „Raspbian Stretch with desktop and recommended software”. Następniepo kliknięciu środkowej opcji „Select drive”, odpowiadającej za wybór odpowiedniego dysku, wskazujemy wcześniej podłączoną i sformatowaną kartę microSD. Teraz wciskamy piorunek z napisem „Flash!” i czekamy. W tym momencie program tworzy bootowalny obraz systemu, który za chwilę uruchomimy na naszej Malince.

OPCJONALNIE:

Jeśli chcemy skonfigurować naszą Malinkę za pomocą zewnętrznego monitora, tak, aby była zawsze podłączona do internetu za pomocą kabla Ethernet, musimy do slotu microSD włożyć naszą kartę z zainstalowanym systemem. Następnie Raspberry Pi podłączamy do prądu przy pomocy zasilacza microUSB i łączymy Malinkę z monitorem/telewizorem poprzez złącze HDMI. Dodatkowo wpinamy nasze akcesoria, czyli myszkę i klawiaturę do portów USB. Po kilku minutach na ekranie ukaże się nam pulpit systemu Raspbian. Teraz wystarczy, że uruchomimy terminal i przejdziemy do kroku numer 3.

Krok 2 – Łączymy Malinkę do routera

Nie posiadając żadnego zewnętrznego wyświetlacza, możemy skonfigurować Malinkę za pomocą WiFi i SSH. Niestety, Raspbian nie obsługuje protokołu SSH „out of the box”,dlatego my uaktywnimy go samodzielnie. Aby to zrobić, na karcie microSD tworzymy pusty plik o nazwie ssh. Następnie, by wymusić łączność WiFi na Raspberry Pi, w tym samym miejscu, gdzie stworzyliśmy plik ssh, tworzymy kolejny, o nazwie: wpa_supplicant.conf

Otwieramy go za pomocą edytora tekstowego i wklejamy do niego podany niżej tekst, zmieniając w nim nazwę sieci i hasło, na takie, jakie mamy ustawione w naszym routerze:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=PL

network={
	ssid="TwojaNazwaSieci"
	psk="TwojeHasłoSieci"
	key_mgmt=WPA-PSK
}

Plik zapisujemy. Możemy bezpiecznie wysunąć kartę microSD z komputera i umieścić ją w Raspberry Pi. Malinkę podłączamy do zasilacza i czekamy aż się uruchomi (zaprzestanie migania zielonej diody sygnalizuje, iż system jest gotowy do pracy).

Na tę chwilę potrzebujemy znać adres IP naszej Malinki, najłatwiej zrobimy to używając naszego routera. Udajemy się na jego głównąstronę poprzez adres ip (standardowe adresy IP routerów: 192.168.1.1, 192.168.0.1, 192.168.1.254). Logujemy się i odnajdujemy podstronę zawierającą spis urządzeń połączonych do naszej sieci. Tu znajdujemy nasze Raspberry Pi i zapisujemy jego IP.

Odszukanie IP Raspberry Pi na routerze UPC

Jeśli router zamiast adresu IP pokazuje dziwny ciąg znaków, możemy użyć lokalnego adresu ip Malinki. Co ważne, abyt to zrobić trzeba być podłączony komputerem pod to samo wifi które wpisaliśmy w pliku konfiguracyjnym dla Raspberry Pi. Lokalny adres dla każdej Malinki to:

ssh [email protected]

Żeby uzyskać połączenie SSH na Windowsie (posiadając MacOS lub Linuxa, możemy pominąć instalację dodatkowego oprogramowania, uruchamiamy terminal i przechodzimydo kroku 3), potrzebny nam będzie zewnętrzny program PuTTY. Po jego pobraniu i instalacji, uruchamiamy go. Na ekranie wyświetli się nam takowe okno:

poradnik instalacji HomeBridge na Raspberry Pi
Program PuTTY

Program prosi nas o wpisanie adresu IP Raspberry Pi w polu „Host Name”. Przepisujemy adres, który niedawno pozyskaliśmy ze strony naszego routera i klikamy przycisk „open”. Naszym oczom ukaże się okno terminala.

Krok 3 – Instalacja HomeBridge

Przed nami terminal, to tu dokonamy finalnej czynności – zainstalujemy HomeBridge!

Aby bezprzewodowo połączyć się z naszą Malinką, do terminala wpisujemy komendę:

ssh pi@AdressIPnaszegoRaspberry

lub jeśli nie odnaleźliśmy IP naszej malinki:

ssh [email protected]

Teraz Raspbian prosi nas o podanie hasła, standardowym hasłem jest:

raspberry

Proponuję jak najszybciej zmienić domyśle dane logowania. Aby to zrobić używamy komendy:

Passwd

Terminal poprosi nas o wpisanie starego hasła, następnie wpisujemy nowe hasło, które należy potwierdzić przepisując je dwa razy.

Aby wszystkie akcesoria niekompatybilne z HomeKit działały prawidłowo na naszym „oszukanym” mostku, musimy zaktualizować system wraz z jego repozytoriami. Aby to zrobić należy wpisać komendę:

sudo apt-get update

Po zakończeniu uaktualniania, wpisujemy kolejną komendę aktualizującą:

sudo apt-get upgrade

Jeśli w którymś momencie po wpisaniu tej komendy, aktualizowanie zostanie samoczynnie przerwane, należy nacisnąć klawisz „Y” – oznaczający „yes” i potwierdzić to enterem. Aktualizacja powinna się wznowić.

Teraz jedyne, co nam pozostało, to instalacja głównego składnika – HomeBridge. Aby to zrobić, wystarczy wpisać komendę:

curl -sSL goo.gl/Ksdhph | bash

Po kilku minutach instalacja powinna zostać zakończona. Aby sprawdzić czy wszystko zostało prawidłowo zainstalowane, należy do terminala wprowadzić komendę:

homebridge

Jeśli waszym oczom ukaże się kod QR, wraz z ośmio-cyfrowym kodem otoczonym prostokątem, pod którym widnieje napis: „Homebridge is running on port (…)”, to gratulacje! Właśnie prawidłowo przeprowadziliście instalację oprogramowania HomeBridge na waszym Raspberry Pi.

Mam nadzieję, że dzięki temu poradnikowi bez najmniejszych problemów przebrnęliście przez cały proces instalacyjny. W kolejnej części poradnika przedstawię, jak w najprostszy sposób skonfigurować urządzenie zewnętrznej firmy z HomeBridge, na przykładzie LED-owych pasków i kolorowej żarówki od Xiaomi.

Jeśli Macie jakieś pytania, zapraszam do sekcji komentarzy.

POLECAMY RÓWNIEŻ:

Co nas czeka w 2019 roku w segmencie TV?