fbpx Skip to content

A Homebridge-ről már volt itt korábban szó az oldalon, de ahogy múlnak az évek, úgy fejlődik a technológia is, és bizony manapság már olyan megbízható lett a Homebridge, hogy bátran ajánlom mindenkinek.

Homebridge, avagy HomeKit szerver létrehozása a Raspberry Pi-n

Mi a Hombebridge? Lényegében egy virtuális HomeKit szerver, ami pluginek segítségével kapcsolódik a nem HomeKit-képes eszközökhöz. Konyhanyelven ez egy olyan dolog, ami HomeKit-képessé teszi a nem HomeKites okos dolgaidat. Szinte mindenhez találunk manapság már plugint és csatlakoztathatjuk a HomeKit szerverünkhöz! Ilyenek lehetnek az okos konnektorok, lámpák, porszívók, TV-k, Xbox, bármi. ? Vágjunk bele!

A Homebridge alapfeltétele egy folyamatosan futó számítógép. Ilyen például a Raspberry Pi, amiből lényegében bármilyen típus megfelel, de alapjában véve mi a 3-as vagy 4-es verziót ajánljuk. Ez egy mini számítógép, amit ideiglenesen rá kell majd kötnünk HDMI-n keresztül a TV-re is, illetve folyamatosan bekapcsolva kell lennie, és LAN-on vagy Wi-Fi-n csatlakoznia a hálózathoz. Ennek menetét nem szeretném leírni, így is hosszú lesz a cikk, a lényeg, hogy vásároljunk egy Raspberry Pi-t, egy memória kártyát, legyen egy LAN- és HDMI-kábelünk, valamint egy hálózati tápegyégünk.

(Egy házra, egy memória kártyára, egy LAN és HDMI-kábelre van szükségünk az elején. Idővel a TV-hez nem kell majd csatlakoztatni!)

Először is töltsük le a Rasbian img fájlt, ez lényegében a Raspberry Pi operációs rendszere. Ehhez kattintsunk ide, majd pedig a keressük meg a Raspbian Buster Lite-ot és töltsük le vagy ZIP-ben vagy a torrent fájl segítségével. Letöltés után csomagoljuk ki, majd helyezzük át az asztalra.

Itt a cikket itt ketté is bontanám, mert készítettem egy .img fájlt, amiben mindent elvégeztem, és már a kész Homebridge szoftveren kell csak a beállításokat megtenni.

Tehát, vagy folytatjuk, és végigcsináljuk a docker, majd Homebridge pi telepítést vagy pedig letölthetjük ezt a 4GB-os .img-t fájlt (kizárólag 4GB-os vagy nagyobb kapacitású SD-kártyára megy fel sajnos), akkor csak már az alábbi néhány lépésre van szükség.

Másoljuk fel a kártyára az .img fájlt

Tehát az első lépésben felmásoljuk az .img fájlt az SD-kártyára. Ezt ne úgy értsük, hogy egyszerűen csak ráhúzzuk, hanem magát a lemezképet kell kiírni rá. Ehhez számos alkalmazás segítségünkre lehet, de én a Mac-en a Terminalt fogom használni, mivel ez minden esetben működik. Ehhez helyezzük be a kártyát egy olvasóba majd csatlakoztassuk a Mac-re. Nyissunk egy Terminalt, amit például a command+space együttes megnyomásával tudunk megtenni, majd írjuk bele, hogy terminal, és nyomjunk entert.

Terminal parancsok

A fontosabb parancsokat a képen is láthatjátok alá is húztam kékkel. Menjünk sorba, miután az img file-ok kicsomagolva az asztalon helyezkednek el. Írjuk be az alábbi parancsokat:

  • cd Desktop/
  • diskutil list

A diskutil segítségével listázzuk a csatlakozott eszközöket itt nekünk a SD-kártya kell, látható is bekeretezve az SD-kártya, NEHOGY mást formázzunk le! Nézzük meg a tárhelyet, logikusan annyi lesz, amennyi az SD-kártya kapacitása. Jelen esetben a /dev/disk2 (external, physical) lett a neve, nyilván egy átlagos gépen ez lesz a neve, de azért figyeljünk oda, mert több merevlemez esetén más lehet a szám, az meg nyilván nem jó, ha mást formázunk le. Szóval unmountoljuk a következő parancsal:

  • diskutil unmount /dev/disk2s1

Biztosra menve érdemes unmountolni a disk2s2-t is, de ahogy a képen látszik, ezt automatikusan megtette az első parancs.

