Installera zigbee2mqtt med Home Assistant 2023

Del 2 – Installera Mosquitto broker och Zigbee2mqtt på Home Assistant

Det här är det tredje inlägget i serien ”Guide För Nybörjare Med Fokus På Home Assistant Och Homey”, och detta är det andra inlägget fokuserat på Home Assistant. Den första inlägget om Home Assistant kan du läsa här: Allt som behövs från start för att köra igång med Home Assistant. Vi kommer fortsätta den här guiden därifrån den tog slut.

Här blir det fullt fokus på att installera en säker Zigbee2mqtt med Home Assistant och säkerställa att all konfiguration blir korrekt från start. Vi kommer gå in en hel del i varför det ser ut som det gör, och hur du kopplar Zigbee sensorer till Home Assistant sedan, samtidigt berättar vi om detaljerna runt lösningen. Detta gör att du i framtiden får ut mer av din Home Assistant, dessutom får du en smidig guide som innehåller allt som behövs.

Följande tekniker kommer vi testa i kombination med Homey och Home Assistant.
Vi har nu börjat lägga till några av de enheter du ser på bilden.

Nu har vi skrivit den här guiden så att du både som en nybörjare ska få med dig alla grunder som behövs. Men vi har delat upp den så att känner du att du redan behärskar allt och bara vill få en aktuell guide för att installera Zigbee2mqtt, då kan du hoppa vidare här: Installation av Zigbee2mqtt 2023

Vad kommer du hitta i det här inlägget

  • Du kommer lära dig hur du installerar tillägg och hittar runt i Home Assistant, du kommer även lära dig en del felsökning.
  • Du kommer få se hur enkelt du installerar Mosquitto broker för att få MQTT stöd ( Förklaring på vad det är och varför det är bra )
  • Hur du installerar tillägg och hur du redigerar filer i Home Assistant.
  • Vilken hårdvara och mjukvara som behövdes för att komma igång.
  • En säker installation av Zigbee2Mqtt (rätt pan_id och network_key).
    • Uppdatering av firmware i Sonoff Zigbee 3.0
    • Installation av Zigbee2Mqtt med korrekt PanID och säker nätverksnyckel.
    • Detaljer runt Zigbee2Mqtt finns i det här långa inlägget om zigbee2mqtt sedan tidigare.
  • Konfiguration av MosquittoMQTT för att lägga till sensorer i Home Assistant automatiskt.

De delar vi ska publicera i den här guiden är nu klar – 2023-02-09

Det kan bli så att vi väljer att lägga dessa delar i det kommande inlägget med (troligen Esphome), däremot filmen den kommer inom kort!

  • Färdigställ filmen till youtube där vi kommer berätta om merparten som nu finns som text i inlägget. Klart 2023-02-09 – Filmen finns här
  • Lägg till detaljer om hur vi konfigurerar Bluetooth sensorer och lägger in dessa i gränssnittet. – Klart 2023-02-09 – Finns med i filmen ovan.
  • Lösa så vi får ett separat wifi till den miljö där vi skapar dom här guiderna.– Kommer få bli nästa del i guiden pga strul med separat wifi.
    • Om vi löser det så kommer vi kunna lägga till ESPHome till den här guiden med.

I det här inlägget skulle vi ha skrivit om ESPHome med, men på grund av att den Unifi wifi accesspunkt som var tänkt till projektet var för gammal så blev vi tvungen att ändra till Zigbee i den här delen istället. Men vi kommer gå igenom ESPHome inom kort så fort vi löst wifi till den här miljön. Vi fick även avvakta med Bluetooth sensorn eftersom tiden inte räckte tills söndag när vi skulle publicera. Men prenumerera på inlägget om så kommer du veta när vi uppdaterar

Meny

Här har vi delat upp så du enkelt kan välja om du vill fördjupa dig i ett ämne eller om du bara vill fokusera på några få delar.

Bakgrund till valet av Zigbee2MQTT

Skissen ovan visar hur vi med Zigbee2mqtt har en Mosquitto broker mellan Home Assisatant och Zigbee2mqtt. Vi kommer gå in i detalj på vad en broker är och varför det är en bra lösning.

Att vi väljer att använda lösningen Zigbee2MQTT beror på flera saker, men primärt är det att vi helt skilja på vår Zigbee och Home Assistant med hjälp av en MQTT lösning. Detta gör att vi längre fram kan koppla på fler lösningar mot MQTT, där tänker vi tex Node-Red.

2023-02-09 – Nu finns det även en Youtube som förklarar motsvarande som vi beskriver på sidan.

Videon har följande innehåll:

  • 0:18 – Bakgrunden till valet av Zigbee2mqtt & Mosquitto broker
  • 1:54 – Uppdatera firmware på Sonoff zigbee 3.0 usb stick, modell P
  • 4:02 – Installera Mosquitto broker även kallat Mosquitto MQTT ibland
  • 4:30 – Installation av Zigbee2mqtt
  • 5:21 – Installation av File editor
  • 6:48 – Hitta vilket USB ID din Zigbee sticka har i Home Assistant
  • 7:05 – Konfigurationsfil för Zigbee2mqtt och information om zigbee nätverk.
  • 7:43 – Fortsatt konfiguration av Zigbee2mqtt via konfigurationsfilen
  • 8:37 – Installation av samba share och information om zigbe2mqtt konfigurationen.
  • 11:42 – Uppstart av Zigbee2mqtt och inkludering av Xiaomi Aqara temperatursensor
  • 14:49 – Lägg till sensorer i Home Assistant från Zigbee2mqtt och skapa ett gränssnitt.
  • 17:52 – Lägg till flikar i Home Assistant:s gränssnitt.
  • 19:05 – Summering och vad ska komma i nästa guide? Gilla gärna inlägget..

