Test & utvärdering av Home Assistant

Vid upprepade tillfällen har vi fått tips via bloggen att testa Home Assistant, här kommer därför ett första test.

Home Assistant är en plattform som sammanfogar olika hemautomationslösningar. Stort tack för tipsen att vi skulle testa Home Assistant, under den lilla stund jag testat har jag hittat väldigt mycket funktioner som jag saknat i mina befintliga lösningar!

Vad är Home Assistant och vad klarar det?

Vid en första koll på hemsidan ser jag att stödet för olika kringsystem är ENORMT! Nedan är ett axplock på några av de nästan 500 lösningar som går att koppla sig mot med Home Assistant.

några av de 500 supportade lösningarna

Imponerande lista! men hur komplext var det att sedan integrera mot några?

Installation

2017-01-22 – Intresset har varit stort för Home Assistant,  vi har därför börjat med en komplett guide: https://www.automatiserar.se/guide-home-assistant/

Enligt informationen kan det installeras på Windows, Linux och Mac. Det enda som krävs är att språket Python finns installerat. Grundinstallationen av Home Assistant tog mig ca 10 – 15 minuter.

Till en början funderade jag på att installera Home Assistant på Windows, men det blev istället på en Rapsberry Pi (RPI) installationen utfördes. Detta för att samla all min hemautomation på samma RPI. All info om de tidigare installationerna jag gjort på RPI:en finns i: Guide Raspberry Pi

grafana, node-red, mosquitto, dht22, influxdb
Allt detta på endast en RPI!

För att göra en installation är det enda som krävs Python 3.5, kommandot nedan är allt som behövs egentligen.

# installationen sköts automatiskt i Python via följande kommandon, rad 2 startar gränssnittet på http://datorip:8123 
pip3 install homeassistant
hass --open-ui

Jag valde dock att utgå från följande guide: Manuell Installation på Raspberry Pi

Efter att ha  gått igenom guiden på länken ovan och avvaktat ca 3 – 5 minuter efter sista steget så kunde jag logga in på min RPI via http://rpi2ute/:8123

Home Assistant första uppstarten

Man möts av en väldigt enkel sida utan allt för mycket valmöjligheter.  Hämtade en kaffe och började sedan kolla runt i gränssnittet, när jag var tillbaka hade jag min Samsung TV och Chromecast tydligen inkluderats automatiskt! Nu blir jag lite smått imponerad av Home Assistant!

chromecast och samsung tv med Home Assistant
ChromeCast och Samsung TV inkluderade.

Genast började jag kolla vad man kunde göra med dessa två enheter i Home Assistant. ChromeCast hade en funktion ”Text to Speak”. Testade att skriva lite text och skicka, till min förvåning växlade tv:n till ChromeCasten, öppnade en mediaspelare och läste upp texten jag skickade riktigt bra!

ChromeCast Text to Speek

Testade även knappen för att stänga TV:n viket fungerade helt ok… Det gick dock inte att starta tv:n via samma knapp!

Lägga till och hantera enheter

Efter att ha kollat runt i gränssnittet började jag leta efter hur man lägger till egna enheter. Lite läsande på Home Assistants hemsida förklarar hur allt ska skötas via en YAML fil som ligger under installationssökvägen.

Börjande med att lägga till stöd för MQTT som min Node-Red nyttjar, detta görs genom att lägga till följande rader i YAML filen:

# Under sökvägen: /home/homeassistant/.homeassistant öppna: configuration.yaml

mqtt:
  broker: 10.20.30.40
  port: 1883
  client_id: home-assistant-1
  keepalive: 60
  username: automatiserarse
  password: automatiserarse
  protocol: 3.1
  birth_message:
    topic: 'automatiserar/ha/status'
    payload: 'online'
    qos: 1
    retain: true
  will_message:
    topic: 'automatiserar/ha/commands'
    payload: 'offline'
    qos: 1
    retain: true

Började sedan kolla hur man skapar knappar i Home Assistant, dessa kopplades sedan till MQTT.  För att skapa tre knappar och koppla dessa mot MQTT:

# Tre knappar kopplade till MQTT
switch:
  - platform: mqtt
    name: "Arduino lampa 1"
    command_topic: "automatiserar/ha/command/lampa1/set"

  - platform: mqtt
    name: "Arduino lampa 2"
    command_topic: "automatiserar/ha/command/lampa2/set"

  - platform: mqtt
    name: "Arduino lampa 3"
    command_topic: "automatiserar/ha/command/lampa3/set"