Írjuk ki rá a már letöltött .img lemezkép fájlok egyikét. Itt szakad szét a cikk: vagy a fentebb linkelt, előre elkészített .img fájlt írjuk ki, vagy az egész telepítésen végigmegyünk.

A parancsok a következők:

  • sudo dd bs=4m if=20191229_szifon_homebridge.img of=/dev/disk2 conv=sync
  • (ennél az előre elkészítettet másoljuk fel)

vagy

  • sudo dd bs=4m if=2019-09-26-raspbian-buster-lite.img of=/dev/disk2 conv=sync
  • (itt az alap rendszert másoljuk fel, és további lépések következnek)

A másoláshoz meg kell adni a felhasználói jelszavunkat – ilyenkor nem fog látszani, hogy bármit is beírnánk, de írjuk be, és nyomjunk entert. Ez a művelet akár fél órát is eltarthat! Amint készen van, a fenti képen lévő dolgokat kell látnunk!

A következő lépések csak azoknak kellenek, akik NEM az én .img fájlomat használják – ugord át ezeket a lépéseket, ha az elkészített .img-t használod!

SSH engedélyezése

Másoljunk fel egy üres, ssh nevű fájlt kiterjesztés nélkül a /boot alá az SD-kártyára. Ehhez az mv parancsot kell kiadnunk. Hozzunk létre bármilyen dokumentum kezelővel egy szövegfájlt. Ne dokumentum legyen, hanem sima txt. Tegyük ki az asztalra, majd ismét nyúljunk a Terminalhoz. Írjuk be ezt:

  • mv ssh.txt /Volumes/boot/ssh

Ezzel kiterjesztés nélkül felmásoltuk a fájlt, és berakhatjuk a Raspberry Pi kártyaolvasójába az SD-kártyánkat. El fog indulni, a TV-n pedig ezt kell látnunk:

raspberry pi IP cím

Keressük meg a képernyőn megjelenő szövegben a “My IP address is X.X.X.X” részt – ez mindenkinek más lesz. Erre az IP-címre kell csatlakozni, hogy folytassuk a telepítést.

SSH csatlakozás és Docker + Homebridge telepítése

Csatlakozzunk a Terminal segítségével a Raspberry-hez. Ehhez az alábbi parancsra lesz szükség:

Itt rákérdez, hogy szeretnénk-e folytatni, beírjuk, hogy yes. Kérni fogja a jelszót, ami: raspberry

Ezzel lényegében csatlakoztunk a Raspberry-hez! ? Folytassuk a műveletet egy jelszócserével, mivel folyamatosan futó eszköz lesz otthon, csúnya lenne, ha valaki csak úgy belépne az alapértelmezett jeszóval. Ezt az én img fájlomnál is meg kell tenni!

  • passwd

Ezután írjuk be a jelenlegi jelszót (raspberry) majd pedig kétszer az újat. Ha ezzel készen vagyunk, frissítsük le az Raspberry Pi-t:

  • apt-get update

Amint ez végzett, jöhet a következő parancs:

  • apt-get upgrade

Itt lehet megakad majd, hogy olvassunk el valamit, ekkor nyomjuk meg a q betűt. Idő, amíg végez, szerintem itt érdemes inni egy kávét. ?

Amennyiben végzett, jön a Docker és Homebridge telepítés. A Docker azért fontos, mert mindentől szeparálva fut a Homebridge, ha több dolgot szeretnél majd futtatni a Homebridge-en, vagy akár több Homebridge-et valami miatt, akkor ez fontos lesz, így rögtön a Dockerrel kezdjük. Szerencsére más már írt korábban egy scriptet, így lényegében csak 3 parancsot kell lefuttatni SSH-n keresztül:

  • curl https://raw.githubusercontent.com/oznu/docker-homebridge/master/raspbian-installer.sh?v=2019-12-11 -o get-homebridge.sh
  • chmod u+x get-homebridge.sh
  • ./get-homebridge.sh

Amennyiben ezekkel végzett a rendszer, a következőt kell látni:

A felső IP címre csatlakozva már látható is a Homebridge szerver, a felhasználó név és jelszó admin, ezt is mindenképpen változtassuk majd meg! Előtte még jó lenne, ha a Raspberry Pi újraindítása után automatikusan elindulna a rendszer.

Először is, ha csak manuálisan akarjuk elindítani a Docker-t egy újraindítás után, akkor a következőket írjuk be, miután beléptünk SSH-n:

  • sudo su
  • cd /root/homebridge
  • docker-compose up -d