Det här inlägget är en del av den här serien där vi från start till mål går igenom Homey och Home Assistant.

Vilken hårdvara behöver du för att följa guiden?

De hårdvaror vi kommer använda primärt i det här inlägget är följande, just Raspberry Pi går att ersätta med någon annan kontroller, tänk då på att du behöver Bluetooth stöd eller en Bluetooth dongel för att få in displayen.

Vi kommer använda följande delar i just den här delen av guiden, men skulle du ha olika Zigbee sensorer så spelar det mindre roll. Däremot koordinatorn för Zigbee (Sonoff zigbee 3.0 USB stick) kommer vi fokusera en hel del på initialt, vi kommer bland annat att uppdatera Firmware på den.

  • Färdiginstallerad Home Assistant, vi kör guiden på Raspberry Pi 4 med Home Assistant.
  • Sonoff Zigbee 3.0 USB sticka – Vi hade en modell P (kontrollera vilken version du har)
  • USB förlängningskabel till din Sonoff Zigbee 3.0 sticka (Nästan ett krav för att få det helt stabilt, men det finns dom som haft och kört utan..)
  • För att följa med Bluetooth delen så räcker en Raspberry Pi 4 eftersom den har Bluetooth, alternativt kan du koppla in en Bluetooth dongel.
  • Display med Bluetooth – LYWSD03MMC
  • Zigbee Sensor, vi började med en rund Tuya temperatursensor & en Xiaomi Aqara, en av dom räcker för att hänga med.

Vårt mål i den här delen är att installera följande mjukvaror och förklara mer om dessa. För att fullt ut kunna använda hårdvaran ovanför så väljer vi att använda oss av följande tillägg i Home Assistant

Vilka mjukvaror installerar vi i den här guiden

I den här delen så kommer vi lägga till följande mjukvaror, både för att kunna ställa in Zigbee2Mqtt, men även för att enklare i framtiden kunna hantera inställningar. Just samba share lyckades vi undvika ett behov av genom att lösa ett problem innan det uppstod, så den delen slipper du iom detta 🙂

Den kombination av mjukvaror vi kommer lägga till i den här delen av guiden är följande, vi kommer förklara vad syftet med dom är och vilka styrkor dom tillför.

  • Mosquitto broker
  • Zigbee2Mqtt (Den versionen som nu vår installationsguide är skriven för är V1.30.0-1)
  • Xiaomi Mi Bluetooth sensor ( Få koll på fuktighet och temperatur med LYWSD03MMC)
  • Stödverktyg
    • Samba share (behövdes inte längre, vi lyckades lösa problemet och bespara dig från detta just nu)
    • File editor

Mosquitto broker / MQTT

Källa till bilden: https://mosquitto.org/
Mosquitto broker

Mest troligt så har du hört talas om MQTT i samband med hemautomation. Vi tänkte därför berätta vad det är och i vilka sammanhang det passar, då får du en bättre uppfattning om vad det är, och varför det är en mycket flexibel och passande lösning just för hemautomation. Nu kanske det inte är rätt utifrån ditt behov, men förhoppningsvis framgår det här i så fall.

Vad är Mosquitto MQTT och vad använder du det till

MQTT (Message Queuing Telemetry Transport) är en kommunikationsprotokoll som används för att skicka data mellan IoT-enheter. Det är en lättviktsprotokoll som är effektiv för nätverksbandbredd och batteritid, och är speciellt utvecklad för användning i länkade enheter med begränsade resurser.

Mosquitto MQTT är en implementering av MQTT-protokollet. Den är byggd på öppen källkod och används som en MQTT-broker (läs nav). Det är en enkel, effektiv och pålitlig lösning för MQTT-kommunikation.

Mosquitto MQTT är dessutom en pålitlig och väl etablerad implementering av MQTT-protokollet, vilket gör det till en utmärkt lösning för användning i Home Assistant. Genom att använda Mosquitto MQTT kan användare säkerställa att all kommunikation mellan enheter och Home Assistant sker på ett driftsäkert och pålitligt sätt. Du har dessutom möjlighet att nyttja samma information i flera andra lösningar. Vi kommer i den här serien mycket troligt visa hur du med Node-Red kan dra nytta av just MosquittoMQTT med.

Vill du dyka ner djupare i Mosquitto så finns en länk till deras projekt här: Eclipse Mosquitto

Kommunikationsmönster och användningsområde för MQTT

Mqtt är en väldigt bra lösning att använda för att frikoppla system från varandra, men ändå bibehålla kommunikation i ”realtid”, dvs den som skapar en händelse behöver inte veta vem som ska läsa meddelandet eller händelsen.

Nu är det olika namn som brukar användas, något som kan addera till förvirringen. Men när du hör ”broker” så kan du tänka ”nav” för att hantera köer för mqtt. Mosquiotto broker, mosquitto mqtt, mqtt mm så kan den här lösningen benämnas. Nu finns det så klart fler än mosquitto, emqx är en annan typ av broker som dessutom finns i Home Assistant native, men vi har valt att inte byta till den ännu. Men finns intresse så kan vi kanske kolla in den med.

Mqtt jobbar med något som heter ”köer”, och sedan finns det två typer av sätt att jobba med detta. En producent (tex en sensor) registrerar en händelse eller förändring i temperaturen. Vi tänker att i det här fallet är det en Zigbee sensor som upptäcker en rörelse. Då läser sonoff Zigbee 3.0 usb stickan det och sedan registrerar Zigbee2mqtt detta. Den sparar då händelsen vidare till en mqtt kö. Sedan är den producerande delen klar.

