Tekniker som hjälper dig skapa ett smartare och tryggare hem.

Med ESPHome och ESP32 och den typen av wifi chip så kan du skapa unika sensorer.

Guide: Home Assistant och ESPHome

Kategori:

– Taggar:

Som många kanske märkt så har vi under lång tid gillat att skriva egen kod till ESP8266, Arduino, ESP32 osv osv osv… Men för varje gång vi gör det inser vi att det är tid vi skulle kunna lagt på att skapa en automation om det funnits ett färdigt sätt. För det är sällan ett självändamål att skriva koden själv, utan det har varit ett måste för att få in vissa sensorer som vi helt enkelt inte hittat som färdig lösning (i regel).

Med ESP32 och ESPHome så har du alla möjligheter att skapa mycket unika och smidiga sensorer.

Vi har även börjat väga in att vi INTE har nog med tid och kanske inte alltid den kunskap som krävs direkt. Utan det kräver att vi läser på en hel del för att lyckas. Men samtidigt är det bra ibland för att få en förståelse hur allt hänger ihop. Därav anledningen till det här inlägget. Vi vet att det finns så otroligt mycket verktyg men i regel har vi saknat något av dessa… Men nu måste vi säga att ESPHome som vi kommer skriva om i det här inlägget som både underlättar vardagen, och dessutom kan möjliggöra en mängd nya automationer utan att kosta stora summor i tid, kod och pengar.

ESPHome: https://esphome.io/

Projektet ESPHome som vi ”hittat” (Vi har fått massor med uppmaningar om att prova det) gör det mycket enkelt att koppla samman egna sensorer med Home Assistant eller MQTT. Tack för tipsen!

Sammanfattning av mjukvaran ESPHome & ESP32

ESPHome är ett ramverk (byggkloss) som kapar bort i stort sett allt kodande som behövs för att börja använda dom superbilliga
WIFI chipen Esp8266 & esp32. Under många år har stödet för dessa chip blivit bättre i många olika projekt. Där det mest populära inom
smarta hem är just ESPHome. Där får du hjälp med mjukvaran för att enkelt få din sensorinformation upplöst i tex Home Assistant via
färdiga integrationer.

Sedan något år sedan så togs ESPHome projektet över av Home Assistant teamet, vilket har gjort att ESPHome nu är ett mycket välfungerande
och stort ekosystem i Home Assistant. Nu kan du köra sensorerna utan att koppla dom till Home Assistant med, men den hantering och smidighet
som erbjuds tillsammans med Home Assistant bör du inte hoppa över.

Mitt utlåtande

Jag upplever att sedan ESPHome kom så har jag sällan behövt göra någon egen kod från grunden. Istället har jag kunnat fokusera på
att designa hårdvaran och sedan med hjälp av ESPHome mjukvaran koppla upp funktionerna som hårdvaran erbjuder.

Jag har under många år använt mig av WIFI chip i mina projekt, bland annat så byggde jag en en WIFI temperatursensor redan
2016, dvs långt innan det fanns färdiga wifi sensorer!
Det gjorde jag med en ESP8266 där all kod och hantering fick göras manuellt…
Nu med ESPHome så integrerar det snyggt med Home Assistant och du behöver bara justera några rader i YAML format för
att koppla in helt nya typer av sensorer till ditt smarta hem.

Genom att köpa några ESP32:er så kan du snabbt bygga en rolig sensor. Du kan även köpa den mer färdiga varianten M5Stack (vilket jag bland annat använder
i min automatiska gurkodling 2024)

Med M5Stack så får du en RGB diod, knapp och dessutom skalet, så med 10 – 20 rader YAML konfiguration så är du igång
med hårdvaran i Home Assistant.

Atom M5Stack en liten paktering av esp32
ESPHome är ett projekt för att bygga egna sensorer utan att behöva skriva kod.

Finns att köpa här:

Köplänkar kan vara affiliatelänk eller ha en tagg, mer info om orsak till eventuell affiliatelänk.
Genom att använda länken så stöttar du bloggen och gör det möjlighet att ha bloggen helt fri från reklam.
Du kan stötta bloggen genom att Swisha en donation om du uppskattar innehållet med på 0705470065

Vad är ESPHome och hur fungerar det?

ESPHome är ett ramverk (byggkloss) som kapar bort i stort sett allt kodande som behövs för att börja använda dom superbilliga WIFI chipen Esp8266 & esp32. Vi har i flera år använt oss av dessa chip i våra projekt, bland annat så byggde vi en en WIFI temperatursensor redan 2016 med ESP8266. Men all kod och hantering fick göras manuellt…