Ha viszont azt szeretnénk, hogy újraindítás után is automatikusan elinduljon, akkor a systemctl-re van szükségünk. Ehhez létre hozni egy fájlt a következő paranccsal:

  • sudo nano /etc/systemd/system/docker-homebridge.service

Ezután másoljuk bele ennek a fájlnak a tartalmát egy az egyben, majd az fn+f2 segítségével mentsük el a fájlt. Majd adjuk ki a következő parancsokat:

  • sudo systemctl enable docker-homebridge.service
  • sudo systemctl daemon-reload

Ezután futtassunk egy reboot parancsot, DE előtte jegyezzük meg az IP-t, készítsünk mondjuk egy könyvjelzőt a webes belépésről – persze a TV-re rákötve mindig kiírja majd az IP-t, ami változhat ugyan, de egy normális router nem változtatja. A fix IP cím beállítására most nem térnék ki, van elég leírás a neten.

Akik az én .img fájlomat töltötték le, innen folytassák!

Tehát most már be tudunk lépni weben keresztül a Homebridge szerverünkre, amit a TV-n látható IP:8080-as portján találjunk meg. Tehát mondjuk http://10.0.1.54:8080. Felhasználónév: admin, a jelszó pedig ugyancsak admin.

Jól látszik, hogy az én szerverem már 31 napja működik gond nélkül. Plugins alatt találjuk meg a kiegészítő plugineket.

Most egy plugint fogunk aktiválni, amivel megtanuljuk, hogy hogyan szerkesztjük a config fájlokat. Először adjuk hozzá az iPhone-on a HomeKit szerverünket – úgy, hogy az Otthon alkalmazással beolvassuk a képernyőn látható QR-kódot.

Ezután adjunk hozzá valami plugint, amire szükségünk van, én most a Twinkly-t, az okos karácsonyfa izzót fogom hozzáadni. Ehhez keressünk rá a neten a pluginre a Plugins menüpont alatt. Írjuk be, hogy Twinkly, majd nyomjunk az install gombra.

Nézzük a Config menüpontot:

Az első szekcióban megadjuk a bridge adatait, ez automatikusan ki van töltve. A Twinkly accessories-t igényel, míg mondjuk a Harmony Hub, amivel a TV-t irányítom, platforms-t. Az, hogy ide miket kell beírni, mindig függ az általunk használt eszközöktől, de a szintaktika fontos. Mindig le kell zárni a kapcsos zárójeleket, és az egyes platformok, accessory-k között vesszőt kell tenni, lásd a platform szó előtt! (A legvégén már nem kell vessző.)

Twinkly esetén az alap beállítás a weben ez:

  • },
  • “accessories”: [{
    “accessory”: “Twinkly”,
    “name”: “Christmas Lights”,
    “ip”: “192.168.4.1”,
    “allowBrightnessControl”: true
  • }]
  • }

Jól látszik, hogy én átírtam a nevét, és az IP-címét. A config fájlunkat könnyedén tudjuk ellenőrizni ezen a linken: jsonlint.com

“Röviden” így kell otthonra telepíteni egy HomeKit szervert. Bármilyen kérdésre szívesen válaszolok, de jól látszik, hogy ez nem egy rövid, és nem egy könnyű művelet, azonban megvan a gyümölcse. Ezek után már beállíthatjuk, hogy az egyes kiegészítők mikor működjetek, például ha a család minden tagja elment otthonról, lekapcsolja a lámpákat a rendszer, vagy mondjuk szóljon, ha magas a szén-dioxid és ki kellene nyitni az ablakokat. Rengeteg opció van már, a határ a csillagos ég.

Alternatíva meg a Hoobs.org, amely ugyanúgy egy előre “legyártott” SD-kártya .img fájl, amit az első lépések segítségével feltehetünk. Nekem azzal egyedül az volt a problémám, hogy nem fut dockerben, így végeredményben az egész Raspberry Pi-t felhasználja, míg az én megoldásom alatt több dolog is futhat a Pi-n.

Amennyiben hasznos volt a cikk, jelezd kérlek hozzászólás formájában, nekünk már az is elég, mindenféle támogatás nélkül! ?

Olvasd el a hozzászólásokat a közösségi oldalunkon!

Immáron, több mint 3 éve elérhető a Szifon.com közösségi portálja, ahol kérdezhetsz, valamint információt is megoszthatsz a többi Apple felhasználóval.