Namnen på köerna är påhittade, detta för att ett förenkla exemplet. Här är ett exempel på hur det ser ut just nu, vi skickar dock inte några loggar från Home Assistant ännu. Men till vänster har vi system som skickar information till en kö. Sedan till höger om Mosquitto brokern någon som lyssnar på olika ”topics” (namn på köer) och prenumererar på dessa.

Nu har vi sedan Home Assistant som vi sagt åt att läsa från just den kön på mqtt servern (mosquito brokern), den registrerar att det finns ett meddelande och läser detta. Utifrån regler i hur Home Assistant ska bete sig när den läser ett meddelande på kön så registreras den som en sensor i Home Assistant.

Nu har vi utan att zigbee2mqtt vet det registrerat den i Home Assistant. Så skulle vi i framtiden vilja analysera meddelanden på en kö så kan vi börja prenumerera med ännu ett system, vi brukar använda Node-Red för att analysera och hantera sensorer med. Så utan att göra om något i zigbee2mqtt så får vi motsvarande information i node-red. Och just den här separationen och möjlighet att koppla till/från nya lösningar är orsaken att vi helt valt zigbee2mqtt istället för tex zha.

Så när vi i framtiden skulle lägga till Node-Red så behöver vi inte ändra något på de system som skickar in på köerna, vi behöver bara berätta för Node-Red vilka köer som finns och vad den ska hämta.

Lite senare i serien så kommer vi troligen visa hur du kan koppla samman Homey med mosquito mqtt. Detta skulle tex kunna innebära att du har Homey primärt och sedan virtuellt eller på någon gammal hårdvara installerar Home Assistant, men då bara för att skapa en snygg dashboard till din Homey.

På något likande sätt skulle vi både kunna exponera sensorer mot Homey från Mosquitto MQTT, lika så skulle sensorinformation från Homey kunna hamna i Home Assistant, vilket skulle tillåta oss göra en Dashbord där som i realtid innehåller information från Homey. När vi kommer till det steget så kommer vi börja prata om separata lösenord till Mosquitto brokern med.

Detta gör att du enkelt kan förändra dina lösningar utan att behöva göra om allt. Detta är den stryka vi ofta nyttjar när vi testar olika automationer och enheter. Ett vanligt scenario för oss är att vi vill veta allt om hur en sensor beter sig. Och med mqtt så kan vi då återanvända mycket av det vi byggt för att analysera.

Ska vi ge ett konkret exempel så är den nya Bluetooth skärmen något som vi bara behövde börja skicka in på en mqtt kö. Så med dessa bilder ovan så hoppas vi kunna visa vilken flexibilitet just en MQTT lösning kan tillföra i din hemautomation.

Installation av Mosquitto broker / MQTT

För att installera Mosquitto MQTT så behöver du bara gå på tillägg och lägga till just Mosquitto broker / MQTT. Klart! mer än så behövs inte för att börja få upp grunden för Brokern.

Det du söker är Mosquitto broker
För att hitta till Mosquitto Broker så behöver du gå på menyn till vänster till ”inställningar” sedan under ”tillägg”, där öppnar du tilläggsbutiken längst ner till höger och söker ”Mosquitto”, där väljer du sedan att installera.

(( 2023-02-02 ))) – Följande steg kan du avvakta med, Home Assistant verkar ha ändrat en del runt behörighetshanteringen: När du sedan Installerat den så behöver du skapa ett konto till Home Assistant, vi skapade ett konto men har ännu inte behövt koppla ihop det med Mosquitto Mqtt, och vi ser att det troligen skett någon förändring med just ”personer” och ”användare” nyligen. För när vi försökte hitta till menyn ”zooner” och ”användare” så fanns dessa inte kvar. utan bara personer, finns mer info om det i filmen. Men steget att skapa ett konto / användare för Mosquitto broker kan du avvakta med, så allt du behöver göra nu är att starta tillägget och sedan välja att aktivera ”watchdog”, detta gör att Mosquitto broker alltid startar om automatiskt om något skulle hända så den stängs.

När du hittat Mosquitto broker så väljer du att installera, mer än så behöver du inte göra. I skrivande stund var versionen av Mosqutto broker 6.1.3
Nu är det enda som kvarstår efter installation att starta tillägget. När det är klart så kan du bocka i ”starta vid systemstart” och ”vakthund”. Vakthund är en funktion som försöker att starta upp Mosquitto igen om något skulle fela och den kraschar (något som aldrig hänt oss ännu vad vi vet)

Det var allt som behövdes för att få till Mosquitto broker just, tycker du det var informativt med en mer detaljerad bakgrund till varför vi behöver tillägget och vad det i praktiken tillför?

Planera ditt Zigbee nät för maximal prestanda och tillförlitlighet

Vårt nya Zigbee nät
Vi har här valt att gå all in på Zigbee2mqtt och Sonoff 3.0 stickan.

Den här delen tänkte vi först inte skriva, utan vi tänkte fokusera på hur du får igång allt. Men under tiden vi skrev så insåg vi att det finns ett värde i att beskriva de olika ingående komponenterna i varje del av serien, det kommer innebära att vi ibland kommer länka Homey inlägg i serien mot ett Home Assistant inlägg och vise versa. Men det gör att du som läsare får en fördjupad bild över varför allt byggs som det görs och varför vi är mycket noga med vissa inställningar.

protokollet Zigbee arbetet på frekvensen 2.4Ghz och krockar därav med wifi på 2.4 GHz, detta är inte något som kontrollers tar höjd för. Utan dom accepterar gladeligen den Zigbee kanal du väljer. Och en Zigbee kanal är i praktiken en del av 2.4Ghz frekvens-bandet.