ESPHome hanterar uppdatering, integration, konfiguration och övervakning av sensorn helt automagiskt! Dvs den löser hur kommunikationen med webbgrässnittet ska fungera, den löser hur du över WIFI uppdaterar koden i chipet, och dessutom löser den hur du via en hotspot i ESP:n kan logga in på den och uppdatera koden om ditt WIFI hemma slutar fungera eller byts till ett nytt. Mer än så här kommer vi inte förklara om vad ESPHome just nu, vi hoppas att kommande delar kommer förklara detta bra. Listan nedan är de micro kontrollers som stöds just nu, dvs du kan även använda detta för Sonoff istället för Tasmota (extern länk).

Bilden med listan kommer från https://esphome.io/

För alla som inte vill köra Home Assistant så går det självklart att använda ESPHome även med MQTT, detta kan vara ett bra lösning om du redan är igång med Node-Red.

Vad har vi gjort med ESPHome?

Det behov ESPHome direkt löste för oss var att mäta husets totala energiåtgång och göra det tillgängligt i Home Assitant. Detta löste vi på under 30 minuter totalt från start till mål! Dvs från att vi hittade ESPHome tills att vi såg grafen i Home Assistant och kunde börja automatisera utifrån den!

ESP32 som energimätare
ESP32 som energimätare

Är du inte övertygad om att ESPHome är en lösning som integrerar bra med Home Assistant så spana in vår film nedan eller på instagram. Där styr vi 150st leds individuellt med hjälp av Home Assistant och ESP8266 med ESPHome: https://www.instagram.com/p/CIY_jD-jC8O/ (länk till vårt Instagram konto med film på ledslingan du ser på bilden).

Nyligen så testade jag en elprisklocka, den hade en esp32 i sig men troligen en helt annat mjukvara.
Det jag vill påvisa är att ESP32 chippen är så etablerade att dom nu finns i många färdiga produkter
på marknaden med.

Vad löser ESPHome?

Nu försöker vi besvara vad vi tycker ESPHome löser för oss, kan inte svara på om detta är samma för alla som läser detta.

  1. Vi får all kod centraliserad och slipper dessutom skriva den! vi behöver bara fundera på konfigurationen.
  2. Vi behöver inte hämta in enheterna varje gång vi vill uppdatera den med en ny kod och funktionalitet, vi kan uppdatera dom med OTA via WIFI.
  3. Vi kan använda redan färdiga API:er för att kontrollera debug information i den och integrera den med andra system.
  4. Vi minskar den tid vi behöver lägga på att skriva kod, vi kan istället fokusera på att få ut värdet som sensorerna vi kopplar in ger.
  5. Vi får en mycket bra grund att utgå utifrån där nya sensorer ständigt adderas hos ESPHome utan att vi behöver göra hela jobbet själva.
  6. ESPHome gör att vi inte behöver fokusera på transporten av information på samma sätt som tidigare.

Vi hoppas på att få mängder med exempel i guiden på roliga sensorer vi bygger framöver. Än så länge har vi bara skrapat på ytan men redan mer än nöjda, dessutom inväntar vi nu 10st ESP32 till för att fortsätta bygga ut vårt hem med nya sensortyper på WIFI!

I inlägget kommer du kunna läsa om hur du konfigurerar Home Assistant för att få tillgång till sensorer via ESPHome. Vi går igenom alla steg som behövs för att slippa skriva någon kod i framtiden, men ändå få möjligheten till avancerade ESP8266/ESP32/sonoff sensorer.

Hur kommer jag igång med ESPHome

Allt du behöver för att komma igång finns inbyggt i Home Assistant OM du har en installation som tillåter dig att komma åt USB portarna på enheten den körs på. Gör du inte det så är det inte ett problem. Med hjälp av Python på en dator och tillägget ESPHome där så kan du börja skapa konfiguration och koden som behövs till både en ESP eller Sonoff, men har du tillgång till en Home Assistant så rekommenderar vi att testa pluginet där! Du kan nämligen där göra den första uppdateringen av en sensor med via USB och sedan övergå till OTA (over the air update) WIFI.

Bilden nedan visar hur driftbilden ser ut inne i tillägget ESPHome. Varje sensor du skapar presenteras som nedan, där namnet på sensorn och vilken fil den läser konfigurationen från presenteras under. Det du behöver fokusera på när en sensor sedan är igång är ”EDIT” och ”LOGS”, samt om du ser en grön eller röd linje ovanför sensorn. Skulle sensorn inte vara kontaktbar så får du en röd linje här och Home Assitsant sätter enheten som status ”Ej kontaktbar”, så den funktionen i API:et till ESP sensorn fungerar riktigt bra.

