Du wolltest schon immer mal wissen, was ESPHome und diese ESP32 oder 8266 Chips sind, aber warst von allen Videos immer nur verwirrter als vorher?
Hier erkläre ich Dir in einfachen Worten und mit 2 einfachen, nachvollziehbaren Beispielprojekten, wie ESPHome geht und was Du zum Start wirklich brauchst 🙌
Inhaltsverzeichnis
- Voraussetzungen
- Vokabeln zu ESP32 oder 8266 Boards
- ESP32 & ESP8266 Hardware
- Sensoren / Aktoren / Spezielle Module
- Zubehör
- ESPHome
- Fazit
Voraussetzungen
Home Assistant muss bereits installiert sein, auf welcher Hardware spielt keine Rolle.
Ressourcen
Vokabeln zu ESP32 oder 8266 Boards
Um etwas der Verwirrung vorzubeugen, wenn du selber bei Amazon auf die Jagd gehst, hier mal einige Infos in kompakter Form.
Chip
Das erste Unterscheidungsmerkmal ist der Chip (bestimmt sowohl Leistung als auch Fähigkeiten sowie WLAN-Eigenschaften), welcher sich zumindest für ESPHome auf den ESP32 und den ESP8266 beschränkt:
- Der ESP32 ist leistungsfähiger (2 CPU-Kerne) und der Chip beherrscht mehr Methoden, wie beispielsweise eine Hardware-Implementierung des Pulse-Counters.
- Auch das WLAN kann einiges mehr. Unter anderem 802.11v BSS Transition Management & 802.11k Radio Resource Management. Klingt vielleicht komisch, heißt aber nur, dass du mit dem ESP32 weniger Probleme haben kannst, eine Verbindung zum WLAN herzustellen.
- Der ESP8266 hat nur 1nen CPU-Kern und unterstützt weniger Hardware-Methoden. (Er kann aber trotzdem genau so einen Pulse-Counter definieren, nur eben über die Software)
Board
Des Weiteren gibt es das Board, welches den Formfaktor des gekauften Artikels, teilweise das Pinout und ob es Breadboard-Kompatibel ist, bestimmt. Beispielsweise hier die Beschreibung von D1 Mini Board.
Das D1 Mini ist ein Breadboard-kompatibles WiFi-Entwicklungsboard auf Basis des ESP8266.
https://www.addicore.com/D1-Mini-Dev-Board-p/ad318.htm
Dieses Board ist kompatibel mit der Arduino IDE und mit NodeMCU.
Alle I/O-Pins haben Interrupt-, PWM-, I2C- und One-Wire-Fähigkeit, mit Ausnahme von Pin D0.
Noch ein Hinweis an der Stelle: Obwohl beispielsweise das D1 Mini Board Design auf dem ESP8266 basiert, gibt es trotzdem welche mit ESP32 Chip*.
NodeMCU
NodeMCU ist eine Open-Source-Firmware, für die Open-Source-Prototyping-Board-Designs verfügbar sind. Der Name “NodeMCU” setzt sich aus “Node” (Knoten) und “MCU” (Micro-Controller Unit) zusammen. Genau genommen bezieht sich der Begriff “NodeMCU” auf die Firmware und nicht auf die zugehörigen Entwicklungskits.
Es ist also einfach gesagt das Zusammenspiel aus Hardware und Firmware mit den ESP-Mikrocontrollern und einem vollen TCP/IP Stack (Netzwerkfähigkeit).
ESP32 & ESP8266 Hardware
Bevor du jetzt auf Amazon gehst, nach ESP32 suchst und absteigend nach Preis sortierst sei gewarnt, dass die (zu)billigen häufig schlecht verlötet sind, der WLAN-Empfang katastrophal & kaputte Boards normal sind.
Einen guten Hersteller zu finden, dem man selber vertraut und dabei zu bleiben, ist wirklich eine gute Idee.
ESP32 Entwicklerboard
Alternative 1: ESP32 auf D1 Mini Board*.
ESP8266 Entwicklerboard
- Alternative 1: ESP8266 D1 Mini V3* (Im Video gezeigt, Boards haben häufig Verbindungsprobleme)
- Alternative 2: ESP8266 D1 Mini Pro* (Externer Antennenanschluss nach Umlöten des Widerstands, mehr Speicher, leichter, OnBoard-Keramikantenne für WLAN)
Sensoren / Aktoren / Spezielle Module
In diesem Kit ist ebenfalls die Ampel und das Mikrofonmodul für das Projekt mit enthalten:
Alle nativ unterstützten Komponenten findet man direkt in der esphome Doku-Seite.
Sensoren
Mikrofon
Wurde auch im Beispielprojekt genutzt (Aus dem Set von oben).
Linienfolger
Im Projekt zu Ferraris-Stromzähler digitalisieren benutzt.
Bewegungsmelder (PIR)
Zur Bewegungserkennung sehr praktisch.
Temperatur / Luftdruck / Luftfreuchtigkeit usw.
- Der BME280* ist ein unglaublich genauer Sensor (0,01 Grad), der Temperatur, Luftdruck und Luftfeuchtigkeit misst, aber auch kostspielig ist
- Bitte kaufe dir keine DHT11* (Temperatur, extrem ungenau)
- Der DHT22* (Temperatur & Luftfeuchtigkeit) eher auch nicht, wenn du keine Abweichung um im Extremfall bis zu einem halben Grad in Kauf nehmen willst
- Der AHT10* (Temperatur & Luftfeuchtigkeit) ist mit +- 0,3 Grad schon etwas genauer
- Ich halte den HDC1080 für Preiswert & genau, mit +- 0,2 Grad
Aktoren
RGB-Ampel
Wurde auch im Beispielprojekt genutzt (Aus dem Set von oben).
Relais
Relais sind einfache elektronische Bauteile, mit denen du eine hohe Last mit nur einem einzigen Pin auf deiner Platine schalten kannst.
Alternativ gibt es auch schon komplette “Module”* oderDollaTek 5V SP8266 Vierkanal Wifi Relais IOT Smart Home Handy APP Fernbedienung*, zum Flashen wird dann aber einen USB-Adapter* benötigt.
MCP2515 CAN Bus Shield
Hierüber kann mit einem CAN-Bus kommuniziert werden. Für sehr spezielle Einsatzzwecke geeignet, wie ggf. das Einbinden von Wärmepumpen in Home Assistant oder sonstiger Gebäudetechnik mit CAN-Bus.
ESP32 Cam
Kann unter anderem für AI-on-the-edge-device genutzt werden (Digitalisieren analoger Zähler / Anzeigen und Instrumente)
(Alternative, AZ-Delivery Modell* aktuell nicht lieferbar)
Zum Flashen des ESP32 auf dem ESP32 Cam Modul wird in jedem Fall ein FT232RL USB zu TTL Serial Adapter* benötigt. Nicht vergessen, den Jumper auf 5V zu stellen 😉
Zubehör
ESPHome
Code für ESP32-Projekt
esphome: name: esphome-test esp32: board: esp32dev framework: type: arduino # Enable logging logger: # Enable Home Assistant API api: encryption: key: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ota: password: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" wifi: ssid: !secret wifi_ssid password: !secret wifi_password # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Esphome-Test Fallback Hotspot" password: "XXXXXXXXXXXXXXXX" captive_portal: switch: - name: green_light platform: gpio pin: GPIO15 - name: yellow_light platform: gpio pin: GPIO0 - name: red_light platform: gpio pin: GPIO16 binary_sensor: - platform: gpio pin: GPIO26 name: "Sound level" filters: - delayed_off: 1s
Fazit
Ich hoffe ich konnte dir helfen, mit ESP32 sowie ESP8266 Mikrocontrollern etwas warmzuwerden und zu verstehen, wie ESPHome uns als Home Assistant Nutzer helfen kann, eine Firmware mit verständlicher YAML-Syntax über WiFi darauf zu flashen 🙌
Wenn du Fragen oder Anmerkungen hast, zögere nicht, sie mir unten in den Kommentaren mitzuteilen und ich werde mein Bestes tun, um dir zu helfen. Vielen Dank fürs Zuschauen!
Hey Simon,
Deine Videos sind echt klasse und ich hab als Neuling schon bereits einiges in HA einbinden können. Bei ESP Home stocke ich aber leider und google liefert mir auch keine guten Ergebnisse. Also ich hab das von dir empfohlene Entwicklerboard ESP32 und versuche es über Homeassistant zu installieren. Leider erkennt weder der Host noch mein Laptop (über den eine Installation ja auch möglich wäre) das Board nicht. Woran könnte das liegen? Habe auch jeweils mehrere Ports ausprobiert. Das rote Lampe am Board blinkt ein paar mal und dann ist Schluss, wenn ich es einstecke.
Vielen Dank für deinen Support und mach weiter so! Dadurch bekommt sogar ein DAU wie ich etwas mit HA zustande.
Hey Simon,
zu aller erst vielen, vielen Dank für dein Engagement in Sachen Home Assistant.
Durch deine Videos bin ich seit kurzer Zeit zu Home Assistant gewechselt.
Ich habe mir das von dir beschriebene ESP32 Entwicklerboard ESP-32 Dev Kit C V2 gekauft, aber kann dieses nicht in Home Assistant einbinden, da mir dort nur das ESP-32 Dev Kit C V4 angezeigt wird.
Gibt es einen Trick, wie ich da weiter kommen kann ?
Hallo Simon,
ich versuche jetzt nach deiner Anleitung espHome auf meinem Home Assistant zu installieren,und verzweifel dabei langsam.Ich habe das espHome nicht in meinem Addon Store aufgelistet,wenn ich das resporsity von github hinzufügen will,wird mir angezeigt das das schon vorhanden ist.Aber kein espHome! Was mache ich falsch bzw woran kann das liegen?
Zudem versuche ich mich in in deinem Forum zu registrieren und bekomme keine Aktivierungsmail.
gruß Tobias
Hi Tobias, hatte das mit dem Forum inzwischen geklappt? Wir hatten kurzzeitig Probleme mit der Mail-Config 😅
Hallo Simon, ich habe mein HA auf einem Raspi 4 und einer SSD gemäß Deiner Anleitung installiert.
Sobald ich einen ESP32 per USB an den Raspi anschließe, kann ich in HA nichts mehr auswählen. HA hängt dann quasi. Muss hierfür schon zwingend ein Netzteil mit 4A angeschlossen sein?
Das Netzteil ist quasi für einen stabilen Betrieb ohnehin Pflicht (also das Original-Netzteil), aber es könnten in diesem Fall auch Interferenzen vom USB-Port sein. Mal einen anderen Port probiert?
Gute Anleitung für Einsteiger.
Ich benutze den ESP8266 mit BME280 und einem kleinen OLED auf einer Lochrasterplatine im selbstgedrucktem Gehäuse, in jedem Zimmer für Temperatur, Luftfeuchtigkeit und Luftdruck. Gleichzeitig sende ich die Daten per WLAN an HA, um sie zentral zu erfassen.
Als zweite Funktion dienen sie als Temperaturwächter. Geht die Temperatur über 40°C und sinkt die Luftfeuchtigkeit, könnte es im Zimmer brennen! Das ist kein Rauchmelder Ersatz, aber ich bekomme eine Warnung/Meldung aufs Mobiltelefon. Getestet habe ich es schon, aber den Ernstfall, möchte ich dennoch nicht erleben.
Es gibt sehr viele Ideen, was man mit den ESP realisieren kann.
Gefällt mir richtig gut 👍
Ein super Use-Case. Welche Stromversorgung hast Du? Ich scheue, alles über Steckdosen anzubinden. Gibt es auch Batterielösungen?