Och här dyker en av de svåra frågorna upp, hur vet jag vilken kanal jag ska välja på min Zigbee för att minska störningarna på den frekvensen? Och svaret är där ännu svårare tyvärr.. Det beror på… Men vi funderande över de scenarion vi själva tog höjd för när vi designade vårt nät hemma. Och i och med att vi testar och skriver om en mängd olika Zigbee kontrollers så har vi ofta behövt placera en kontrollers Zigbee kanal på en som vi vet att vi kör wifi och andra Zigbee kontrollers på.

Ännu ett problem är att inte alla Zigbee kontrollers tillåter dig att välja kanal, detta innebär att du kan behöva frigöra den kanalen från ditt wifi nät.

Zigbee kanalerna matchar självklart inte kanalerna som du ser i ditt wifi, men om du undviker de högsta kanalerna så kan du förhoppningsvis använda kanal 20 alt 25, kanal 25 kan dock göra att vissa Zigbee sensorer inte fungerar. Så hemma har vi frigjort så kanal 20 är den vi kör vårt produktions Zigbee på (ca 120 enheter), och det fungerar bra för oss eftersom vi har få grannars wifi som stör, och dessutom möjlighet att undvika att andra Zigbee kontrollers får gå så högt. I den här guiden så väljer vi tex att köra kanal 11, även om den krockar med flera andra Zigbee kontrollers och wifi. Men vi har så nära mellan sensorer och kontrollers/gateway så vi får därav sällan problem.

Vad är Zigbee då?

Nu kanske du är nyfiken att veta mer i detalj vad Zigbee är, då kan vi lite kort nämna att det baserar sig på IEEE 802.15.4 standarden. Och ungefär här började vi inse att det kanske är på en för djup nivå för oss själva med! Men kort sagt, det är ett trådlöst protokoll som tillåter enheter att prata krypterat och hoppa mellan varandra, vilket är egenskaper vi söker för att få ett stabilt och bra sensornätverk. Är du intresserad av att veta mer i detalj så rekommenderar vi den här wikipedia sidan med mer information: Zigbee – Wikipedia (extern länk)

Tips för att planera ditt Zigbee nät

  • Logga in i din wifi router och kolla vilka kanaler ditt 2.4 GHz wifi använder, om möjligt undvik den högsta kanalen och spara den till ditt Zigbee nät.
  • Har du tillgång till någon form av wifi scanner så kan du kontrollera vilken av de 2.4 GHz kanaler som är mest ledig, nu är det dock så att många wifi routers kör auto och hoppar runt för att hitta lediga frekvenser, men det kan du undvika i din router om möjligt.
  • Placera din Zigbee enhet centralt i ditt hem, eller planera så den når en stor mängd enheter med fast strömmatning. Detta gör att enheter du sedan kopplar in i ditt Zigbee nät kan mesha (skicka signalen vidare). Något som gör att batteridrivna sensorer går vi en Zigbee lampa, Zigbee uttag mm.
  • I vår guide för Home Assistant så använder vi en sonoff Zigbee 3.0 usb sticka för att få Zigbee stöd. Nu är det väldigt viktigt att den kopplas till din hårdvara med en usb förlängningskabel. Detta gör att du minimerar störningar och ökar stabiliteten. Vi har tidigare nämnt detta när vi försökte en conbee 2 usb sticka för Zigbee.
  • Placera din Zigbee gateway med rätt bra avstånd till din wifi router. Detta för att minska möjligheten till störningar till din Zigbee lösning.
  • När du startar igång ditt nya Zigbee nät, var mycket noga med att inkludera dina enheter som har konstant strömmatning. Dvs Zigbee lampor och Zigbee uttag. Inkludera sedan sensorer när alla dessa finns på plats. Detta gör att sensorer som Xiaomi Aqara kopplar upp sig och meshar mot den närmaste enheten direkt, annars är risken att den går mot din centrala kontroller direkt och därigenom får använda mer energi och i värsta fall missar flera ggr att få fram meddelanden.
  • Kolla hur bra LQI (signalstyrka) dina sensorer har, vi kommer visa i serien hur du kan kolla detta via Zigbee2mqtt och Homey. Detta kan vara en bra indikation på att en enhet sitter för långt bort från din gateway/kontroller. Då kan du addera en lampa eller Zigbee enhet i närheten och testa att inkludera om sensorn.
  • Om du bygger ett Zigbee nät som sträcker sig över ett stort område tänk då på att alla Zigbee enheter du kopplar med fast ström inte får stängas fysiskt. Dvs vet du att en lampknapp ofta används och att du inte lyckas förändra beteendet så riskerar du att få ett skakigt Zigbee nät. Här kan ett täcklock över lampknappen och en Zigbee knapp vara en lösning för att bibehålla funktionen utan att behöva förändra beteendet. Något som är extra tänkvärt om du ofta har gäster som riskerar att använda lampknappar
Wifi och tillgänglighet
Här är en bild över vad som hände i mitt WIFI när jag utförde lite tester tidigare. 2019 Gjord vi en djupdykning i just WIFI, mycket av den här informationen är fortfarande aktuell.

Vad är Zigbee2mqtt och hur passar den in här?

Vårt nya Zigbee nät
Vi har här valt att gå all in på Zigbee2mqtt och Sonoff 3.0 stickan.

Zigbee2mqtt är en öppen källkodslösning som tillåter användare att ansluta Zigbee-baserade enheter till en MQTT-broker. I vårt fall så börjar vi med Mosquitto MQTT eftersom den är väldigt välkänd och etablerad. Zigbee är en trådlös kommunikationsstandard som används för att koppla samman enheter i ett smart nätverk. Zigbee2mqtt fungerar som en brygga mellan Zigbee-enheter och MQTT-brokern, och tillåter användare att integrera enheter som inte stöder MQTT direkt. Dessutom så frikopplar det Zigbee implementationen från Home Assistant, vilket gör att du inte har ett direkt beroende av att just Home Assistant ska fungera för att ditt Zigbee nätverk ska fungera.