Integrationen mellan Home Assistant och ESPHome är näst in till perfekt enligt oss

När du sedan skapat en sensor i ESPHome så dyker dessa upp som nya interationer i Home Assistant först när sensorn är nåbar på ditt WIFI, det som sedan behövs för att få lägga till sensorn i Home Assistant är ett lösenord som du satt i konfigurationen när du skapade sensorn, det är lösenordet står under ”api:”, det står även ”Enable Home Assistant API” som en kommentar där, så enkelt att hitta

Integrationen mellan ESPHome och Home Assitant presenterar sedan sensorerna snyggt.

Installera ESPHome i Home Assistant

För att hållare nere längden på guiden så fokuserar vi på att Home Assistant används, finns intresse så kan vi även visa hur vi gjorde för att initialt flasha enheterna på en dator med Windows 10, men göra konfigurationen i Home Assistant som bilden ovan. Med hjälp av detta så kommer du sedan kunna skapa egna sensorer som vi beskriver längre ner i inlägget eller om du kollar ESPHomes egna hemsida. Vi lärt oss att det är viktigt att läs all informationen som ESPHome ger dig när du sedan skapar sensorer. Bland annat skriver den att vissa tecken inte kommer fungera och att allt måste vara i småa tecken, och det kan vi bekräfta!

Sammanfattning av Mjukvaran Home Assistant

Home Assistant är en mjukvara som du kan installera på olika hårdvaror, tex Raspberry Pi, virtuellt eller fysiskt.
Med Home Assistant (även kallat HASS) kan du mycket fritt koppla ihop en egen lösning för att styra ditt smarta hem.
HASS är den mjukvara som idag är ledande och Open Soruce, dvs många bidrar till koden och inget enskilt företag
äger det. Även om projektets grundare har ett företag som heter Nabucasa som erbjuder mervärden till Home Assistant.

Nu är Home Assistant inte riktigt ”plug & play” om du inte har lite vana av liknande lösningar, men det är där jag kommer in
med bloggen. Jag försöker här ge dig en förståelse och tips på hur du använder HASS för att få ett optimalt smart hem.

Home Assistant strävar efter att du som användare ska ha full kontroll och kunna köra smarta hem saker hemma
utan krav på koppling mot molntjänster.

Mitt utlåtande

Jag har under många år använt Home Assistant som min primära smarta hem lösning, detta beror på att jag ofta vill testa
de absolut senaste teknikerna och ibland kunna göra saker ”under huven” för att komma vidare med problem.

Jag upplever att Home Assistant har gått från ett projekt som krävde att du hade god kunskap om ”YAML” och script till
Något som snart är ”Plug & Play” tack vare det stora community som finns runt Home Assistant. Idag är det sällan jag är föst
med att upptäcka eller fundera på hur något ska lösas.

Home Assistant är det största Open Source projektet inom smarta hem.

Finns att köpa här:

Raspberry PI 5 är en mycket vettig lösning för att få en helt fristående installation:

Lämpliga tillbehör för att göra Home Assistant snabb & som Zigbee kontroller.

Köplänkar kan vara affiliatelänk eller ha en tagg, mer info om orsak till eventuell affiliatelänk.
Genom att använda länken så stöttar du bloggen och gör det möjlighet att ha bloggen helt fri från reklam.
Du kan stötta bloggen genom att Swisha en donation om du uppskattar innehållet med på 0705470065

Istället för att bra duplicera en redan bra guide på hur du installerar det på dator så rekommenderar jag guiden som ESPHome själv skrivit här: https://esphome.io/guides/getting_started_hassio.html. Vi valde dock att göra en för Home Assistant med några bilder eftersom det var så pass enkelt förfarande, men vi kan inte säkerställa att vi kan hålla den lika upp to date som den på länken. Men för att hålla ihop vår guide så behövde vi lite mer information.

Installera ESPHome pluginet i Home Assistant

Börja med att logga in i din Home assistant och gör en backup innan (Supervisor \ Snapshots) du börjar med att addera något nytt (bra att ha det som en vana!), så vida du inte har en utvecklings Home Assistant som vi kör här.

Under menyn ”Supervisor \ Add-on Store \ söker du efter tillägget ESPHome och väljer installera. Mer än så är det inte. När detta är klart så väljer du att detta ska starta automatiskt och att det listas i menyn genom att välja ”Show in sidebar”. Gå sedan vidare och välj Open WEB UI

När du installerat ESPHome så kommer du få möjlighet att välja att presnetera den i sidebar och att den ska starta automatiskt, gör det.

Skapa en sensor i ESPHome