Jag sparar konfigurationen i configuration.yaml och startar om Home Assistant tjänsten. Nu konfigurerar jag node-Red att lyssna på MQTT kön och kopplar ihop detta med mina befintliga MQTT kopplingar från Vera.

Nod-Red med MQTT till home assistant

 

Letade nu fram knapparna i Home Assistants gränssnitt, de med röda streck under är de jag nyss la till i configuration.yaml. tre arduino knappar via MQTT på Node-Red

Testade att trycka på knapparna i Home Assistant, direkt klickar reläet till!!! Nu har jag fått Home Assistant att fungerar med Arduinon via MQTT! Dvs 3 st 10W led belysningar kan nu styras av Arduinon med hanteras via Vera och Home Assistant parallellt.

Arduino med MQTT via Node-Red och Home Assistant
Arduinon uppkopplad på nätverket, lyssnar på kommandon via MQTT.

 

Integration med VERA

Med höga förväntningar bestämde jag mig för att se hur mycket jobb det var att få in Vera med Home Assistant… Besvikelsen när jag inser att det är följande TVÅ rader som behövs för att ta in de mesta från min Vera!

Adderade följande rader i configuration.yaml

# Konfiguration av Vera
vera:
  vera_controller_url: http://IPTILLVERAN:3480/

Startade om Home Assistant tjänsten och ser nu de flesta av mina enheter i Veran.

Vera och Home Assistant

Att byta status på enheterna som kom från Vera fungerade Direkt! Märkte dock att kameror från Vera saknades, gick dock att addera även dessa via lite configuration i YAML filen.

När jag kollade vad man skulle köra för app på telefonen såg jag att dom visade hur man även där skulle köra via webbsidan och spara ut en länk på telefonens snabbstartsskärm.

Det som jag sett som en eventuell begränsning för att köra detta när man inte är hemma är följande:

  • Verkar bara gå att köra ett lösenord (inte gjort någon djupdykning här ännu)
  • Man behöver en publik IP adress för att kunna få tillgång till Home Assistant externt.
  • Tycker du inte om att editera konfigurationsfiler är nog inte Home Assistant rätt för dig.

Såg några riktigt intressanta integrationer mot Tasker som jag kommer att testa inom kort med. Att konfigurera upp allt så här långt tog en kväll, vilket inte är länge med tanke på vad man kan göra.

Är det av intresse att jag kompletterar guiden jag gjorde för Node-Red,Grafana, influxdb och mosquitto med detta?

[poll id=”20″]

2017-01-22 – Intresset verkade stort: därför finns nu en guide: https://www.automatiserar.se/guide-home-assistant/

 

// Ispep