Vill du veta mer om projektet Zigbee2mqtt så har dom en sida här: Zigbee2MQTT (extern länk)

Zigbee2mqtt gör det möjligt för användare att använda MQTT för att kommunicera med sina Zigbee-enheter, vilket gör det enkelt att integrera dem i automatiseringar och skapa en sammankopplad smart hemmiljö. Dessutom är MQTT en lättviktsprotokoll som är effektiv för nätverksbandbredd och batteritid, vilket gör det till ett bra val för enheter med begränsade resurser.

Som vi nämner så vill vi gärna undvika allt för direkta beroenden mellan system, men för den delen vill vi inte införa allt för mycket tröghet. Nu är en väldigt stor fördel med zigbee2mqtt det enorma stödet av sensorer. För något som ofta inte nämns så ofta är att bara för att det är Zigbee behöver det inte fungera mellan kontrollenhet och sensor.

Installation av Zigbee2Mqtt år 2023

Nu när vi har gett en hel del tips på hur du förbereder ditt kommande Zigbee2mqtt när så är det dags att installera mjukvaran. Och här har vi fått lägga en hel del tid. Och varje gång vi skriver något om detta så är det massor med saker som har hänt i projektet! vilket är väldigt bra, det visar att vi har valt ett spår som många jobbar med. MEN baksidan är att våra guider fort blir inaktuella, därför kommer vi lägga till en tidsstämpel så du själv kan avgöra hur länge sedan guiden skrevs.

Den här delen av guiden skrevs: 2023-02-04

Det är inte allt för många steg för att nu göra en stabil och säker installation. Vi har plogat en hel del och insett att sedan vi skrev guiden med Zigbee2Mqtt här. Vi beskriver där i detalj hur du uppdaterar en Sonoff Zigbee 3.0, vilket fortfarande var aktuellt. Så vi väljer att inte duplicera det i den här guiden. Utan hänvisar steg 1 dit.

Uppdatera Fimware i Zigbee2mqtt stickan. Har du tur och fått tag på en nyare sticka så verkar det inte vara lika kritiskt att uppdatera fimware i den, så har den som heter modell ”E” så fungerar det bra för många utan att uppgradera firmware.

Hur vet du då vilken modell du har av Sonoff Zigbee 3.0 usb stickan? Lättast är att du packar upp den och kontrollerar baksidan av den, vi hittade inte någon information i varken beställning eller på sidan då vi köpte våran.

Del 1 – Uppdatera firmware i Sonoff ZIgbee 3.0 usb stick

Att vi rekommenderar att uppgradera fimware beror på att de första versionerna som kom ut från Sonoff hade stora problem med stabilitet, något som i de nyare versionerna nu är fixat.

NÅGOT som vi ser i flera guider är hur man uppdaterar Sonoff Zigbee stickan utan att kopplat in antennen! GÖR INTE DET, har du otur så kan du skada radiodelen i din enhet. Nu har jag inte läst om någon som råkat ut för det, men det är dumt att chansa.

I bilden nedan så ser du hur vi markerat Model:ZBDongel-P samt att det finns ett P i namnet FCC ID: 2APN5ZDB-P. Har du detta på din USB sticka så rekommenderar vi uppgradera av fimware enligt den här guiden: Uppgradera firmware i din Sonoff Zigbee 3.0 usb sticka.

Har du däremot Model:ZBDongel-E eller namnet FCC ID: 2APN5ZBD-E så är det inte lika stort krav att uppgradera firmware, men vi tror att det inte skadar att leta fram en stabil version. Nu kan vi inte uttala oss eftersom vi själva inte fått tag på någon av den modellen, men du som läser kanske kan bekräfta om det behövs?

I vårt youtube klipp så kan du se mer detaljer hur du i gränssnittet uppdaterar firmware i din ZBDongel-P.

Länkar till Firmware– (tänk på att kolla version, extern länk) https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/Z-Stack_3.x.0/bin
Applikationen för att programmera in firmware, (kräver registrering av epost, extern länk): https://www.ti.com/tool/FLASH-PROGRAMMER
Information om Zigbee adaptrar som stöds (extern länk): https://www.zigbee2mqtt.io/guide/adapters/

När du laddar ner firmware och det har gått en stund sedan vi skrev inlägget, kolla in informationen om zigbee adaptrar på den länken ovan, där kommer det troligen vara länkat till den firmware och teknik som ständigt är aktuell.

Del 2 – Koppla in Sonoff Zigbee 3.0 USB stickan i din Home Assistant hårdvara.

I nästa steg så är det dags att koppla in din förhoppningsvis uppdaterade Zigbee sticka. MEN HÄR ÄR DET VIKTIGT att använda en förlängningskabel till USB! Radiodelen kan störas om den sitter direkt i hårdvaran, vi har sedan tidigare haft problem med en Conbee 2 med Deconz just av den anledningen. Så något du inte ska fuska med är just att använda en förlängningskabel för USB mellan din hårdvara och Zigbee sticka.

Del 3 – Installera Zigbee2mqtt

Nu är det ÄNTLIGEN dags att installera mjukvaran 🙂 Men vi vill verkligen ge all information om varför alla steg behövs, och vad de olika teknikerna ger för värden i den hemautomation.

Om du letat och inte hittat Zigbee2mqtt i tilläggsbutiken så kan vi berätta varför. Zigbee2Mqtt tillhandahålls fristående, vilket gör att du behöver lägga till en länk / referens till den i Home Assistant.