Som vi nämnde så är det otroligt enkelt att komma igång, vi är nu klar med all mjukvara som behövs för att börja skapa den första sensorn! Genom att trycka på PLUS tecknet längst ner till höger i ESPHome så kommer guide starta. TÄNK PÅ ATT ANVÄNDA ENDAST GODKÄNDA TECKEN, för använder du andra tecken än de dom skriver där så kommer du sitta och felsöka en mängd olika fel som du inte riktigt kan förklara… Tro oss, det var lättare att ta bort sensorn och sedan skapa en ny med rätt namn om detta skulle ha hänt.

Var även mycket observant på vilken USB enhet du har i din Home Assistant innan du börjar uppdatera något, vi har inte valt fel enhet så vi kan inte säga vad som skulle kunna hända. Men ha extra koll på det när du följer guiden om du ska uppdatera direkt från din Home Assistatant.

Så här ser det ut på den fysiska Home Assistant vi kör, men tänk då på att kontrollera vad du har för USB enheter på /dev/ttyUSB* innan du kopplar in din ESP via USB i Home Assistant, för den enhet som presenteras i litstan där är en Zigbee sticka för Conbee, och den vill vi verkligen inte uppgradera!

Vi kommer i den här guiden använda oss av ”OTA”, vilket inte fungerar på en helt ny sensor. Då behöver du istället välja USB och det enhetsnamn som matchar din ESP sensor. Orsaken är att den installation vi skriver om nedan är virtuell och inte har tillgång till en USB, men hade du valt USB så fungerar alla steg i guiden precis på samma sätt. Och dessutom kan du trycka på UPLOAD efter guden är klar.

Gränssnittet är mycket enkelt, hålla koll på om det är via WIFI eller USB du vill uppdatera sensorn bara innan du trycker upload.

Den här uppmaningen i steg 1 är det värt att följa..

Names must be all lowercase and must not contain any spaces! Characters that are allowed are: a-z0-9 and _.

När du skapar din första enhet tänk till på namnet du sätter, för det kommer du att exponera i Home Assistant under integrationen sedan med dessutom. Vi väljer i exemplet här att nyttja ”bloggen” med litet ”b”.

Åter igen kontrollera en gång extra att du inte har tecken i ditt namn som inte är giltiga, det är ett krav för att det ska fungera.

När du sedan ska skapa din första enhet så behöver du kontrollera vilken enhetstyp du ska konfigurera med ESPHome, den enhet vi kör för energimätning i den här guiden är en Generic ESP32 (WROVER Module) medan den enhet vi kör till fast led ljusslingan är en NodeMCU (esp8266).

Välj de modell av kort du ska flasha / uppdatera som en ESPHome sensor.

När du valt enheten så är det dags att ange vad du har för WIFI som enheten ska koppla upp på. Här kan det vara idé att lägga upp ett extra wifi hemma för IOT, detta för att kunna segmentera bort enheterna från andra enheter och begränsa vad som får åtkomst till sensorerna. Men det är så klart möjligt att koppla det mot det vanliga WIFI nätet med, så länge det är ett 2.4Ghz WIFI. OTA lösenordet är de lösenord som sedan används för att tillåta enheten att uppdateras över ditt wifi nät.

Ange här ditt WIFI lösnord, tänk på att enheterna ESP32, ESP8266, SONOFF kräver att det är ett 2.4 Ghz wifi och inte ett 5Ghz wifi du använder.

Detta var allt som behövdes för att du skulle få åtkomst och uppdatera en enhet via wifi.

Klart! nu har du en sensor som inte gör något alls, förutom att koppla upp på ditt wifi, ta emot kod trådlöst. Bara här är det så otroligt mycket kod du sluppit skriva för att hantera enheten.

När detta är gjort så kommer du få en upp enheten med de namn du satt som bilden nedan

Här är den sensor du just skapade.

Väjer vi nu EDIT på den här enheten så kommer du mötas av ditt WIFI lösenord och andra lösenord i klartext, så tänk på vem du tillåter access till både mappen där .yaml filen ligger och ESPHome gränssnittet i Home Assitstant. Så det du ser nedan är det gränssnitt som du sedan ställer in din konfiguration med, så för alla som hållit på med Home Assistant så kanske det känns igen till 100%

Så här ser konfigurationen ut för din ESP som just skapades.

Ovan ser du konfigurationen uppdelad i följande delar:

  • name = det namn du satte på enheten
  • platform = den typ av ESP du valt ( ESP32, ESP8266 ).
  • board = den modell av ESP kort som används.
  • AP:
    • ssid = namnet på den accesspunkt som skapas om enheten inte kan koppla upp på ditt wifi
  • api = Det här lösenordet kopierar du och använder när du lägger till en ny enhet under integration i Home Assistant
  • ota = Det lösenord som ska används för att få uppdatera enheten trådlöst.

För att kontrollera hur sensorn mår och aktuell status på sensorer mm så är det bara att öppna LOGS (om sensorn är grön i ESPHome). Då kommer du få en debug skärm med mycket bra information. När du kommit så långt att du kopplat på första sensorerna så är den här loggen guld värd eftersom du ser precis hur dina GPIO (pinnar) på sensorn är konfigurerade och med vilken frekvens de kommer uppdatera sig.

Informationen här är från Debug från den ESP32 som kör pulsräkaren och visar aktuell elförbrukning hemma.

Integrationen mellan Home Assitant och ESPHome på chippen gör att du kan konfigurera och skapa enheterna på en ESPHome och sedan ta in dom på en annan Home Assistant. Som bilden nedan visar så är det en sensor vi kör i den skarpa Home Assistant som vår utvecklings Home Assistant nu har upptäckt. Du kommer dock inte se någon sensor i Home Assistant förens dom blivit grön i ESPHome.

När en ny enhet sedan konfigurerats och dyker upp på samma wifi som din Home Assistant så får du upp dom på följande sätt. Där anger du sedan OTA passwordet du angivit i konfigurationen.

Så nu kommer vi inte nämna mer i själva installationen, för detta är allt som behövs för att få igång en ESP sensor i ESPHome. Längre ner i guiden kommer vi visa exempel på olika sensorer vi adderat till en ESPHome och hur vi gjorde det. Vill du fördjupa dig i alla möjliga sensorer så kan du läsa listan på ESPHome här: https://esphome.io/index.html#sensor-components (extern länk).

Ett tips är att dessa M5 Stack även kan aggera bluetooth proxy för att ge dig bättre täckning till andra bluetooth enheter. Jag har under sommaren 2024 använt mig av M5Stack för att få in mina Xiami Mi Flora till Home Assistant

Sammanfattning av Växtsensorn Xiaomi Mi Flora

Xiaomi Mi Flora är en Bluetooth sensor som övervakar din växt digitalt. Allt du behöver för att börja övervaka dina växter
är sedan en telefon och appen för att läsa av Xiaomi Mi Flora.

Med appen så kan du hämta in data över tid från Mi Flora, dvs du måste inte ha appen igång för att se hur temperaturen varit över några
dagar eller veckor, utan det hämtas från sensorn när du startar appen. Det gör att du kan se hur din växt har mått över tid.

Att den använder Bluetooth för att kommunicera gör att du även kan fånga upp den
via Home Assistant, ESPHome och Homey Pro 2023. Något som möjliggör automatisering av odlingar.
Xiaomi Mi Flora hjälper dig få koll på följande egenskaper:

  • Näring i jorden
  • Ljus
  • Temperatur
  • Luftfuktighet

Mitt utlåtande

Jag har i flera års tid använt mig av Xiaomi mi Flora i olika sammanhang. Den ger mig insikter om hur en växt mår.
Den kommunicerar via Bluetooth helt öppet dvs du kan läsa av informationen i både Homey och Home Assistant samtidigt
något som gör att du kan automatisera med sensorn.

Den här sensorn går att använda helt fristående och med hjälp av appen i telefonen läsa av historiken för näring,
ljus, temperatur, luftfuktighet och jordfuktighet. Xiaomi Mi Flora är en mycket flexibel lösning att kombinera med smarta hem system.
Det enda negativa är att den använder Bluetooth, vilket gör att du kan behöva ha din kontroller i närheten för att löpande fånga
sensordata, så räckvidden blir lite begränsad till tex Homey. Något som du i Home Assistant kan lösa med hjälp av ESPHome projektet och
Bluetooth proxies. För att automatiskt bevattna så har jag sedan använt Gardena citygardening, vilket gjorde att min gurkodling 2024 blev
ett mycket lyckat projekt.

Med bluetooth enheten Xiaomi Mi Flora så kan du enkelt få koll på när dina växter behöver näring eller vatten
Byt till en vettig text.

Finns att köpa här:

Om du behöver förbättra räckvidden och vill använda dig av ESPHome så fungerar M5stack helt ok:

Atom M5Stack – Amzon.se – Perfekt till Home Assistant med ESPHome
Amazon.se – Gardena citygardening

Köplänkar kan vara affiliatelänk eller ha en tagg, mer info om orsak till eventuell affiliatelänk.
Genom att använda länken så stöttar du bloggen och gör det möjlighet att ha bloggen helt fri från reklam.
Du kan stötta bloggen genom att Swisha en donation om du uppskattar innehållet med på 0705470065

Om du väljer att köra den här temperatursensorn original som bluetooth och inte flasha om dom till zigbee så fungerar ESPHome även som bluetooth proxy till dom.

Sammanfattning av LYWSD03MMC

LYWSD03MMC är en Bluetooth display som går att flasha om till Zigbee. Jag har valt
att flasha om de jag använder hemma för att få mesh stödet från mitt
Zigbee nätverk att göra det enklare att placera sensorerna där jag själv vill.

Bluetooth sensorn LYWSD03MMC är ett steg i en riktning där du som slutanvändare
kan besluta om vilken mjukvara som ska köras i sensorn. Något som gör att du över
tid kan uppdatera den med hjälp av open source mjukvara. Nu är detta något som
tillverkaren Xiaomi troligen inte hade i åtanke när dom gjorde sensorn.

Mitt utlåtande

När jag väl uppdaterat mjukvaran i den här sensorn så är det kanske den mest
prisvärda sensorn jag hittat ännu, för ~60-100kr så får du en display som
utöver att den går att byta mjukvara i även fungerar tillförlitligt.

Jag upplever dock att batteritiden är lite sådär tyvärr, med ett ~halvår på den senaste
open source mjukvaran så är det ändå ok. Men det är något att ha i åtanke om du köper
Dom.

2024-10-17 – För någon dag sedan fick jag ett meddelande i en kommentar att vissa enheter
börjar komma direkt med firmware 2.1.1_0159, vilket ännu inte går att flasha via webbläsaren bara
utan dom kräver en USB till seriell kabel och lite mer jobb tyvärr.

2024-09-05 – En rolig nyhet är att StyraHem.se har tagit hem dom här sensorerna,
så nu kan du köpa dom från en svensk sida och snabbt komma igång med dom.

Sammanfattningen uppdaterades: 2024-10-17

Mycket billig och mångsidig zigbee och Bluetooth display
Den här displayen passar in
bra i de flesta hemmen
bara den är uppdaterad.

Finns att köpa här:

Köplänkar kan vara affiliatelänk eller ha en tagg, mer info om orsak till eventuell affiliatelänk
Genom att använda dom så stöttar du bloggen och gör det möjlighet att ha bloggen helt fri från reklam.
Du kan stötta bloggen genom att Swisha en donation till 0705470065 om du uppskattar innehålle
t.

Mäta ditt hems elkonsumtion med en ESPHome

Vi börjar med att visa vad som fick oss att helt fundera på att överge Arduino sensorerna vi just byggt. När vi började att bygga en mjukvarutermostat för att effektivisera uppvärmningen hemma och göra nytta i samhället så insåg vi att vi även behöver bättre koll på hushållets totala strömförbrukning. Då vi tidgare har byggt två varianter så var tanken att åter använda någon av dessa. Men för tillfället hade vi inte någon dator i närheten av elämataren och saknade de komponenter som behövdes i Daniels lösning med en Raspberry PI. Därav föll valet på en ESP32 som vi hade liggande. Fördelen med att använda just en ESP32 och inte en ESP8266 är att den har en del i hårdvaran som gör pulsräknare (extern länk) mer exakt än vad ESP8266 är.

Redan efter 30 minuter så hade vi gått från ide till en färdig effektmätare på en esp32, allt vi behövde var en ldr (ljusmotstånd), 10K ohm, esp32 och för tillfället lite tejp för att fästa ldr:en över effekt led:en. När detta var gjort så kopplade vi ldr:en på en pinne och laddade upp följande yaml till esphome.

ESP32 som effektmätare till huset.
Den ESP32 som du ser på bilden är för tillfället i drift och mäter husets totala elförbrukning utan problem.

Vill du ha mer detaljer så har vi utgått från det här: https://esphome.io/cookbook/power_meter.html (extern länk)

Så med hjälp av en två komponenter till förutom ESP32, dvs ett motstånd och en LDR så får vi följande resultat i Home Assistant utan att skriva någon riktig kod helt rapporterat via WIFI till Home Assistant.

Komponenter som behövs för pulsräknaren:

  • 1st – LDR ( Light Decreasing Resistance ) – Motstånd som ändrar resistans baserat på ljus.
  • 1st – 10.000 (10k) ohm:s motstånd att koppla mellan plus och ena benet på LDR.
  • 1st – ESP32 alternativt Esp8266 (dock så är esp32 att föredra på grund av en dedikerad funktion i hårdvara för att läsa pulser)

Koppla din pulsmätare:

Nu hade vi inte tillgång till fritzing så det fick bli en tillfällig skiss tyvärr. Men principen bör framgå

Yaml konfigurationen för att få fram informationen om realtidsförbrukning är följande:

# Läsa förbrukning från Pin25 på ESP:n
sensor:
  - platform: pulse_counter
    pin: 25
    unit_of_measurement: 'kW'
    name: 'Power Meter House'
    filters:
      - multiply: 0.06

Så den totala konfigurationen som behöver skrivas för att få fram effektförbrukningen i ditt hushåll är följande (om kortet är esp32 och wifi har det här namnet):

esphome:
  name: demo
  platform: ESP32
  board: esp-wrover-kit

wifi:
  ssid: "dittWIFI"
  password: "DittPAss"

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Bloggen Fallback Hotspot"
    password: "OpS0a8KcqiZ0"

captive_portal:

# Enable logging
logger:

# Enable Home Assistant API
api:
  password: "DittPassword"

ota:
  password: "DittPassword"


# Läsa förbrukning från Pin25 på ESP:n
sensor:
  - platform: pulse_counter
    pin: 25
    unit_of_measurement: 'kW'
    name: 'Power Meter House'
    filters:
      - multiply: 0.06

När raderna ovan är uppdaterat på ESP32:an så är det bara att öppna integrationer i Home Assistant och kontrollera om det finns en ny tillgänglig enhet med namnet ”demo” ange API nyckeln. När detta är klart så kommer du få en ny enhet och en ny entitet som bilden nedan visar.

Pulsmätaren i Home Assitant.

Nu är allt klart för att presentera din pulsmätare i Home Assistant som bilderna nedan visar, vi blev själva mycket imponerande över hur mycket jobb som lagts av dessa projekt för att göra detta möjligt. Så nu har vi ett bra sätt att få koll på realtidsförbrukningen (vi har kört var 60 sekund grupperat).

Nuvarande förbrukning som vi ser i Home Assistant är enligt följande (Vi håller på att förändra vår förbrukning!)
Energiförbrukning i vårt hem under 12 timmar rapporterat med ESP32 sensorn via ESPHome.

För att sedan söka fram sensorn kan du välja att gå in på entitet under integrationen för ESPHome (tre bilder upp), där kan du välja att öppna den som en enhet för att se vart den används (bilden nedan)

Listar vi enheterna och söker efter ”demo” så hittar vi vår sensor och vart den idag används.

Väljer du att öppna entiteter så ser du däremot namnet på sensorn som du sedan vill lägga på minnet för att presentera i ditt Home Assistant gränssnitt.

Så i vår ”produktions” home assistant har vi valt att bara integrera mot ”demo” sensorn och då får vi upp en ny entitet med entites-id Sensor.power_meter_house

Vad är det som får oss att skriva om esphome? Det finns ju en mängd andra lösningar med, där den närmaste här är touya.

Mäta temperaturer med ESPHome

Med hjälp av en esp32 och temperatursensorn ds18b20 (dallas sensor) så kunde vi börja mäta temperaturer i pannrummet. Jämför vi detta med de jobb vi lagt tidigare på den här ethernet kopplade arduinon så är det säkert mer än en hel dags kodande som vi helt sluppit, nu har vi för visso gjort ett gränssnitt till våra arduinos som används på tre olika arduinos.

Med en OneWire (dallas / ds18b20) så få vi effektivt in temperaturen in i Home Assistant.

För att läsa in en DS18B20 sensor så behöver vi först göra konfigurationen ”dallas:” samt pin sätta vilken GPIO sensorn kopplas på, vi har valt GPIO23 och sagt att temperaturen ska uppdateras var 30:e sekund. För att sedan få fram det id som du ser under sensors så behöver du kontrollera Loggen efter du laddat upp den första koden.

    # Behövs för att välja vilken pinne din onewire (dallas slinga ska sitta på)
dallas:
  - pin: GPIO23
    update_interval: 30s
  
# Dallas Sensor (ds18b20)
sensor:
  - platform: dallas
    address: 0xFF00000628238FFF
    name: "uppvarmning - Pannan"
    resolution: 10

Mer info kommer inom kort här med, men fram tills dess så finns det allt som behövs på ESPHome:s hemsida här: https://esphome.io/components/sensor/dallas.html

Vill du inte bygga egna sensorer så finns det ganska många du kan köpa som är färdiga med som jag testat på bloggen:

Snödjupsmätare med esphome

Vi har tidigare fått en fråga om att göra en snödjupsmätare, det har länge legat på listan över saker att göra. Men vi har inte haft tid och kunnat prioritera upp det. Men nu med esphome så går det snabbt att både testa och skapa en. Den första varianten vi gjorde var för att mäta pelletsnivån. vi löser det med hjälp av en pingsensor.

Redan nu har vi börjat testa att mäta Pellets, men inom kort ska vi testa att göra en sensor för att mäta snödjup på motsvarande sätt.
Vi håller på att testa att använda en ESP32 för att mäta avståndet via ”ping” sensor. Dvs den skickar ut ett ljud och mäter tiden det tar för att få svar. Sensorn längst ner till vänster är det som genererar grafen ovan.

För att gör en sensor som mäter avståndet så behöver du tillgång till en pingsensor, vi kommer inom kort uppdatera det här steget med mer information. Vi har inte fått alla delar på plats.

# Koden för att Konfigurationen för att mäta avstånd var 5:e minut är följande:
sensor:
  - platform: ultrasonic
    trigger_pin: GPIO25
    echo_pin: GPIO26
    name: "Ultrasonic Pellets"
    update_interval: 300s

Vad kan du använda ESPHome till?

Om du inte ovan fått idéer så säg till, vi ser oändliga möjligheter med ESPHome eftersom detta nu kortar ner startsträckan i projekten. Vi kommer nu ersätta två av de Arduino projekt vi publicerat om på vår Instagram med ESPHome, både på grund av underhållet av koden och formfaktorn. Detta kommer dock kräva att vi tänker till mer på den wifi som nu kommer få ännu mer kritisk funktionalitet i vårt smarta hem

Om innan annat så är formfaktorn och funktionerna som ESP8266 och ESP32 erbjuder mycket bättre utifrån formfaktorn jämfört med Arduino med motsvarande funktionalitet…

Ser du något mer som saknas, eller vill veta mer om det? gå in på någon av våra sociala medier eller skriv en kommentar nedan så försöker vi svara så fort vi hinner med

Vill du stötta mej och hjälpa bloggen framåt? Här är några sätt som verkligen uppskattas av mig

Gillar du att sidan är helt fri från reklam och vill stötta bloggen? Swisha gärna en swish-kaffe på 0705470065 medans vi skriver på nästa inlägg :)
Stötta med några kr till driftkostnaden
av bloggen via en Swish – 0705470065
Här kan du läsa mer om bloggens
kostnader.
Kolla i min lilla webbshop efter något
som hjälper dig bygga ditt smarta hem.

Följ min resa till ett smartare hem via mina sociala medier

Gör som andra och prenumerera på min blogg via mail! Du får den senaste infon om smarta hem som mail och behöver inte längre hålla koll på bloggen för att hänga med.

Har du precis börjat med smarta hem eller redan kommit en bit på resan? Läs mina dedikerade guider om smarta hem. Dom ger dig kunskaper och insikter som hjälper dig fatta rätt beslut i din resa.


Kommentarer

4 svar till ”Guide: Home Assistant och ESPHome”

  1. Hej Markus!
    Har stirrat på inkopplingen av LDR:en en lång stund och får inte ihop det.
    Enligt din bild ser det ut som att pin 25 är ansluten till jord och kommer inte påverkas av LDR:en.

    1. Koppla den enligt denna så kommer det fungera: https://blog.udemy.com/arduino-ldr/
      Jag hade en 100 kohms LDR så jag bytte ut R1 till ett 100 kohms motstånd istället för 10 kohm.
      Min nodemcu-32s var även feltryckt på själva kortet så pin-out stämde inte, googlade hur andra nodemcu-32s hade sina pinout och det stämde bättre.

  2. Hej,

    Intressant artikel, jag är sugen på att byta ut min Tibber Pulse mot en sån här lösning.

    Jag får dock heller inte ihop inkopplingen. Har du möjligtvis en bild som visar alltihopa?

  3. Är det någon som har provat att använda ESPHOME för at styra dali belysning se länk
    Och fåt det att fungera
    https://github.com/stef011/Dalit-Light-Controller-ESPHome

Lämna ett svar

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



Vill du lära dig mer om smarta hem
och inte riskera missa några nyheter?
prenumerera då på bloggen via mail.

Gateway / Kontrollers & mjukvaror

Det finns idag en uppsjö tekniker och enheter på marknaden, tyvärr så finns det inte någon perfekt lösning ännu, utan varje lösning har sina styrkor och svagheter. För att du lättare ska kunna välja vilket spår som passar dig så har jag samlat alla tekniker jag testat och en bra sammanfattning om dom. Utifrån det kan du själv avgöra vad du anser mest lämpat. Är du osäker på vart du ska börja så kolla in min nybörjarguide om smarta hem, där får du tips på vad du ska leta efter och fundera över innan du kör igång.