16 reaktioner på ”Test & utvärdering av Home Assistant”

  1. Coolness Ispep! Jag gillar din MQTT-integration med Home-Assistant och Node-Red! 🙂

    Ett tips till folk som inte sett det; En YouTube-kanal som har mycket kring Home Assistant är ”BRUH Automation”: https://www.youtube.com/channel/UCLecVrux63S6aYiErxdiy4w/videos

    Det känns som det är mycket mer/snabbare utveckling inom HomeAssistant än MicasaVerde Vera, eller vad säger ni? Speciellt när man tittar på mängden plugins som tillkommit till HomeAssistant under hösten 2016 (https://github.com/home-assistant/home-assistant/graphs/contributors).

    1. Tackar!
      Tänkte försöka nyttja MQTT och Node-Red som nav till alla system. Förhoppningen är att kunna testa nya system parallellt utan att behöva bygga om från grunden. Har ett Razberry Z-wave och Tasker som ska integreras och testas mer. Tror det får ingå om det blir en guide på Home Assistant i framtiden 🙂

      De blir till att kolla den där Youtube kanalen, mycket bra info där som det verkar! Home Assistant kommer nog att växa fort framöver med! Bara man kom igång och började och ser fördelarna så blir man fast. Såg idag att det fanns stöd för röstkommandon, vilket öppnar ännu mer funktioner! 🙂
      Fördelen för Home Assistant är att den kan installeras på allt erbjuda bra funktionalitet.
      // Ispep

  2. Mycket uppskattat att ni tittar på lite olika alternativ inom området hemautomatisering!

    Home Assistent verkar vara det bästa och stabilaste open source-alternativet i dagsläget, möjligen med konkurrens från OpenHAB 2 som dock fortfarande är i betastadiet.

    Ser fram emot fler guider med Home Assistant och tack för ett bra jobb!

    mvh

  3. Wow!!! Riktigt intressant, och med kommentarerna ovan så blev det ännu mer spännande. Våren är räddad! 😀

    Det som inte framgår så tydligt är hur man får tag i Home Assistant. Har det något att göra med Google Home? En rad i början av artikeln hade nog underlättat.

    ”Man behöver en publik IP adress för att kunna få tillgång till Home Assistant externt.”

    Har din router där hemma stöd för DDNS så kan du få ett eget gratis domämnamn ifrån t.ex. dyn.com

    1. Det enklaste sättet att ”få tag på” Home-Assistant skulle jag säga är att tanka ner den förberedda Image’n ”HASSbian” (Home Assistant’s egen Raspberry PI image) från https://home-assistant.io/getting-started/installation-raspberry-pi-image/ och sedan bara skriva Image’n till ett SD-kort och boota upp Raspberry’n.

      Liten alternativ syn på publikt-ip ”begränsningen” i testet; Att man behöver ett publikt ip för att ansluta sig till sitt hemmanät känns för mig personligen att föredra då det känns obra att ha olika appliances (typ Vera’n) som sätter upp ssh-tunnlar innefrån ens egna privata nätverk tvärs över atlanten till företagsägda servrar bara för att kunna fjärr-administrera prylen i fråga. Det är så pass enkelt att sätta upp tunnlar (exempelvis L2TP) på moderna SmartPhones till sin hemmarouter (där det finns flera bra alternativ). Det minskar risken för troll i hemma-nätet.

      1. Helt sant man exponerar och skapar en ”bakdörr” in i nätverket med Vera. Jag har idag inte något problem med begränsningen med publik ip adress (har två!). Men det är inte alla leverantörer som erbjuder det, vilket gör det lite komplicerat att få till accessen hem.
        När jag snabbt testade razberry (https://z-wave.me/) såg jag att dom gör nått liknande som Vera gör. dvs för att ge extern access skapas en tunnel upp ur nätverket.. Kändes inte lika bra som när Vera gjorde det..

        // Ispep

  4. Grymt bra!
    Jag har bara skrapat lite på ytan vad det gäller Home Assistant och installerat det på en av mina Pi’s. Jag saknar dock fullt stöd för Tellstick Duo, vilket inte verkar finnas.

  5. Gillart!
    Har själv börjat leka med HA pga guiden
    Keep up the good work!
    Nåt att göra en guide på att fixa kryptering via Let’s encrypt för att få säkra anslutningar till HA när man kör externt samt att fixa autouppdatering på certifikatet då detta går ut var 90 dag.

    1. Tackar.
      Har nu testat att köra certifikat via Let´s encrypt och publicerat nåbar HA. Fungerar riktigt bra när det väl är uppsatt. Tackar för tipset, ska lägga till de i guiden med.
      Har du valt att kopiera certen från /etc/letsencrypt eller gav du ditt konto som kör HA behörigheter där?
      Dock upptäckt lite saker som börjar strula sedan. Bland annat så man göra lite korrigeringar i Iframes. Även haft lite mixter med att köra samma DNS namn både publikt och internt. TTS lyckades inte skicka röstkommandon direkt heller, håller på att kolla om det var tillfälligt eller om det var orsakat av HTTPS.

      // Ispep

      1. Jag har för tillfället gett HA access till mappen men har hittat en script som skulle passa.
        Det kollar certet, kör en renew om det krävs samt kopierar certen till vald mapp.
        Du hittar det här:
        https://community.home-assistant.io/t/lets-encrypt-renewal-while-self-hosting/6236

        Får du iframes att lira med kryptering så vore det grymt. DNS uppslag är fixat så man som du nämner använder samma adress internt och externt.

        Inte testat TTS så får skriva upp det på ToDo-listan.

  6. Pingback: Min ImperiHome lösning |

  7. Bra läsning, jag har precis börjat köra home-assistant själv och gillar det starkt.

    Ett tips gällande konfigureringen är att bryta ut personliga/känsliga data till filen ”secrets.yaml”, ett exempel:
    home_latitude: 12.345
    home_longitude: 23.456

    I din ”configuration.yaml” skriver man sen:
    latitude: !secret home_latitude
    longitude: !secret home_longitude

    På så vis slipper man ha känsligt data i sin configuration.yaml

    1. Tack för tipset, ska fundera på att splitta min conf mer och ha min ”egna” inställningar inte en separat fil.

      Skönt att slippa manuellt redigera det varje gång 🙂

      // Ispep

Lämna en kommentar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *