Anslut Home Assistant till Homekit med Homebridge

Har du en välorganiserad Home Assistant installation som du skulle gärna vilja styra med Homekit och Apples röstassistent Siri? Så här gör du.
Publicerad: november 12, 2017
Senast uppdaterad: november 12, 2017
touch_app Styrenhet
Homekit
multiline_chart Svårighetsgrad
Inte så farligt
format_list_bulleted Antal steg
10
trending_up Visningar
8764
chat_bubble_outline Kommentarer
11
star_outline Betyg
0 / 0

Förberedelser

Steg 1. Vad handlar den här guiden om link

zoom_in
  • Apples Homekit och röstassistenten Siri är ett intressant och smidigt sätt att styra dina smarta prylar. Tyvärr är antalet prylar som du kan använda med Homekit direkt väldigt begränsat.
  • Med hjälp av en mjukvara som heter Homebridge, kan du styra alla prylar du har kopplat upp till Home Assistant i Homekit. Trådfri lampor som du styr med Hue Bridge eller Conbee, Telldus 433Mhz brytare och Netatmo väderstation är bara några exempel.
  • Den här guiden visar hur du installerar Homebridge samt konfigurerar din Home Assistant för att kunna koppla upp alla prylar du har i Home Assistant till Homebridge.
  • Guiden förutser att du har igång en Home Assistant installation på en Raspberry Pi, enligt vår tidigare guide.
  • report_problem

    Den här guiden funkar INTE för Hassbian. En separat guide om hur du installerar Homekit på just Hassbian kommer snart.

done Du behöver inga verktyg eller andra tillbehör för att genomföra denna guide.

Steg 2. Installera Homebridge på din Raspberry Pi link

  • Det första du behöver göra för att koppla ihop din Home Assistant med Homekit är att installera en mjukvara som heter Homebridge.
  • Logga in på din Raspberry Pi med t.ex. PuTTY och skriv följande kommando:
    sudo apt-get install libavahi-compat-libdnssd-dev
    Detta kommando installerar ett mjukvarubibliotek som hjälper din Pi att kommunicera med bl.a. Apple-prylar i ditt lokala nätverk.
  • Tryck på ‘Y’ när Pi frågar om du vill fortsätta med installationen.
  • En till mjukvara som du kommer behöva för att kunna installera Homebridge, är npm. Efter att libavahi har installerats, skriv följande kommando i terminalfönstret:
    sudo apt-get install nodejs npm .
  • Återigen, tryck på ‘Y’ när Pi frågar om du vill fortsätta med installationen.
  • Efter att npm har installerats kan du installera Homebridge med kommandot:
    sudo npm install -g homebridge
    Installationen kommer ta några minuter.

Koppla ihop Home Assistant med Homebridge

Steg 3. Installera och konfigurera Home Assistant-tillägget för Homebridge link

  • Efter att Homebridge har installerats, kan du koppla ihop din Home Assistant med Homebridge. Skriv följande kommando:
    sudo npm install -g homebridge-homeassistant
  • Efter att installationen har slutförts, behöver du skapa en konfigurationsfil för Homebridge. Byt arbetsmappen till din hemmamapp med kommando
    cd ~
  • Skapa en ny mapp med kommando
    mkdir .homebridge
  • Och byt din arbetsmapp till den nya mappen med kommandot cd .homebridge .
  • Skapa en ny fil som heter ‘config.json’ med kommandot nano config.json
  • Textredigeraren ‘nano’ kommer öppnas. I fönstret, klistra in innehållet från filen du hittar här. Ersätt IP-adressen i raden som börjar med ”host” med IP-adress för din Home Assistant-installation och ange lösenordet för din Home Assistant i nästa raden som börjar med ”password”.
  • Tryck på Ctrl+X och sedan ‘Y’ för att spara och stänga filen.
  • Nu kan du köra igång Homebridge med kommandot homebridge.

Steg 4. Koppla upp dina Home Assistant prylar till Homekit link

  • När Homebridge är igång på din Pi, kommer den skriva ut en gigantiskt QR-kod. Det är koden du ska scanna för att ansluta Homebridge till Homekit.
  • Ta fram din iPhone / iPad, öppna appen ‘Hem’ och välj ‘Lägg till tillbehör’.
  • Scanna QR-koden som Homebridge har skrivit ut i din Raspberry Pi-terminal. Homekit kommer varna dig att du försöker att lägga till ett icke-certifierat tillbehör. Tryck på ‘Lägg till ändå’.
  • info

    Om QR-koden har hunnit försvinna från terminalfönstret, scrolla uppåt: Home Assistant skickar meddelanden till Homebridge nästan varje sekund.

  • Homekit kommer nu ansluta sig till din Home Assistant installation…
  • … och importera alla enheter den hittar i Home Assistant. Du kan nu gruppera dem i rum, lägga enheter till favoriter och skapa automationer.