För att lägga till ett externt tillägg till Home Assistant så går du till Tillägg / öppnar tilläggsbutiken / längst upp till höger letar du fram ”Resurser”. Då kommer du mötas av rutan nedan:

När du öppnat ”resurser så möts du av detta

där där ska du sedan klistra in sökvägen nedan:

Lägga till sökvägen: https://github.com/zigbee2mqtt/hassio-zigbee2mqtt

Om allt gick som planerat när du tryckte ”lägg till” så bör du ha en text som ovan. Annars kontrollera så att den text du kopierade startar med https://github.com/zigbee2mqtt/hassio-zigbee2mqtt

Det var de delar som behövdes för att lägga till så du kan installera tillägget i din Home Assistant. När du sedan trycker på stäng så är det inte alltid du ser någon skillnad, så endera går du till en annan meny och tillbaka eller trycker på knappen ”F5” för att uppdatera den aktuella sidan.

Gick nu allt vägen så bör du se följande i din tilläggsbutik. Här ska du välja det längst till vänster ”Zigbee2MQTT”, välj sedan ”Install”, och om du inte får några fel så var den första biten klar.
Den versionen som nu vår installationsguide är skriven för är V1.30.0-1. Tryck nu på installera, men tryck inte på START ännu, utan fortsätt med nästa del!

Del 4 – Konfigurera Zigbee2Mqtt och säkra upp den från start.

Den här biten fick vi jobba en del med, för de historiska guiderna skiljde sig en hel del. Det fanns ny funktionalitet och dessutom vissa inställningar som gjordes automatiskt. Så ser du något som är galet eller inte blir bra så säg gärna till oss!

Nu hade vi en hel del problem att använda det gränssnitt som fanns under ”inställningarna” till Zigbee2mqtt, det slutade med att vi undvek den och istället konfigurerade de inställningar vi behövde på sidan om. Dessa steg kommer vi nu gå igenom.

Vi börjar nu med att leta åt vilket id och sökväg din Sonoff Zigbee 3.0 usb sticka fick. Detta hittar du genom att gå under följande sökväg.

Från huvudmenyn i Home Assistant till vänster går du till: Inställningar / Hårdvara /

Eftersom vi bygger den här guiden utifrån en Raspberry Pi 4 så får vi en ikon för det, skulle du köra en annan hårdvara så ser du den där. Men öppna nu de tre punkterna längst upp till höger, välj där ”All hårdvara”

Om allt går vägen så ska du nu se en liknande skärm som nedan, där ska du söka efter en text som heter något med ”Zigbee”, och på vår bild nedan så ser vi att den har en vit text ovanför som det står ”ttyUSB0”, vilket vi nu kommer kopiera. Beroende på vad du får för text där så ska du kopiera och spara den informationen. För den informationen kommer vi sedan använda för att hjälpa Zigbee2mqtt att hitta din zigbee enhet.

Nu kunde vi inte använda oss av den sträng som var markerad med mörkgrå, men enligt deras tidigare rekommendationer är det den man ska kopiera och tillhandahålla. Det kanske fungerar för dig? annars så fungerade ttyUSB0 bra för oss, vilket är det vi väljer att skriva om i den här guiden.

(Del 4 – Extra steg) – Installation av File editor

Senare i guiden kommer vi använda tillägget ”File editor” för att editera konfigurationsfilen för Zigbee2mqtt. Så börja med att installera den om du inte har den, finns under: Inställningar / tillägg / tilläggsbutiken / File Editor. Du kan även använda VSCode om du är mer van den, men vi valde en gammal klassiker här 🙂

Tillägget File editor gör att vi nu kan öppna filer i webbläsaren och göra ändringar utan att behöva ladda upp och ner filer. Men vi kommer installera ”samba” med just för att vi behövde städa bort en massa gamla loggfiler.

Beroende på hur ofta du behöver ändra några filer så kan det vara smidigt att visa file editor på sidan med.
Här är ett exempel på hur File editor ser ut och vart du letar efter filer för att öppna dom. Senare i guiden så kommer vi öppna konfigurationsfilen via den här menysökvägen.

Men nu har du gjort allt som behövs för att kunna fortsätta guiden och redigera konfigurationsfilen.

Del 5 – Editera konfigurationsfilen för Zigbee2mqtt.

Om du kollar under mappstrukturen som du just öppnade nyss så kommer du troligen inte se några filer i mappen /Config/zigbee2mqtt. Så nu ska vi starta igång Zigbee2mqtt för första gången. Detta gör du under ”Inställningar / Tilläggsbutiken / zigbee2mqtt” och sedan ”Start” OBS här är det mycket viktigt att du inte kryssat i ”vakthund” ännu! För vi vill att det ska krascha en gång. Så efter ~30 sekunder så trycker du F5 i fönstret och verifierar att det står ”Start” igen på Zigbee2mqtt, då är allt rätt och du kan gå vidare. Annars får du avvakta en stund till eller kolla i menyn under ”Loggar” vad som händer.

När du startat Zigbee2mqtt en gång så bör det se ut så här igen efter ~30 – 60 sekunder, gör det inte det så tryck F5 en gång för att uppdatera sidan .

Om du öppnar ”logg” uppe i mitten och trycker på uppdatera så bör du mötas av något liknande fel, den tycker att det vid det tillfälle vi skriver guiden att den saknar inställningar.. Men vi kunde inte få den att acceptera inställningarna via gränssnittet.

När du startat Zigbee2mqtt första gången och går till logg så och trycker uppdatera så bör du se något liknande. Vilket gör att zigbee2mqtt stannar, men det är bra för tillfället. Här är för övrigt en bra sida att kontrollera på alla tillägg om det är något som felar.

Nu kan du öppna ”File editor” som vi nyss installerade, Vi ska nu redigera inställningarna för din Zigbee2mqtt. Gå upp till den mappsymbolen lägst uppe i File editor och se om du hittar en mapp som heter som nedan.

Öppna den mappen och sedan leta fram ”configuration.yaml”.

Om allt stämmer tills nu så bör du bara ha en mapp och i den bör det finnas den här filen configuration.yaml samt en mapp som heter ”LOG”. detta

Nu bör du se något likande när du öppnar sökvägen. Finns det fler filer här så kanske det har ändrat så installationen fungerar som den ska. Men oavsett så bör du fortsätta guiden för att få ett unikt ”PANID” och en egen nätverksnyckel.

När du öppnar /config/zigbee2mqtt/configuration.yaml så bör du se något liknande som ovan. Då har allt gått som när vi skrev guiden. Nu har vi kanske besparat dig en LÅNG tids felsökning…. Tro oss vi fick verkligen fundera på varför det strulade och hur vi kunde komma runt problemet samtidigt som vi ordnade en guide så gör att du helt slipper felsökningen.

Om din konfiguration ser ut som ovan eller har någon information spelar inte så stor roll just nu. Utan vi kommer ersätta allt med korrekta inställningar för att få ett säker och stabil konfiguration.

Skriv en unik konfiguration till Zigbee2MQTT för en säkrare implementation

För att inte råka ut för samma som vi gjorde första gångerna vi började testa Zigbee2mqtt (Här kan du läsa om hur zigbee2mqtt automatiskt länkade ihop hela vårt zigbee nät med en granne! ). Detta var orsakat av att grundkonfigurationen av zigbee2mqtt inte randomiserade ditt näts pan_id eller network_key första gången. Något som vi nu ställer in i konfigurationsfilen fösta gången vi kör igång.

*** Det går att via Zigbee2MQTT:s gränssnitt editera inställningar med, men när vi tidigare gjort det så har just konfigurationsinställningarna inte alltid fungerat korrekt. Därav har vi valt att använda File editor för att vara säker på att inställningarna tar korrekt.

Nu ska vi ersätta informationen med en konfiguration som gör att du får rätt förutsättningar för en unik installation.

Konfigurationsfilen för Zigbee2mqtt

Den konfiguration vi nu skrivit bygger på något nytt som dykt om i konfigurationsfilen, vi har inte sett den funktionen tidigare när vi skrev första guiderna. Men att använda ”GENERATE” på pan_id och network_key kommer göra att du får en helt unit nät och lösenord.

Det du behöver ändra nu är följande två värden:

  • port: ( här ska du ha den USB port som vi hittade under ”Del 4” i guiden, i vårt fall var det just ttyUSB0 ( så sökvägen blev /dev/ttyUSB0 )
  • channel: ( här bör du ha letat och frigjort en wifi kanal, i vårt home assistant där vi kör ca 120 enheter har vi valt kanal 20 )

För att få en bra start så rekommenderar vi följande inställningar nedan. tänk på att ändra ”port” och ”channel”

homeassistant: true
# Minimal configuration.yml example
permit_join: false
mqtt:
  server: mqtt://localhost:1883
serial:
  port: /dev/ttyUSB0
# Will run frontend on port 8080
frontend: true 

advanced:
  # Optional: ZigBee pan ID (default: shown below)
  # Setting pan_id: GENERATE will make Zigbee2MQTT generate a new panID on next startup
  pan_id: GENERATE
  # Optional: Zigbee extended pan ID (default: shown below)
  # ext_pan_id: GENERATE  # Vi fick inte det här värdet att ta, så vi kommenterade bort det tillfälligt
  # Optional: ZigBee channel, changing requires re-pairing of all devices. (Note: use a ZLL channel: 11, 15, 20, or 25 to avoid Problems)
  # (default: 11)
  channel: 11
  # Optional: network encryption key, will improve security 
  # Note: changing requires repairing of all devices (default: shown below)
  network_key: GENERATE

När du sedan klistrat in och sparar längst upp till höger i File editor så kommer du få en grön bock (som bilden ovan) om allt ser bra ut med YAML strukturen ( dvs det språk som den här konfigurationen är skriven med ).

Om någon har koll så får ni gärna svara oss vad ”Extern Pan-ID” / ”External Pan-ID” innebär, vi hittade inte någon dokumentation runt detta när vi skrev guiden. Så den finns inte med i konfigurationsfilen.

Om allt går vägen nu så ska du kunna starta din Zigbee2Mqtt igen. Du kan du under loggar uppe till mitten på sidan trycka på uppdatera och se m det dyker upp något fel, alternativt avvakta ~60 sekunder och se om du kan öppna webbgränssnittet. Om det fungerar så bör du aktivera ”Vakthund” och sedan ”visa i sidofältet”.
När du kollar loggen och uppdaterar, avvakta till du ser ”zigbe2mqtt started” som bilden ovan, för gör du det så är allt klart! Då kan vi säga grattis! Du har nu en säker och färdiginstallerad zigbee2mqtt.

Lägg till sensorer i Zigbee2mqtt och Home Assistant

Nu när du har alla förutsättningar för din Zigbee2mqtt kan du lägga till den första sensorn. För att komma igång med det så öppnar du först zigbee2mqtt. Du bör då mötas av ett liknande gränssnitt som nedan.

I konfigurationen vi skapade så satte vi default ”permit_join:false” och det är för att inte hela tiden tillåta sensorer att gå med i ditt zigbee nät.

För att nu lägga till en Zigbee sensor så är allt du behöver göra i Zigbee2mqtt att trycka på ”Tillåt anslutningar (Alla)”, sedan kan du trycka på din zigbee sensor och påbörja en inkludering.

Genom att trycka in den inringade knappen i ca 5 sekunder så påbörjas en inkludering, när du sedan ser i Zigbee2mqtt att den är på väg att inkluderas så trycker du på den här knappen var 5-10 sekund tills du får en ikon av Aqara sensorn i din Zigbee2mqtt.
På bilden hade vi redan inkluderat en Tuya sensor, men den nedre bilden visar hur det ser ut när en sensor är på väg att inkluderas. så länge det är en snurrande symbol till höger om bilden med ”Z” så ska du trycka var 10 sekund på aqara:ns knapp.
När du sedan får en ikon av sensorn som på bilden då har Zigbee2mqtt lyckats lägga till sensorn. Så nu kan du trycka på ”inaktivera anslutningar”.
Om du trycker på en sensor så kan du sedan gå ner till den bli redigeringsknappen, där kan du välja att döpa in din sensor till något vettigare. i vår guide så väljer vi B001 och B002 och skriver sedan upp information om vad det är som en kommentar.
Här skriver vi först en kommentar och sparar, sedan väljer vi att döpa just den här till ”B002”, tänk på att även bocka i uppdatera enhets-id för home assistant med. Då kommer du hitta motsvarande namn i Mosquitto brokern.

Visa sensorn i Home Assistant från zigbee2mqtt

Att nu lägga till sensorer från zigbee2mqtt är mycket enkelt. Allt du behöver göra är att trycka på konfigurera på mosquitto brokern under enheter. Nu kommer du se ett antal sensorer som dyker upp. Nu är det läge att fundera över hur du vill göra med namnsättningen.

Under enheter och tjänster nu i din Home Assistant borde det se ut så på något likande sätt. Du bör minst se en enhet där.

Vi har haft en strategi med en namnsättning som baserar sig på ett bokstav, löpnummer och bokstav ( finns en lista med exempel här ). Den lösningen fungerar för oss eftersom vi flyttar runt sensorer och analyserar data rätt ofta. För att hålla koll på sensorerna ändå så hanterar vi dom både i zigbee2mqtt & i Home Assistant.

Om allt gått vägen så bör vi nu se samma namn som vi satte i Zigbee2mqtt. Nu har du fått in dina fösta sensorer via Zigbee2mqtt!

I Zigbee2mqtt döper vi om sensorn till ett löpnummer, men vi ser till att i samband med det kopiera det ID som sensorn registrerades in med. Detta gör att vi om något händer kan inkludera om en sensor i någon annan lösning. Då kan kontrollera vilket system sensorn senast fanns i. Det vi dessutom gör är att under beskrivning i zigbee2mqtt skriver en beskrivning om vart sensorn ska sitta. I Home Assistant placerar vi sedan sensorn i det rum den ska sitta och använder serienummer.

Om du nu går in i gränssnittet och söker efter namnen du satte som en förkortning så kommer dom dyka upp. Att det står okänd på värdet beror på att vi precis bytte namn på dom och sedan gick in hit, något som gör att det inte finns data registrerat. Så genom att trycka en gång på knappen på sensorn så skickas aktuell status om du inte vill vänta.

Nu gör detta tillvägagångssätt att vi måste kolla på listan med enheter rätt ofta när vi bygger upp i gränssnitten. Detta är något som vi väljer att göra för att ha koll. Du kanske har behov av en annan lösning, för det kan ju vara så att du aldrig flyttar runt en sensor. Då kan det vara en bättre lösning att ge dom ett förklarande namn direkt. Men här är det behoven som styr.

Uppskattar du innehållet vi skriver?

Hoppas du hittade något som löste ett problem för dig, alternativt lärde dig något nytt. För vi kan säga att vi lärde oss en hel del detaljer som vi tidigare missat.

Tycker du att bloggen är på väg åt rätt håll och du ser ett värde i det vi skapar? Följ oss då gärna på alla våra medier och sprid information om att vi finns. Det gör att vi får fler som tipsar om vettiga områden att skriva om.

Som du ser så har vi ingen störande reklam och är helt fri att skriva om vad vi vill dessutom. Mycket tack vare er läsare som ibland Swishar en slant till kaffe 0705470065 😉 Och det tackar vi för, det gör att vi kan hålla igång bloggen och ha den helt fri från reklam.

Så det är det enda vi önskar i utbyte för all den tid vi lägger på att lära och dela med oss mer om Hemautomation och smarta hem är att du delar att vi finns med fler 🙂

5 reaktioner på ”Del 2 – Installera Mosquitto broker och Zigbee2mqtt på Home Assistant”

    1. Tackar för tipset, ska uppdatera informationen med det här steget med sen

      Fungerade de andra stegen bra och vilken firmware valde du att köra?

      // Markus

  1. Försöker följa guiden, men Sonoff donglen finns inte med under hardware i HA i del 4..
    Den finns dock med i Windows i enhetshanteraren, jag kör Virtuellt i Windows med Hyper V manager. Hur komma vidare?

    1. Hej
      Det här nog inte de svar du vill höra..

      Tyvärr så kommer det inte att gå att få in USB enheter dirket via Hyper-v, den saknar stöd för att vidarebefordra USB portarna till gäster.

      Så du behöver endera byta till någon annan virtualisering på Windows, tex Oracle virtual box eller någon med stöd för att skicka med USB portar. Alternativt installerar du Zigbee2mqtt på någon annan hårdvara och där använder sonoff usb dongeln.

      // Markus

      1. Hej,

        Tack för ditt svar. Jag kommer nog prova att installera om allt parallellt på en ubuntu server på en annan maskin och sen släcka ner på hyper v. Tack för en bra sida

Lämna en kommentar

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