Fortsätt till huvudinnehåll

Min nuvarande hemautomationsinstallation

Sen jag fick en begagnad Tellstick Net för en massa år sen har jag alltid haft någon form av hemautomation igång. Sedan 2015 nån gång har basen varit Home Assistant med lite olika hårdvara för att kunna kommunicera på ett antal trådlösa protokoll.

Efter ett misslyckat försök att få en Raspberry Pi 3B att fungera tillförlitligt kombinerat med en USB-hubb och en extern SSD blev det istället ett skifte till docker-containers för varje mjukvara som krävs för att kommunicera med den hårdvara jag vill använda, snurrandes på min befintliga hemserver som även sköter lagring och backup.

Nedan följer en kort sammanställning över vilken hård- och mjukvara jag nyttjar, samt en kortfattad steg-för-steg guide som beskriver hur installationen gick till.

Hårdvara:

  • Min hemserver snurrar på en mini-ITX Atom N330 med 4Gb ram, en ssd för os:et (Ubuntu 20.04) och en raid-10-array för lagring av foton mm.
  • Zigbee: ljuskällkor från IKEA och Philips samt sensorer (magnet, temperatur, lufttryck, rörelse mm) från IKEA och Aqara nås via en Conbee-sticka (första versionen)
  • Z-wave: en Aeotek Zwave Gen 5-sticka används främst för att kommunicera med en Fibaro Smart Implant som styr en gammal garageportsöppnare
  • 433MHz: en RFXtrx433E för att styra en massa gamla 433MHz-strömbrytare och dimmers
  • Nätverk (trådat och wifi) består av Unifi-prylar (accesspunkt, switch, brandvägg, controller)
  • Kamera, ringklocka, ett par brandvarnare och några Home Mini från Google Nest
  • En drös med Chromecast och Chromecast Audio

Installation

  1. Installera Ubuntu Server 20.04.3LTS från officiell avbild
  2. Installera docker
    1. sudo apt install docker.io
  3. Docker-container för unifi controller:
    1. mkdir ~/unifi-config
      sudo docker run -d --name=unifi-controller -e PUID=1000 -e PGID=1000 -p 3478:3478/udp -p 10001:10001/udp -p 8080:8080 -p 8443:8443 -p 1900:1900/udp -p 8843:8843 -p 8880:8880 -p 6789:6789 -p 5514:5514/udp -v ~/unifi-config:/config --restart unless-stopped ghcr.io/linuxserver/unifi-controller
    2. OBS! Glöm inte att sätta “Override inform host” under inställningarna i Unifi, annars skickar controllern den interna Docker-IP:n istället och adopt fungerar inte!
    3. Mer instruktioner finns här: https://github.com/linuxserver/docker-unifi-controller/pkgs/container/unifi-controller
    4. Med ovan så nås Unifi controllern via serverns IP-adress på port 8443
  4. Docker-container för Home Assistant:
    1. mkdir ~/hass mkdir ~/hass/config
      sudo docker run -d --name homeassistant --privileged --restart=unless-stopped -e TZ=Europe/Stockholm -v ~/hass/config:/config --network=host ghcr.io/home-assistant/home-assistant:stable
  5. Docker-container för deConz:
    1. mkdir ~/deconz sudo docker run -d --name=deconz --restart=unless-stopped -p 80:80 -p 443:443 -v /etc/localtime:/etc/localtime:ro -v ~/deconz:/opt/deCONZ --device=/dev/ttyUSB0 deconzcommunity/deconz
  6. Docker-container för Z Wave JS:
    1. mkdir ~/zwavejs sudo docker run -d --name=zwaveje --restart=unless-stopped -p 8091:8091 -p 3000:3000 --device=/dev/serial/by-id/usb-0658_0200-if00:/dev/zwave -v ~/zwavejs:/usr/src/app/store zwavejs/zwave-js-ui:latest
  7. Docker-container för Nginx Reverse Proxy Manager:
    1. mkdir ~/reverse-proxy
      mkdir ~/reverse-proxy/data
      mkdir ~/reverse-proxy/letsencrypt
      sudo docker run -d ––name=reverse-proxy -p 82:80 -p 81:81 -p 444:443 -v ~/reverse-proxy/data:/data -v ~/reverse-proxy/letsencrypt:/etc/letsencrypt --restart unless-stopped jc21/nginx-proxy-manager:latest
    2. Nu når du adminpanelen på http://localhost:81/nginx/proxy
    3. Lägg till reverse proxy för Unifi och Home Assistant
    4. Glöm inte att aktivera Websockets support, Force SSL och HSTS enabled! (utan websockets support går det inte att logga in till Home Assistant via reverse proxyn)
  8. I Home Assistant aktiverar du integrationerna för RFXtrx, deConz, Z-Wave JS
  9. I Home Assistant aktiveras även integration mot Google Assistant enligt officiella dokumentationen

Kommentarer

Populära inlägg i den här bloggen

Samba mount script

Först måste du installera filsystemet som ska användas för monteringen: sudo apt-get install smbfs Skapa sen en mapp att montera nätverksutdelningen i: mkdir mappnamn Nu är det bara att montera nätverksutdelningen i mappen: sudo mount -t cifs //server/utdelning /monteringspunkt Om du behöver ange ett användarnamn och lösenord för att nå utdelningen skriver du: sudo mount -t cifs //server/utdelning -o username=MyUsername,password=MyPassword /monteringspunkt Om du vill logga in anonymt via ett gästkonto skriver du: sudo mount -t cifs //server/utdelning -o username=anonymous,guest /monteringspunkt För att slippa skriva in denna rad för varje utdelning vi vill montera varje gång vi har startat om datorn vill vi gärna skriva in det i ett script där vi definierar samtliga utdelningar vi vill montera och som vi, om vi vill, kan köra automatiskt vid varje inloggning. Vi börjar med att skriva ett script: #!/bin/bash # this script mount smb shares on jimmys server echo "Mounting: Utdelning.

Vad är Ubuntu?

Ubuntu är en helt gratis linux-distribution baserad på Debian och GNOME men innehåller en hel del extra för att göra det lättare för användaren. Det släpps nya versioner var sjätte månad och man har ett tydligt fokus användaren och användarvänlighet. Du kan välja att tanka hem eller skicka efter en gratis installtionsskiva när som helst och installationen går på ett kick. När systemet väl är igång kan du med några få knapptryck installera extra programvara, installera nya teman och justera ditt operativsystem så att du får det precis som du vill ha det. Vill du läsa mer? Se ubuntu.com - där du också kan tanka ner installationsskivan, eller se Ubuntus svenska sida ubuntulinux.se

Är Windows ett virus

Ett virus är något som: - Försökar sig snabbt. - Använder datorns systemresurser, och sackar därigenom ner datorns kapacitet. - Då och då får din hårddisk att krascha. - Du får genom att skaffa värdefulla program, där viruset hakar på. - Då och då får användaren att tro att hans/hennes dator är för långsam så att ny hårdvara införskaffas Fram till nu så verkar det faktiskt som om Windows är ett virus, men det finns vissa olikheter: Virus kan köras på de flesta systemen, är universellt kompatibla och är välskrivna av sina upphovspersoner. Deras programkod är faktiskt snabb, kompact, effektiv och de har en benägenhet att bli mer och mer sofistikerade vid varje ny version. Så är det - Windows är inte ett virus.