Starta Homebridge automatiskt

Steg 5. Konfigurera Homebridge att starta varje gång du startar om din Raspberry Pi link

  • För att inte behöva starta igång Homebridge manuellt varje gång du startar om din Raspberry Pi, kan du konfigurera den att starta automatiskt. Gör så här.
  • Skapa en ny fil med kommandot sudo nano /etc/default/homebridge
  • I dialogfönstret som öppnas, klistra in innehållet från den här filen.
  • Spara och stäng filen med ‘Ctrl+X’ och sen ‘Y’.
  • Ta reda på var din Homebridge installation finns med kommandot which homebridge.
  • Notera adressen som skrivs ut i terminalfönstret, du kommer behöva den alldeles strax.
  • Skapa en till ny fil med kommandot
    sudo nano /etc/systemd/system/homebridge.service
  • I fönstret som öppnas, klistra in innehållet från den här filen. Dubbelkolla att adressen i raden som börjar med ‘ExecStart’ är samma som du fick i svar från kommandot which homebridge förut.
  • Återigen, spara och stäng filen med ‘Ctrl+X’ och ‘Y’.

Steg 6. Skapa konfigurationsfiler för att Homebridge ska kunna startas automatiskt link

  • Skapa en ny användare som kommer ‘äga’ homebridge-tjänsten på din Pi med kommandot
    sudo useradd --system homebridge
  • Skapa en ny mapp för konfigurationsfiler med kommandot
    sudo mkdir /var/homebridge
  • Kopiera dina befintliga konfigurationsfiler till nya mappen med kommandon:
    sudo cp ~/.homebridge/config.json /var/homebridge/
    och
    sudo cp -r ~/.homebridge/persist /var/homebridge
  • Byt ‘ägaren’ av mappen ‘/var/homebridge’ till användaren ‘homebridge’ med kommando
    sudo chown -R homebridge:homebridge /var/homebridge
  • Ladda om mjukvaran som håller koll på alla tjänster som är igång på din Pi med kommando:
    sudo systemctl daemon-reload
  • Slå på tjänsten ‘homebridge’ med kommando
    sudo systemctl enable homebridge
  • Och till sist, starta igång homebridge-tjänsten med kommando
    sudo systemctl start homebridge
  • Du kan alltid kolla läget av homebridge-tjänsten med kommandot
    sudo systemctl status homebridge
  • Så här ska det se ut.

Ytterligare konfiguration för dina Home Assistant enheter

Steg 7. Så gömmer du Home Assistant-enheter för Homekit link

  • Ibland kan det vara nödvändigt att ‘gömma’ vissa enheter från Homekit. I mitt fall vill jag t.ex. styra mina Lifx och Nanoleaf Aurora lampor direkt, samt anser att vissa ljusgrupper som jag använder i Home Assistant kommer jag aldrig använda med Homekit.
  • I Home Assistant, tryck på ‘<>’ ikonen och hitta namn på alla enheter du vill gömma från Homekit.
  • Öppna Home Assistant konfigurationsfilen ‘customize.yaml’ och ange alla enheter du vill gömma en efter varandra i en rad, och i nästa rad skriv ‘homebridge_hidden: true’.
    Så ser det ut för mig:
    light.lifx_20ebf7:
      homebridge_hidden: true
    light.lifx_227f83:
      homebridge_hidden: true
    light.myaurora:
      homebridge_hidden: true
    light.katterna:
      homebridge_hidden: true
    light.all_hue_lights:
      homebridge_hidden: true
    
  • Starta om först Home Assistant och sedan Homebridge med kommandon
    sudo service home-assistant restart
    och
    sudo service homebridge restart

Steg 8. Sensorer i Homekit link

zoom_in
  • Till skillnad från Home Assistant som anser att allt som skickar in något slags data kan räknas som en sensor, Homekit är väldigt kräsen.
  • I dagsläget stödjer Homekit bara binära sensorer av typer gas, moisture, motion, occupancy, opening och smoke samt sensorer för luftkvalitet, co2-halt, luftfuktighet, ljus och temperatur.
  • Du måste explicit ange device_type i din sensorkonfiguration för att Homekit ska kunna se och använda den.
  • I praktiken innebär det att om du, t.ex. vill använda din Sensative strips eller liknande dörr/fönstersensor i Homekit, måste du eventuellt göra om den till en binary_sensor med hjälp av komponenten template_sensor. Ett exempel på hur du gör detta hittar du här.
  • Och även efter att du har konfigurerat dörrsensorn som en binary_sensor, kommer den synas i gruppen ‘Ett tillbehör styrs’ istället för gruppen ‘En sensor känner av något’ när du skapar en automation med den i Homekit. Det spelar ingen roll i praktiken, men kan vara bra att känna till för att undvika förvirring.
  • Homekit tillåter inte heller att använda temperatursensorer i automationerna som du skapar i Homekit.
  • Mer om hur du konfigurerar sensorer för Homekit och vilka typer av sensorer som stöds kan du läsa här.

Steg 9. Lite om rullgardiner / covers link

  • Homekit stöjder två typer av s.k. ‘covers’: ‘rollershutter’ som används för rullgardiner och ‘garage_door’ som används för garagedörrar.
  • Skillnaden mellan de två typer i praktiken är att typen ‘garage_door’ stödjer bara lägen ‘stängt’ och ‘öppet’…
  • …däremot med typen ‘rollershutter’ kan du ställa in exakt öppningsgrad för din rullgardin. Detta funkar dock bara för rullgardiner som styrs via ett protokoll som stödjer tvåvägskommunikation såsom Z-Wave.
  • Om din rullgardin styrs via ett protokoll som inte rapporterar exakt läge för din rullgardin (t.ex. en 433Mhz motor från m.nu) så kommer du inte kunna ange exakt öppningsgrad för gardinen med reglaget i Homekit, utan bara öppna eller stänga den helt.
  • Du kan fortfarande använda ‘rollershutter’ typen även för en 433Mhz-styrd rullgardin, men den kommer bara reagera om du drar slidern hela vägen upp (för att öppna) eller ner (för att stänga).
  • När du ansluter dina rullgardiner till Homekit via Homebridge, kommer Homekit automatiskt anta att dina rullgardiner är garagedörrar istället för rullgardiner.
  • För att ändra detta, kan du ange enhetstypen i customize.yaml:
    cover.tildas_gardin:
      homebridge_cover_type: rollershutter
    

Steg 10. Så funkar Home Assistant automationer och scripts i Homekit link

  • Både automationer och scripts du har skapat i Home Assistant kommer importeras i Homekit när du aktiverar Homebridge och synas som reglage (switches).
  • Du kan även manuellt byta ikon för en skript eller automation till fläkt eller lampa istället.
  • Efter att du har importerat dina automationer och scripts i Homekit, kan du aktivera dem med röstassistenten Siri.
  • Skillnaden mellan att aktivera / inaktivera en automation och en skript är att om du aktiverar / inaktiverar en automation, kommer den köras / inte köras vid tillfället som den är tänkt att köras, till exempel vid solnedgång.
  • När du aktiverar en script, kommer den köras omedelbart.
favorite_border

Tack till m.nu, Lifx, Sensative, IKEA Sverige och Joakim Rydell för lån av produkter som behövdes för att genomföra denna guide.

Diskussion

    • Jag fick nyss igång det på Hassbian, det var en relativt enkel process. Försöker mig på att beskriva hur jag gjorde, kansk kan fungera som en enkel guide under tiden. Jag kan inte garantera att det fungerar men det löste åtminstone problemet för min del.

      1. Koppla upp mot din Raspberry med SSH eller hur du nu vill ansluta (På en mac, öppna terminal och skriv SSH pi@ipadresstilldinraspberry

      2. Skapa ett script som heter install_homebridge.sh genom att skriva:
      sudo nano install_homebridge.sh

      3. Kopiera in alla kommandon från den här sidan (rad 1 till 98) i scriptet du skapar. Tryck ctrl+x och spara  https://gist.github.com/lindsaymarkward/22f45af5a6f05b3908e1f96d064104ba

      4. Kör scriptet genom att skriva:
      sudo sh install_homebridge.sh

      5. Starta om din Raspberry pi genom att skriva
      sudo reboot

      6.  I terminal skriv:
      cd /var/lib/homebridge

      7. Editera filen config.json genom att skriva
      nano config.json

      8. Byt lösenord  under ”Password”i filen till det lösenord du har satt till din raspberry. Notera även numret som står under ”Pin” det är det här numret som sedan anges i Home-appen för att lägga till Homebridge som en enhet.

      9. Starta om din Raspberry gneom att skriva:
      sudo reboot

      9. Starta Home-appen på din ios-enhet och lägg till Homebridge med den pinkod du skrev upp tidigare.

       

      Lycka till!

       

  • Hej,

    Tack för en bra guide. Jag har dock lite problem med automatisk start.

    Tjänsten går igång men fastnar när den ska hämta in de enheter som är ansluta till min Hue-brygga. Det tar även en liten stund innan Hue-enheterna syns i gränssnittet för Home Assistant efter uppstarten. Väntar jag tills de kommit med där och sedan kör ”sudo service homebridge restart” så kommer allt med som förväntat i Hem appen.

     

     

  • Maija, jag följde guiden för att få autostart!

    Efer det får jag bara upp 5 saker i HomeKit?

    Hur gör jag för att ta bort allt som har att göra med autostart. Det var enklare att alltid starta om Homebridge manuellt, då fick jag iaf upp allt.

    Mvh Rune

    P.s. Dina guider är toppen för en novis som jag! Har funkat för det mesta, men inte denna gång.

    • Hej! Det lät ju jättemystiskt. Kanske har du flera olika konfigurationsfiler för Homebridge där en av dem innehåller inte information om alla tillägg du har installerade? Dvs om din homebridge-konfiguration ursprungligen fanns inte i filen ~/.homebridge/config.json utan någon annanstans så har den inte följt  med till autostart-tjänsten. Isf börde problemet lösa sig om du kopierar din homebridge-konfigurationsfil till /var/homebridge/

      Men i vilket fall, om du

      tar bort den här filen: /etc/systemd/system/homebridge.service

      med kommando sudo rm /etc/systemd/system/homebridge.service

      så kommer homebridge inte längre startas automatiskt.

    • Jag kollade nu och den hade kopierats rätt, men nu tog jag bort filen du sa och då funkar allt perfekt igen!

      Än en gång – tack för hjälpen!

      Är ju helt nybörjare, och 73 år, så det är inte helt enkelt!

      Du kommer nog att få fler frågor! 😊

  • Hej och tack för en bra guide.

    Gick igenom guiden och fick upp Home Assistan som ett tillbehör i Homekit med texten kunde inte ansluta. Såg att det var något fel med config.json.

    Raderade Home Assistant i Ipaden genom långtryck på ikonen. Editerade config.json och körde igång homebridge. Scannade QR-koden och får svaret:

    ”Tillbehöret har redan lagts till

    Om du vill lägga till det här tillbehöret i ditt hem så måste du först nollställa det.

     

    Normalt när man raderar ett tillbehör så trycker man på tillbehörets resetknapp, men hur gör man med Homebridge?

    Kan man skriva något kommande för detta.

    Har raderat Mitt hem i Ipaden under Lägg till hem. Har även skapat nytt hem med nytt namn men ovanstående text kommer ändå upp när man ligger till tillbehör.

     

    • Japp, nu fungerar det. Svara på min egen fråga ifall det är någon mer som råkar ut för samma problem.

      Svaret finns i json-filen:

       

      ”bridge”: {

            ”name”: ”Homebridge”,

            ”username”: ”CC:22:3D:E3:CE:30”,

            ”port”: 51826,

            ”pin”: ”031-45-154”

       

      Ändra ”username”

      Ändra ”pin”

       

       

  • Får endast upp

    pi@hassbian:~ $ sudo chown -R homebridge:homebridge /var/homebridge
    chown: invalid user: ‘homebridge:homebridge’

    när jag försöker göra steget att automatiskt starta homebridge 🙁 I övrigt var guiden klockren!

  • Liksom Rune här ovan skrev såg faller prylar bort för mig då jag aktiverar autostart. Allt från Telldus live försvinner, och allt annat finns kvar. Startar jag manuellt är det tillbaka. Någon som har någon lösning?

    • Har också följt guiden för autostart. Efter en omstart så är alla Telldus grejer borta från Ipaden det enda som finns kvar är namnet på rummen.

       

  • Grym guide, som vanligt. Sitter dagligen på din hemsida och kollar och lär mig. Men jag får inte samma fina status som du när du skriver sudo systemctl status homebridge.

    Jag får en massa varningar där det står Please fix your application to use the native API of Avahi!

    Har dock ingen aning om vad det är, får kollar närmare på det. Men oavsett, grym guide! =)

  • Bra guide !

    Jag fick dock problem så jag installerade HAssIo på min raspberry pi   .   Gick till Hassio iconen i menyn , därefter valde jag en ny adress och klistra in vid add-on repositories  (Configure which add-on repositories to fetch data from. One repository per line)   som den hämtade hem nya addons .. Ett av dem var addon : Homebridge för Siri   🙂     Klickade på den och installerade sen var det igång på nolltid . Busenkelt ..

    Här finns addon adressen:   https://github.com/hassio-addons/repository

    En enkel video jag följde :-)   https://youtu.be/A_LmQ5OlofY

    //Lycka till :-) 

  • Hej,

    Tack för en bra guide! Allt funkade perfekt förutom autostart-delen. Allt ser ut som din screenshot och jag får inte några varningsmeddelanden, men jag hittar inte homebridgen. Jag försöker sedan köra ”homebridge” för att starta på vanligt vis, detta funkar inte längre. Jag provade med ditt tips om att radera homebridge.service. Den försvinner men jag kan fortfarande inte starta homebridge på vanligt vis. Hur återställer jag det helt och hållet?

  • Vad tyckte du om guiden? Funkade allt så som du förväntade dig? Stötte du på några problem? Lämna en kommentar!

    keyboard_arrow_up