Direkt zum Hauptinhalt

Installation ESP32

Beschreibung:

ESP32 lässt sich in vier Varianten installieren

  1. Einmal auf dem Home Assistant selber (Vorteil, LOGS und OTA Updates und ESP32 direkt anschließen und yaml flashen)
  2. Auf beliebigen Computer mit Linux und pip per command line (Vorteil Home Assistant unabhängig zum flashen, sonst muss ja der ESP32 an den Home Assistanten angeschlossen sein
  3. Über die Website vom ESP32Home und dann per Terminal oder Home Assistant Erweiterung.
    Dient eigentlich nur zum vorbereiten zum OTA. Denn YAML muss dann über Terminal oder Home Assistant übertragen werden.
  4. Über die Webseite selbst nur gehostet im Container, sonst wie drei. Kann als Standalone betrieben werden. Nicht vergessen die Secrets yaml auszufüllen

Beispiel yaml Datei ein Beacon scanner:

Inhalt, hier in diesem Beispiel folgende sachen anpassen

  • den Namen vergeben, was auch gleichzeitig der Hostname wäre der anpingbar ist durch mdns. Dieser muss für OTA Auflösbar sein.
  • das Board siehe Liste drunter
  • die WLAN Daten,
  • AP,im Abschnitt Wifi, einmal ne SSID und ein Kennwort vergeben. Kennwort ist optional, würd ich aber setzten, ansonsten das feld passwort komplett weg lassen und schon ist fallback ein offener Hostspot. Was ich aber nicht machen würde
  • Die mqtt Daten anpassen.
  • Den MQTT Topic anpassen der via mqtt gesendet wird.
  • API KEY als base54 encodes, siehe script zum erstellen
  • Passwort für OT flashen  Wichtig sont könnte jeder online ein anders passwort setzen, denn der api key ist nur für den home assistant
esphome:
  name: ble_beacon_scanner

esp32:
  board: esp32s3box
  framework:
    type: arduino

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  # Erstelle fallback hotspot (captive portal) wenn kein Wifi mehr da ist weil daten geändert
  ap:
    ssid: "Esphome-Web-039C08"
    #das passwort ist optional, das feld kann weg gelassen werden, würd ich aber nicht machen, sondern drin lassen
    password: "KFduHM2A4N7f"

mqtt:
  broker: !secret mqtt_broker
  username: !secret mqtt_user
  password: !secret mqtt_password

logger:
#API für das Home Assistant Addon ESP Home
api:
  encryption: #wenn encryption muss der API key mit 64 Zeichen im Klartext ergibt  base64 encoded               
    #key muss 32 bytes lang sein, also 64 Zeichen, außer er ist base64 encode, dann ist base64 kürzer
    key: "3Ld2bo6AfQfhuowU+AMva/vTlhiyqaAtjsxgpPPX8l0="

ota:
  platform: esphome
  #passwort wichtig sont könnte jeder online ein anders passwort setzen, denn der api key ist nur für den home assistant
  password: "a7789f4d396d05921e9cc7c709a260c7"



#captive portal, sobald mit dem WLAN verbunden wird man auf eine Seite geleitet um neue WLAN Daten einzugeben. Echt praktisch
captive_portal:


#der code teil
esp32_ble_tracker:
  on_ble_advertise:
    then:
      - mqtt.publish_json:
          topic: "ble/scan"
          payload: |-
            root["mac"] = x.address_str();
            root["rssi"] = x.get_rssi();
            root["name"] = x.get_name().empty() ? "unknown" : x.get_name();

            if (!x.get_manufacturer_datas().empty()) {
              auto md = x.get_manufacturer_datas()[0];
              root["manufacturer_id"] = md.uuid.to_string();

              std::string data_hex;
              for (auto b : md.data) {
                char buf[3];
                snprintf(buf, sizeof(buf), "%02X", b);
                data_hex += buf;
              }
              root["manufacturer_data"] = data_hex;

              // UUID aus Bytes 2–17 extrahieren (ab 4. Zeichen = Index 4, Länge 32)
              if (data_hex.length() >= 36) {
                std::string uuid_raw = data_hex.substr(4, 32);
                root["uuid_raw"] = uuid_raw;

                // Mit Bindestrichen formatieren
                std::string uuid_formatted = uuid_raw.substr(0,8) + "-" +
                                             uuid_raw.substr(8,4) + "-" +
                                             uuid_raw.substr(12,4) + "-" +
                                             uuid_raw.substr(16,4) + "-" +
                                             uuid_raw.substr(20,12);
                root["uuid_formatted"] = uuid_formatted;
              }
            }

Ausgabe: des JSON Objetes via MQTT

Nachricht 50 empfangen auf ble/scan um 10:21:

{
    "mac": "44:7C:69:16:2B:FB",
    "rssi": -32,
    "name": "unknown",
    "manufacturer_id": "0x004C",
    "manufacturer_data": "021584B3C9802CE04102AA41F2A394F5651400640001C5",
    "uuid_raw": "84B3C9802CE04102AA41F2A394F56514",
    "uuid_formatted": "84B3C980-2CE0-4102-AA41-F2A394F56514"
}

Script zum erstellen einen Zufall API Keys

nano genapi.py

Inhalt

import os
import sys
import base64

def generate_key():
    key = os.urandom(32)
    print("🔐 Neuer zufälliger Key generiert:\n")
    print(f"Raw bytes:      {key}")
    print(f"Hex (64 Zeichen) Klartext: {key.hex()}")
    print(f"Base64 (44 Zeichen): {base64.b64encode(key).decode()}")
    return

def convert_hex_to_base64(hex_input):
    try:
        key = bytes.fromhex(hex_input)
        if len(key) != 32:
            print(f"❌ Ungültige Länge: {len(key)} Bytes (erwartet: 32 Bytes)")
            return
        print("🔐 Übergebener Hex-Key konvertiert:\n")
        print(f"Raw bytes:      {key}")
        print(f"Hex (64 Zeichen) Klartext: {hex_input}")
        print(f"Base64 (44 Zeichen): {base64.b64encode(key).decode()}")
    except ValueError:
        print("❌ Fehler: Ungültiger Hex-String.")

if __name__ == "__main__":
    if len(sys.argv) == 2:
        convert_hex_to_base64(sys.argv[1])
    else:
        generate_key()

Ausführen :

python3 genapi.py

Ausgabe, dies ist ein API KEY der nie verwendet wird

🔐 Klartext API-Key (hex):
dcb7766e8e807d07e1ba8c14f8032f6bfbd39618b2a9a02d8ecc60a4f3d7f25d

🔐 API-Key (base64):
3Ld2bo6AfQfhuowU+AMva/vTlhiyqaAtjsxgpPPX8l0=

Board Varianten für die Yaml Datei Abschnitt board:

Boardname in yaml Datei Boardname Bild
esp32s3box
esp32-s3-devkitc-1
YD-ESP32-23

image.png

esp32dev 4 Relais ESP 32 Board

grafik.png

Installation Variante 1:

Installation:

Im Home Assistant Addon Store als suchbegriff ESP eingeben und dann auf ESP Home Device Builder klicken (Nicht Beta Version)

image.png

Dort auf Installieren klicken

image.png

Auf Konfiguration gehen

image.png

Nun auf deaktivierte Ports einblenden klciken

image.png

Nun die Portnummer eingeben 6052 und speichern anklciken

image.png

Nun in Seitenleiste anzeigen anhaken, Watchdog anhaken, beim Starten booten anhaken dann auf Starten klicken

image.png
Nun in der Seitenleiste aufrufen

image.png

Jetzt sehen wir die Hauptseite:

grafik.png

Neues Gerät hinzufügen:

Auf + für New Device klicken

grafik.png

Nun auf Continue klicken, denn ESP Hoem Web wäre variante 3.
Dann würde man hier im Abschnitt vorhandenes Gerät hinzufügen anklicken.
Würde nur dann Sinn machen. Wenn man den ESP32 nicht direkt mit dem Home Assistanten verbinden kann, weil man keinen Physikalischen Zugriff drauf hat.

grafik.png

Wenn zum ersten mal gestartet, wird neben dem namen auch nach den WLAn Passwortern gefragt.
Diese können später falls geändert werden müssen im Dashbaord unter secrets geändert werden.
Den Namen vergeben, was auch gleichzeitig der Hostname wäre der anpingbar ist durch mdns.

grafik.png

Nun aber der Dialog mit WLAN

grafik.png

Wenn WLAN eingerichtet wird beim nächsten Gerät nur noch der Namen vergeben, was auch gleichzeitig der Hostname wäre der anpingbar ist durch mdns.
Dann auf next

grafik.png

Nun das Board auswählen, solte das gewünschte Board nicht in der Liste sein, kann das Später in der yaml geändert werden.
Da einfach irgendeins aus der Liste wählen wenn das gewünschte nicht dabei ist

grafik.png

Nun kommt der API Schlüssel, wenn der geändert werden soll auch später in der Yaml abändern.
ist das richtige Board vorher schon gefunden worden und der Schlüssel darf auch der Zufalls generierte sein dann auf Install
klicken ansonsten auf Skip. Wir wählen  hier Install

grafik.png

Nun können wir auswählen

  • Übers WLAN, geht aber nur wenn schon mal eingerichtet wurde
  • Am Homeassistanten flashen wollen (Allerdings aufm Raspberry Zeit mitbringen ;-)   )
  • Über den Browser (geht nur mit google Chrome Variante 3)
  • Manuell lädt die YAML datei runter und man flasht selbst übers Terminal (Variante 2)

WIr wählen hier über den Home Assistanten flashen.

grafik.png

Nun sucht er Serial Geräten. DIe Liste aktualisert wenn rein gesteckt.
Im boot Mode reinstecken.
Boot Taste gedrückt halten, dann reinstecken und gedrückt halten für weitere 2 Sekunden

grafik.png

Gerät wurde gefunden, dann anklicken

grafik.png

Jetzt wird installiert / provisioniert

grafik.png
Fertig geflasht startet automatsich den ESP32 neu

grafik.png

Jetzt kann auf Stop gedrückt werden

grafik.png

Man sieht der ESP32 ist online

grafik.png

Über Edit lässt sich die yaml bearbeiten und code einfügen

grafik.png

Jetzt lässt sich die YAML abändern

grafik.png

Nun über save und install neu flashen over the AIR oder direkt am Home Asstant via USB

grafik.png

Den Dialog kennen wir ja schon vom ersten flashen

grafik.png

Oder im Dashboard über die 3 Punkte dann neu flashen over the AIR oder direkt am Home Asstant via USB

grafik.png

Dann kommt wieder der Dialog

grafik.png

Nun den eigentlichen code also das was der ESP32 machen soll hinzufügen.
Wieder auf Edit

grafik.png

Unser Prgramm code für einen BLE-SCanner den MQTT Topic nennen wir ble/scanwohn
Der Programm code wird unter captive Portal eingefügt
Da wir hier aber noch MQTT verwednen müssen noch die MQTT Zugangsdaten eingefügt werden.
Man kann diese aber auch als Varibalen in der Secrets Datei ablegen dann sehe der MQTT block in der Geräte yaml so aus

mqtt:
  broker: !secret mqtt_broker
  username: !secret mqtt_user
  password: !secret mqtt_password

Und in der  Secret Datei so

#MQTT
mqtt_broker: ip adresse
mqtt_user: username
mqtt_password: password

grafik.png

User Code aus der Besipel Yaml hier nur mit geändertem Topic
Oder mit dem MQTT aus der secrets, dann einfach erstezten,  wie man möchte.

mqtt:
  broker: 192.168.177.20
  username: mqtt
  password: mega sicherkennwort



#der code teil
esp32_ble_tracker:
  on_ble_advertise:
    then:
      - mqtt.publish_json:
          topic: "ble/scanwohn"
          payload: |-
            root["mac"] = x.address_str();
            root["rssi"] = x.get_rssi();
            root["name"] = x.get_name().empty() ? "unknown" : x.get_name();

            if (!x.get_manufacturer_datas().empty()) {
              auto md = x.get_manufacturer_datas()[0];
              root["manufacturer_id"] = md.uuid.to_string();

              std::string data_hex;
              for (auto b : md.data) {
                char buf[3];
                snprintf(buf, sizeof(buf), "%02X", b);
                data_hex += buf;
              }
              root["manufacturer_data"] = data_hex;

              // UUID aus Bytes 2–17 extrahieren (ab 4. Zeichen = Index 4, Länge 32)
              if (data_hex.length() >= 36) {
                std::string uuid_raw = data_hex.substr(4, 32);
                root["uuid_raw"] = uuid_raw;

                // Mit Bindestrichen formatieren
                std::string uuid_formatted = uuid_raw.substr(0,8) + "-" +
                                             uuid_raw.substr(8,4) + "-" +
                                             uuid_raw.substr(12,4) + "-" +
                                             uuid_raw.substr(16,4) + "-" +
                                             uuid_raw.substr(20,12);
                root["uuid_formatted"] = uuid_formatted;
              }
            }

Eingefügt am ende quasi

grafik.png

Dann auf save und  install klicken

grafik.png

Und dann flashen mit der bevorzugten Variante

grafik.png

Nach der installation, einfach auf Geräte und MQTT, dann konfigurieren und ble/scanwohn abonieren.
JSON formatieren einhaken für bessere Ansicht

grafik.png

Nun kommt das Ergebnis:

grafik.png

Fertig.


Ein vorhandenes Gerät einbinden:

Um ein Vorhandenes Gerät einzubinden, brauchen wir die yaml Datei von dem Gerät.
Wir erstellen erstmal ein neues Gerät. Der name ist gleich dem Namen aus der yaml Datei

Hier als beispiel 

esphome-web-039c08

Im Dashboard unten recht auf New Device klicken

grafik.png

auf continue klicken, Namen eingeben

grafik.png

grafik.png

Irgendein board auswählen

grafik.png

Nun auf skip klicken

grafik.png

Nun auf Edit klicken

grafik.png

Hier die beiden Abschnitte die wir dann gleich ersetzen.

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password


mqtt:
  broker: !secret mqtt_broker
  username: !secret mqtt_user
  password: !secret mqtt_password

Nun die ganze yaml Datei ersetzen mit der eigentlichen

Alt: 

esphome:
  name: esphome-web-039c08
  friendly_name: esphome-web-039c08

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "TTs3VAq69x6xitsN7PpZ5jqBY5vWkyL2NLjp344lxWc="

ota:
  - platform: esphome
    password: "94e5d2d9d524baf059721f13b128c5e0"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esphome-Web-039C08"
    password: "IdJR1mS76ePc"

captive_portal:

Neu

esphome:
  name: esphome-web-039c08
esp32:
  board: esp32s3box
  framework:
    type: arduino
wifi:
  ssid: WLAN_DRUCKER
  password: wlan_pass
  ap:
    ssid: "Esphome-Web-039C08"
    #das passwort ist optional, das feld kann weg gelassen werden, würd ich aber nicht machen, sondern drin lassen
    password: "ap kennwort"

mqtt:
  broker: ip von mqtt
  username: mqtt
  password: mqtt pass

logger:
#API für das Home Assistant Addon ESP Home
api:
  encryption: #wenn encryption muss der API key mit 64 Zeichen im Klartext ergibt  base64 encoded
    #key muss 32 bytes lang sein, also 64 Zeichen, außer er ist base64 encode, dann ist base64 kürzer
    key: "apie base64 key"
ota:
  platform: esphome
  password: "ota password"

#captive portal, sobald mit dem WLAN verbunden wird man auf eine Seite geleitet um neue WLAN Daten einzugeben. Echt praktisch
captive_portal:

esp32_ble_tracker:
  on_ble_advertise:
    then:
      - mqtt.publish_json:
          topic: "ble/scantuer"
          payload: |-
            root["mac"] = x.address_str();
            root["rssi"] = x.get_rssi();
            root["name"] = x.get_name().empty() ? "unknown" : x.get_name();

            if (!x.get_manufacturer_datas().empty()) {
              auto md = x.get_manufacturer_datas()[0];
              root["manufacturer_id"] = md.uuid.to_string();

              std::string data_hex;
              for (auto b : md.data) {
                char buf[3];
                snprintf(buf, sizeof(buf), "%02X", b);
                data_hex += buf;
              }
              root["manufacturer_data"] = data_hex;

              // UUID aus Bytes 2–17 extrahieren (ab 4. Zeichen = Index 4, Länge 32)
              if (data_hex.length() >= 36) {
                std::string uuid_raw = data_hex.substr(4, 32);
                root["uuid_raw"] = uuid_raw;

                // Mit Bindestrichen formatieren
                std::string uuid_formatted = uuid_raw.substr(0,8) + "-" +
                                             uuid_raw.substr(8,4) + "-" +
                                             uuid_raw.substr(12,4) + "-" +
                                             uuid_raw.substr(16,4) + "-" +
                                             uuid_raw.substr(20,12);
                root["uuid_formatted"] = uuid_formatted;
              }
            }

Nun die WLAN und MQTT Blöcke austauschen, da wir die Daten in der secrets Datei drin haben.

Die fertige yaml

esphome:
  name: esphome-web-039c08
esp32:
  board: esp32s3box
  framework:
    type: arduino
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap:
    ssid: "Esphome-Web-039C08"
    #das passwort ist optional, das feld kann weg gelassen werden, würd ich aber nicht machen, sondern drin lassen
    password: "ap kennwort"

mqtt:
  broker: !secret mqtt_broker
  username: !secret mqtt_user
  password: !secret mqtt_password

logger:
#API für das Home Assistant Addon ESP Home
api:
  encryption: #wenn encryption muss der API key mit 64 Zeichen im Klartext ergibt  base64 encoded
    #key muss 32 bytes lang sein, also 64 Zeichen, außer er ist base64 encode, dann ist base64 kürzer
    key: "apie base64 key"
ota:
  platform: esphome
  password: "ota password"

#captive portal, sobald mit dem WLAN verbunden wird man auf eine Seite geleitet um neue WLAN Daten einzugeben. Echt praktisch
captive_portal:

esp32_ble_tracker:
  on_ble_advertise:
    then:
      - mqtt.publish_json:
          topic: "ble/scantuer"
          payload: |-
            root["mac"] = x.address_str();
            root["rssi"] = x.get_rssi();
            root["name"] = x.get_name().empty() ? "unknown" : x.get_name();

            if (!x.get_manufacturer_datas().empty()) {
              auto md = x.get_manufacturer_datas()[0];
              root["manufacturer_id"] = md.uuid.to_string();

              std::string data_hex;
              for (auto b : md.data) {
                char buf[3];
                snprintf(buf, sizeof(buf), "%02X", b);
                data_hex += buf;
              }
              root["manufacturer_data"] = data_hex;

              // UUID aus Bytes 2–17 extrahieren (ab 4. Zeichen = Index 4, Länge 32)
              if (data_hex.length() >= 36) {
                std::string uuid_raw = data_hex.substr(4, 32);
                root["uuid_raw"] = uuid_raw;

                // Mit Bindestrichen formatieren
                std::string uuid_formatted = uuid_raw.substr(0,8) + "-" +
                                             uuid_raw.substr(8,4) + "-" +
                                             uuid_raw.substr(12,4) + "-" +
                                             uuid_raw.substr(16,4) + "-" +
                                             uuid_raw.substr(20,12);
                root["uuid_formatted"] = uuid_formatted;
              }
            }

Nun auf Save klicken.
Zum testen einfach auf install klicken,

grafik.png

dann  over the air auswählen

grafik.png

Nun wird die Binary neu compiliert und auf das Gerät geschoben

grafik.png

grafik.png

Und unter Geräte -> MQTT -> konfiguration abbonieren wir wieder das Topic uns sehen die BLE Geräte in der umgebung

grafik.png

 Fertig, das Gerät kann jetzt in Home Assistant verwaltet werden.

Installation Variante 2:

Vorrausetzung:

Wir müssen der Dialup Gruppe zum schreiben auf USB hingefügt werden. Und schreibrechte für Jeden auf den Serial Port
Im Terminal

sudo usermod -a -G dialout <username>
Beispiel:

sudo usermod -a -G dialout duffy

via pip:

python3 -m venv esphome32
source esphome32/bin/activate
cd esphome32
pip install esphome

Inhalt aus YAML Datei oben einfügen

nano ble_beacon_scanner.yaml

Nun die Boottaste gedrückt halten, dann erst den ESP32 per USB Verbinden und Taste 5 Sekunden weiter gedrückt halten

Nun den Befehl zum flashen ausführen

sudo chmod 777 /dev/ttyACM0
esphome run ble_beacon_scanner.yaml

Ausgabe, Zum Schluss wird gefragt over the AIR oder  TTY. Wir wählen 1. der name ist übrigens der Hostname für OVER the AIR wenn WLAN funktioniert, dazu muss das Gerät aber zum ersten mal via USB geflasht werden

Ausgabe

INFO ESPHome 2025.5.1
INFO Reading configuration ble_beacon_scanner.yaml...
WARNING 'ble_beacon_scanner': Using the '_' (underscore) character in the hostname is discouraged as it can cause problems with some DHCP and local name services. For more information, see https://esphome.io/guides/faq.html#why-shouldn-t-i-use-underscores-in-my-device-name
INFO Generating C++ source...
INFO Core config, version or integrations changed, cleaning build files...
INFO Compiling app...
***********************************************************************************************************************************************************************************************************************************************
If you like PlatformIO, please:
- star it on GitHub > https://github.com/platformio/platformio-core
- follow us on LinkedIn to stay up-to-date on the latest project news > https://www.linkedin.com/company/platformio/
- try PlatformIO IDE for embedded development > https://platformio.org/platformio-ide
***********************************************************************************************************************************************************************************************************************************************

Processing ble_beacon_scanner (board: esp32dev; framework: arduino; platform: platformio/espressif32@5.4.0)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Platform Manager: Installing platformio/espressif32 @ 5.4.0
INFO Installing platformio/espressif32 @ 5.4.0
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Platform Manager: espressif32@5.4.0 has been installed!
INFO espressif32@5.4.0 has been installed!
Tool Manager: Installing espressif/toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
INFO Installing espressif/toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Downloading  [####################################]  100%          
Unpacking  [####################################]  100%          
Tool Manager: toolchain-xtensa-esp32@8.4.0+2021r2-patch5 has been installed!
INFO toolchain-xtensa-esp32@8.4.0+2021r2-patch5 has been installed!
Tool Manager: Installing platformio/framework-arduinoespressif32 @ ~3.20005.0
INFO Installing platformio/framework-arduinoespressif32 @ ~3.20005.0
Downloading  [####################################]  100%          
Unpacking  [####################################]  100%          
Tool Manager: framework-arduinoespressif32@3.20005.220925 has been installed!
INFO framework-arduinoespressif32@3.20005.220925 has been installed!
Tool Manager: Installing platformio/tool-esptoolpy @ ~1.40400.0
INFO Installing platformio/tool-esptoolpy @ ~1.40400.0
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Tool Manager: tool-esptoolpy@1.40400.0 has been installed!
INFO tool-esptoolpy@1.40400.0 has been installed!
Tool Manager: Installing platformio/tool-scons @ ~4.40801.0
INFO Installing platformio/tool-scons @ ~4.40801.0
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Tool Manager: tool-scons@4.40801.0 has been installed!
INFO tool-scons@4.40801.0 has been installed!
Library Manager: Installing bblanchon/ArduinoJson @ 6.18.5
INFO Installing bblanchon/ArduinoJson @ 6.18.5
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Library Manager: ArduinoJson@6.18.5 has been installed!
INFO ArduinoJson@6.18.5 has been installed!
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- WiFi @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- Update @ 2.0.0
|-- ArduinoJson @ 6.18.5
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32/core.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32/gpio.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32/preferences.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32_ble/ble.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32_ble/ble_advertising.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32_ble/ble_uuid.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/esphome/ota/ota_esphome.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/logger.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/logger_esp32.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/logger_esp8266.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/logger_host.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/logger_libretiny.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/logger_rp2040.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/logger/task_log_buffer.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/md5/md5.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mdns/mdns_component.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mdns/mdns_esp32.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mdns/mdns_host.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mdns/mdns_libretiny.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mdns/mdns_rp2040.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/custom_mqtt_device.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_alarm_control_panel.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_backend_esp32.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_binary_sensor.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_button.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_client.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_climate.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_component.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_cover.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_date.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_datetime.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_event.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_fan.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_light.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_lock.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_number.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_select.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_sensor.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_switch.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_text.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_text_sensor.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_time.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_update.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/mqtt/mqtt_valve.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/network/util.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/ota/ota_backend.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/ota/ota_backend_arduino_libretiny.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/ota/ota_backend_arduino_rp2040.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/safe_mode/safe_mode.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/socket/lwip_sockets_impl.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/socket/socket.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/wifi/wifi_component.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/wifi/wifi_component_esp32_arduino.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/wifi/wifi_component_esp_idf.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/wifi/wifi_component_libretiny.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/components/wifi/wifi_component_pico_w.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/application.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/color.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/component.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/component_iterator.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/controller.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/entity_base.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/helpers.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/log.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/ring_buffer.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/scheduler.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/string_ref.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/time.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/esphome/core/util.cpp.o
Compiling .pioenvs/ble_beacon_scanner/src/main.cpp.o
Building .pioenvs/ble_beacon_scanner/bootloader.bin
Generating partitions .pioenvs/ble_beacon_scanner/partitions.bin
Creating esp32 image...
Successfully created esp32 image.
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFi.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiAP.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiClient.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiGeneric.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiMulti.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiSTA.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiScan.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiServer.cpp.o
Compiling .pioenvs/ble_beacon_scanner/libb48/WiFi/WiFiUdp.cpp.o
Compiling .pioenvs/ble_beacon_scanner/lib001/ESPmDNS/ESPmDNS.cpp.o
Compiling .pioenvs/ble_beacon_scanner/lib315/Update/HttpsOTAUpdate.cpp.o
Compiling .pioenvs/ble_beacon_scanner/lib315/Update/Updater.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/Esp.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/FirmwareMSC.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/FunctionalInterrupt.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/HWCDC.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/HardwareSerial.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/IPAddress.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/IPv6Address.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/MD5Builder.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/Print.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/Stream.cpp.o
Archiving .pioenvs/ble_beacon_scanner/libb48/libWiFi.a
Indexing .pioenvs/ble_beacon_scanner/libb48/libWiFi.a
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/StreamString.cpp.o
Archiving .pioenvs/ble_beacon_scanner/lib001/libESPmDNS.a
Indexing .pioenvs/ble_beacon_scanner/lib001/libESPmDNS.a
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/Tone.cpp.o
Archiving .pioenvs/ble_beacon_scanner/lib315/libUpdate.a
Indexing .pioenvs/ble_beacon_scanner/lib315/libUpdate.a
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/USB.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/USBCDC.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/USBMSC.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/WMath.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/WString.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/base64.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/cbuf.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-adc.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-bt.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-cpu.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-dac.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-gpio.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-i2c-slave.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-i2c.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-ledc.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-matrix.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-misc.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-psram.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-rgb-led.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-rmt.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-sigmadelta.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-spi.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-time.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-timer.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-tinyusb.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-touch.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/esp32-hal-uart.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/firmware_msc_fat.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/libb64/cdecode.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/libb64/cencode.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/main.cpp.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/stdlib_noniso.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/wiring_pulse.c.o
Compiling .pioenvs/ble_beacon_scanner/FrameworkArduino/wiring_shift.c.o
Archiving .pioenvs/ble_beacon_scanner/libFrameworkArduino.a
Indexing .pioenvs/ble_beacon_scanner/libFrameworkArduino.a
Linking .pioenvs/ble_beacon_scanner/firmware.elf
RAM:   [==        ]  16.1% (used 52908 bytes from 327680 bytes)
Flash: [========= ]  89.4% (used 1640417 bytes from 1835008 bytes)
Building .pioenvs/ble_beacon_scanner/firmware.bin
Creating esp32 image...
Successfully created esp32 image.
esp32_create_combined_bin([".pioenvs/ble_beacon_scanner/firmware.bin"], [".pioenvs/ble_beacon_scanner/firmware.elf"])
SHA digest in image updated
Wrote 0x1a1e70 bytes to file /home/duffy/esphome32/.esphome/build/ble_beacon_scanner/.pioenvs/ble_beacon_scanner/firmware.factory.bin, ready to flash to offset 0x0
esp32_copy_ota_bin([".pioenvs/ble_beacon_scanner/firmware.bin"], [".pioenvs/ble_beacon_scanner/firmware.elf"])
======================================================================================================== [SUCCESS] Took 198.11 seconds ========================================================================================================
INFO Successfully compiled program.
Found multiple options for uploading, please choose one:
  [1] /dev/ttyACM0 (Espressif Device - Espressif CDC Device)
  [2] Over The Air (ble_beacon_scanner.local)
(number): 

Nach wählen 1 gehts weiter

Ausgabe weiter

Hard resetting via RTS pin...
INFO Successfully uploaded program.
INFO Starting log output from /dev/ttyACM0 with baud rate 115200
[20:10:31][I][logger:171]: Log initialized
[20:10:31][C][safe_mode:079]: There have been 0 suspected unsuccessful boot attempts
[20:10:31][D][esp32.preferences:114]: Saving 1 preferences to flash...
[20:10:31][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
[20:10:31][I][app:029]: Running through setup()...
[20:10:31][C][esp32_ble:031]: Setting up BLE...
[20:10:31][C][wifi:048]: Setting up WiFi...
[20:10:31][C][wifi:061]: Starting WiFi...
[20:10:31][C][wifi:062]:   Local MAC: 98:88:E0:03:9C:08
[20:10:31][D][wifi:482]: Starting scan...
[20:10:31][W][component:167]: Component wifi set Warning flag: scanning for networks
[20:10:31][D][esp32_ble:288]: Enabling BLE...
[20:10:32][D][esp32_ble_tracker:295]: Starting scan, set scanner state to STARTING.
[20:10:35][D][wifi:497]: Found networks:
[20:10:35][I][wifi:541]: - 'WLAN_DRUCKER' (04:B4:FE:82:6E:C1) ▂▄▆█
[20:10:35][D][wifi:542]:     Channel: 11
[20:10:35][D][wifi:543]:     RSSI: -51 dB
[20:10:35][D][wifi:546]: - 'OnePlus' (CA:1D:0A:73:56:46) ▂▄▆█
[20:10:35][D][wifi:546]: - 'Hacker-Net Gast' (06:B4:FE:82:6E:C1) ▂▄▆█
[20:10:35][D][wifi:546]: - 'Vodafone-485091_EXT' (B4:0F:3B:AD:63:59) ▂▄▆█
[20:10:35][D][wifi:546]: - 'FRITZ!Box 7530 GK' (98:9B:CB:A3:7B:34) ▂▄▆█
[20:10:35][D][wifi:546]: - 'FRITZ!Box 7490' (38:10:D5:00:6B:C9) ▂▄▆█
[20:10:35][D][wifi:546]: - 'Vodafone-485091' (A0:95:7F:73:0F:A2) ▂▄▆█
[20:10:35][D][wifi:546]: - '404 Network unavailable' (E8:DF:70:4E:3C:D7) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR CCD19 2.4' (18:D6:C7:34:21:28) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR FA108' (34:2C:C4:8C:03:BA) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR Community' (36:2C:F4:8C:03:BA) ▂▄▆█
[20:10:35][D][wifi:546]: - 'MagentaWLAN-G8KR' (AC:B6:87:40:75:4E) ▂▄▆█
[20:10:35][D][wifi:546]: - 'ElmosLand' (7C:FF:4D:6A:A7:14) ▂▄▆█
[20:10:35][D][wifi:546]: - 'FRITZ!Box Gastzugang' (E2:28:6D:18:17:B5) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR CCD19 2.4' (68:02:B8:87:BA:3B) ▂▄▆█
[20:10:35][D][wifi:546]: - 'FRITZ!Box 7530 BK' (30:D3:2D:81:CC:F4) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR Community' (36:2C:F4:91:AB:30) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR DF564' (34:2C:C4:91:AB:30) ▂▄▆█
[20:10:35][D][wifi:546]: - 'ElmosLand Gastzugang' (7E:FF:4D:6A:A7:14) ▂▄▆█
[20:10:35][D][wifi:546]: - 'MagentaWLAN-L98S' (54:B7:BD:9A:BF:2E) ▂▄▆█
[20:10:35][D][wifi:546]: - 'PYUR Community' (6A:02:F8:87:BA:3B) ▂▄▆█
[20:10:35][D][wifi:546]: - 'E-T-T-B' (54:B7:BD:9A:BF:30) ▂▄▆█
[20:10:35][D][wifi:546]: - 'Ny194' (54:B7:BD:9A:BF:33) ▂▄▆█
[20:10:35][D][wifi:546]: - 'Lisa2.4' (34:2C:C4:6B:35:7B) ▂▄▆█
[20:10:39][I][wifi:313]: WiFi Connecting to 'WLAN_DRUCKER'...
[20:10:39][W][wifi:653]: Error while connecting to network.
[20:10:39][D][wifi:697]: Retrying with hidden networks...
[20:10:39][I][wifi:313]: WiFi Connecting to 'WLAN_DRUCKER'...
[20:10:40][I][wifi:617]: WiFi Connected!
[20:10:40][C][wifi:428]:   Local MAC: 98:88:E0:03:9C:08
[20:10:40][C][wifi:433]:   SSID: 'WLAN_DRUCKER'
[20:10:40][C][wifi:436]:   IP Address: 192.168.177.85
[20:10:40][C][wifi:440]:   BSSID: 04:B4:FE:82:6E:C1
[20:10:40][C][wifi:441]:   Hostname: 'ble_beacon_scanner'
[20:10:40][C][wifi:443]:   Signal strength: -52 dB ▂▄▆█
[20:10:40][C][wifi:447]:   Channel: 11
[20:10:40][C][wifi:448]:   Subnet: 255.255.255.0
[20:10:40][C][wifi:449]:   Gateway: 192.168.177.1
[20:10:40][C][wifi:450]:   DNS1: 192.168.177.1
[20:10:40][C][wifi:451]:   DNS2: 0.0.0.0
[20:10:40][C][mqtt:037]: Setting up MQTT...
[20:10:40][D][mqtt:518]: Enabling MQTT...
[20:10:40][W][component:167]: Component mqtt set Warning flag: unspecified
[20:10:40][I][mqtt:254]: Connecting to MQTT...
[20:10:40][W][component:182]: Component wifi cleared Warning flag
[20:10:40][W][component:182]: Component mqtt cleared Warning flag
[20:10:40][I][mqtt:295]: MQTT Connected!
[20:10:41][I][app:066]: setup() finished successfully!
[20:10:41][I][app:115]: ESPHome version 2025.5.1 compiled on May 28 2025, 19:56:26
[20:10:41][C][wifi:600]: WiFi:
[20:10:41][C][wifi:428]:   Local MAC: 98:88:E0:03:9C:08
[20:10:41][C][wifi:433]:   SSID: 'WLAN_DRUCKER'
[20:10:41][C][wifi:436]:   IP Address: 192.168.177.85
[20:10:41][C][wifi:440]:   BSSID: 04:B4:FE:82:6E:C1
[20:10:41][C][wifi:441]:   Hostname: 'ble_beacon_scanner'
[20:10:41][C][wifi:443]:   Signal strength: -51 dB ▂▄▆█
[20:10:41][C][wifi:447]:   Channel: 11
[20:10:41][C][wifi:448]:   Subnet: 255.255.255.0
[20:10:41][C][wifi:449]:   Gateway: 192.168.177.1
[20:10:41][C][wifi:450]:   DNS1: 192.168.177.1
[20:10:41][C][wifi:451]:   DNS2: 0.0.0.0
[20:10:41][C][logger:224]: Logger:
[20:10:41][C][logger:225]:   Max Level: DEBUG
[20:10:41][C][logger:226]:   Initial Level: DEBUG
[20:10:41][C][logger:228]:   Log Baud Rate: 115200
[20:10:41][C][logger:229]:   Hardware UART: USB_CDC
[20:10:41][C][logger:233]:   Task Log Buffer Size: 768
[20:10:41][C][esp32_ble:411]: ESP32 BLE:
[20:10:41][C][esp32_ble:413]:   MAC address: 98:88:E0:03:9C:09
[20:10:41][C][esp32_ble:414]:   IO Capability: none
[20:10:41][C][esp32_ble_tracker:733]: BLE Tracker:
[20:10:41][C][esp32_ble_tracker:734]:   Scan Duration: 300 s
[20:10:41][C][esp32_ble_tracker:735]:   Scan Interval: 320.0 ms
[20:10:41][C][esp32_ble_tracker:736]:   Scan Window: 30.0 ms
[20:10:41][C][esp32_ble_tracker:737]:   Scan Type: ACTIVE
[20:10:41][C][esp32_ble_tracker:738]:   Continuous Scanning: YES
[20:10:41][C][esp32_ble_tracker:747]:   Scanner State: RUNNING
[20:10:41][C][esp32_ble_tracker:760]:   Connecting: 0, discovered: 0, searching: 0, disconnecting: 0
[20:10:41][C][mdns:120]: mDNS:
[20:10:42][C][mdns:121]:   Hostname: ble_beacon_scanner
[20:10:42][W][wifi:163]: WiFi Connection lost... Reconnecting...
[20:10:42][I][wifi:313]: WiFi Connecting to 'WLAN_DRUCKER'...
[20:10:42][E][mqtt.idf:162]: MQTT_EVENT_ERROR
[20:10:42][E][mqtt.idf:164]: Last error code reported from esp-tls: 0x0
[20:10:42][E][mqtt.idf:165]: Last tls stack error number: 0x0
[20:10:42][E][mqtt.idf:167]: Last captured errno : 113 (Software caused connection abort)
[20:10:42][C][esphome.ota:073]: Over-The-Air updates:
[20:10:42][C][esphome.ota:074]:   Address: ble_beacon_scanner.local:3232
[20:10:42][C][esphome.ota:075]:   Version: 2
[20:10:42][W][component:167]: Component wifi set Warning flag: associating to network
[20:10:42][W][mqtt:344]: MQTT Disconnected: WiFi disconnected.
[20:10:42][C][safe_mode:018]: Safe Mode:
[20:10:42][C][safe_mode:020]:   Boot considered successful after 60 seconds
[20:10:42][C][safe_mode:021]:   Invoke after 10 boot attempts
[20:10:42][C][safe_mode:023]:   Remain in safe mode for 300 seconds
[20:10:42][C][mqtt:152]: MQTT:
[20:10:42][C][mqtt:154]:   Server Address: 192.168.177.20:1883 (192.168.177.20)
[20:10:42][C][mqtt:155]:   Username: 'mqtt'
[20:10:42][C][mqtt:156]:   Client ID: 'ble_beacon_scanner-9888e0039c08'
[20:10:42][C][mqtt:157]:   Clean Session: NO
[20:10:42][C][mqtt:159]:   Discovery IP enabled
[20:10:42][C][mqtt:162]:   Discovery prefix: 'homeassistant'
[20:10:42][C][mqtt:163]:   Discovery retain: YES
[20:10:42][C][mqtt:165]:   Topic Prefix: 'ble_beacon_scanner'
[20:10:42][C][mqtt:167]:   Log Topic: 'ble_beacon_scanner/debug'
[20:10:42][C][mqtt:170]:   Availability: 'ble_beacon_scanner/status'
[20:10:43][I][wifi:617]: WiFi Connected!
[20:10:43][C][wifi:428]:   Local MAC: 98:88:E0:03:9C:08
[20:10:43][C][wifi:433]:   SSID: 'WLAN_DRUCKER'
[20:10:43][C][wifi:436]:   IP Address: 192.168.177.85
[20:10:43][C][wifi:440]:   BSSID: 04:B4:FE:82:6E:C1
[20:10:43][C][wifi:441]:   Hostname: 'ble_beacon_scanner'
[20:10:43][C][wifi:443]:   Signal strength: -43 dB ▂▄▆█
[20:10:43][C][wifi:447]:   Channel: 11
[20:10:43][C][wifi:448]:   Subnet: 255.255.255.0
[20:10:43][C][wifi:449]:   Gateway: 192.168.177.1
[20:10:43][C][wifi:450]:   DNS1: 192.168.177.1
[20:10:43][C][wifi:451]:   DNS2: 0.0.0.0
[20:10:43][W][component:182]: Component wifi cleared Warning flag
[20:10:45][W][component:167]: Component mqtt set Warning flag: unspecified
[20:10:45][I][mqtt:254]: Connecting to MQTT...
[20:10:57][W][component:182]: Component mqtt cleared Warning flag
[20:10:57][I][mqtt:295]: MQTT Connected!
[20:10:58][W][component:257]: Component mqtt took a long time for an operation (108 ms).
[20:10:58][W][component:258]: Components should block for at most 30 ms.
[20:11:31][I][safe_mode:041]: Boot seems successful; resetting boot loop counter
[20:11:31][D][esp32.preferences:114]: Saving 1 preferences to flash...
[20:11:31][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed

 

Nun kann das Gerät, getrennt werden.
Fertig

Installationsvariante 3:

in Google Chrome öffnen, Firefox geht nicht.

https://web.esphome.io

Im Boot modus den ESP32 Verbinden mit dem Computer.
Die Boot taste gedrückt halten, dann den ESP32 Verbinden und 2 Sekunden warten dann die Boot Taste los lassen.
Klick auf ESPHome
In einem terminal schreibrechte auf den USB Port geben

sudo chmod 777 /dev/ttyACM0

Nun auf Connect klicken

image.png

image.png

Wenn zum ersten mal benutzt, dann Prepare first use anklicken.
Ist der ESP32 schon geflasht kann per terminal oder Homeassistant die neue yaml aufgespielt werden.
Dann ist das hier überflüssig, und bei Abschnitt via Terminal weitermachen
 

image.png

image.png

image.png

Grundsystem installiert. Nun kann Wifi Konfiguriert werden

image.png

Netzwerk auswählen

image.png

Kennwort eingeben, connect anklicken

image.png

warten

image.png

Nun kann nochmals WLAN geändert, oder geschlossen werden.
Über visit Device bekommt man ne Weboberfläche, wo man aber nicht viel machen kannen.

image.png

Visit device, damit man es mal gesehen hat, denn da landen die Nachrichten drin

image.png

image.png

yaml Datei aufspielen:

Via Terminal:

Der gleiche Befehl wie bei USB direkt nur das wir hier 2 für ota wählen. Und der Name in der yaml Datei muss der Hosstname sein.
IP-Adressen gehen nicht. Wenn der Hostname nicht bekannt ist, über die Fritzbox zum beispiel ermitteln

image.png

Der Befehl:

esphome run ble_beacon_scanner.yaml

Bei der Frage für LOG wählen wir auch 2

Ausgabe OTA

esphome run ble_beacon_scanner.yaml 
INFO ESPHome 2025.5.1
INFO Reading configuration ble_beacon_scanner.yaml...
INFO Generating C++ source...
INFO Core config, version or integrations changed, cleaning build files...
INFO Compiling app...
Processing esphome-web-039c08 (board: esp32s3box; framework: arduino; platform: platformio/espressif32@5.4.0)
-----------------------------------------------------------------------------------------------------------------------
Library Manager: Installing bblanchon/ArduinoJson @ 6.18.5
INFO Installing bblanchon/ArduinoJson @ 6.18.5
Unpacking  [####################################]  100%
Library Manager: ArduinoJson@6.18.5 has been installed!
INFO ArduinoJson@6.18.5 has been installed!
HARDWARE: ESP32S3 240MHz, 320KB RAM, 16MB Flash
 - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 
 - toolchain-xtensa-esp32s3 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- WiFi @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- Update @ 2.0.0
|-- ArduinoJson @ 6.18.5
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32/core.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32/gpio.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32/preferences.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32_ble/ble.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32_ble/ble_advertising.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32_ble/ble_uuid.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/esphome/ota/ota_esphome.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/logger.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/logger_esp32.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/logger_esp8266.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/logger_host.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/logger_libretiny.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/logger_rp2040.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/logger/task_log_buffer.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/md5/md5.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mdns/mdns_component.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mdns/mdns_esp32.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mdns/mdns_host.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mdns/mdns_libretiny.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mdns/mdns_rp2040.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/custom_mqtt_device.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_alarm_control_panel.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_backend_esp32.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_binary_sensor.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_button.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_client.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_climate.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_component.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_cover.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_date.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_datetime.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_event.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_fan.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_light.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_lock.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_number.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_select.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_sensor.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_switch.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_text.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_text_sensor.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_time.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_update.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/mqtt/mqtt_valve.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/network/util.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/ota/ota_backend.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/ota/ota_backend_arduino_libretiny.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/ota/ota_backend_arduino_rp2040.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/safe_mode/safe_mode.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/socket/lwip_sockets_impl.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/socket/socket.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/wifi/wifi_component.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/wifi/wifi_component_esp32_arduino.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/wifi/wifi_component_esp_idf.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/wifi/wifi_component_libretiny.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/components/wifi/wifi_component_pico_w.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/application.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/color.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/component.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/component_iterator.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/controller.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/entity_base.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/helpers.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/log.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/ring_buffer.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/scheduler.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/string_ref.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/time.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/esphome/core/util.cpp.o
Compiling .pioenvs/esphome-web-039c08/src/main.cpp.o
Building .pioenvs/esphome-web-039c08/bootloader.bin
Generating partitions .pioenvs/esphome-web-039c08/partitions.bin
Creating esp32s3 image...
Successfully created esp32s3 image.
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFi.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiAP.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiClient.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiGeneric.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiMulti.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiSTA.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiScan.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiServer.cpp.o
Compiling .pioenvs/esphome-web-039c08/libb48/WiFi/WiFiUdp.cpp.o
Compiling .pioenvs/esphome-web-039c08/lib001/ESPmDNS/ESPmDNS.cpp.o
Compiling .pioenvs/esphome-web-039c08/lib315/Update/HttpsOTAUpdate.cpp.o
Compiling .pioenvs/esphome-web-039c08/lib315/Update/Updater.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/Esp.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/FirmwareMSC.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/FunctionalInterrupt.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/HWCDC.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/HardwareSerial.cpp.o
Archiving .pioenvs/esphome-web-039c08/libb48/libWiFi.a
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/IPAddress.cpp.o
Indexing .pioenvs/esphome-web-039c08/libb48/libWiFi.a
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/IPv6Address.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/MD5Builder.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/Print.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/Stream.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/StreamString.cpp.o
Archiving .pioenvs/esphome-web-039c08/lib001/libESPmDNS.a
Indexing .pioenvs/esphome-web-039c08/lib001/libESPmDNS.a
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/Tone.cpp.o
Archiving .pioenvs/esphome-web-039c08/lib315/libUpdate.a
Indexing .pioenvs/esphome-web-039c08/lib315/libUpdate.a
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/USB.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/USBCDC.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/USBMSC.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/WMath.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/WString.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/base64.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/cbuf.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-adc.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-bt.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-cpu.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-dac.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-gpio.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-i2c-slave.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-i2c.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-ledc.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-matrix.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-misc.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-psram.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-rgb-led.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-rmt.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-sigmadelta.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-spi.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-time.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-timer.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-tinyusb.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-touch.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/esp32-hal-uart.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/firmware_msc_fat.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/libb64/cdecode.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/libb64/cencode.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/main.cpp.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/stdlib_noniso.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/wiring_pulse.c.o
Compiling .pioenvs/esphome-web-039c08/FrameworkArduino/wiring_shift.c.o
Archiving .pioenvs/esphome-web-039c08/libFrameworkArduino.a
Indexing .pioenvs/esphome-web-039c08/libFrameworkArduino.a
Linking .pioenvs/esphome-web-039c08/firmware.elf
RAM:   [==        ]  18.4% (used 60188 bytes from 327680 bytes)
Flash: [========  ]  76.1% (used 1396017 bytes from 1835008 bytes)
Building .pioenvs/esphome-web-039c08/firmware.bin
Creating esp32s3 image...
Successfully created esp32s3 image.
esp32_create_combined_bin([".pioenvs/esphome-web-039c08/firmware.bin"], [".pioenvs/esphome-web-039c08/firmware.elf"])
SHA digest in image updated
Wrote 0x164eb0 bytes to file /home/duffy/esphome32/.esphome/build/esphome-web-039c08/.pioenvs/esphome-web-039c08/firmware.factory.bin, ready to flash to offset 0x0
esp32_copy_ota_bin([".pioenvs/esphome-web-039c08/firmware.bin"], [".pioenvs/esphome-web-039c08/firmware.elf"])
============================================ [SUCCESS] Took 30.29 seconds ============================================
INFO Successfully compiled program.
Found multiple options for uploading, please choose one:
  [1] /dev/ttyACM0 (USB JTAG/serial debug unit)
  [2] Over The Air (esphome-web-039c08.local)
(number): 2
INFO Resolving IP address of esphome-web-039c08.local in mDNS
INFO Connecting to 192.168.177.85 port 3232...
INFO Connected to 192.168.177.85
INFO Uploading /home/duffy/esphome32/.esphome/build/esphome-web-039c08/.pioenvs/esphome-web-039c08/firmware.bin (1396400 bytes)
Uploading: [============================================================] 100% Done...

INFO Upload took 26.21 seconds, waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
Found multiple options for logging, please choose one:
  [1] /dev/ttyACM0 (USB JTAG/serial debug unit)
  [2] MQTT (192.168.177.20)
(number): 


Ausgabe 2

(number): 2
INFO Starting log output from esphome-web-039c08/debug
INFO Connected to MQTT broker!
[01:42:15][D][esp32_ble_tracker:295]: Starting scan, set scanner state to STARTING.

Der Wert esphome-web-039c08/debug ist der Topic fürs log
Im Terminal mit strg+c kann das Prgramm beendet werden, denn der ESP32 ist fertig

image.png

Installations Variante 4:

ESP Home Web als Docker

Installation:

apt install docker.io docker-compose curl

Verzeichnis erstellen

mkdir /root/esphomeweb

Nun compose Datei erstellen

nano /root/esphomeweb/docker-compose.yml

Inhalt

version: "3.8"

services:
  esphome:
    image: ghcr.io/esphome/esphome
    network_mode: host
    volumes:
      - ./config:/config
    stdin_open: true
    tty: true
    restart: unless-stopped

Nun den container starten

docker-compose up -d

Nun auf de Weboberfläche gehen mit Google Chrome Browser

http://127.0.0.1:6052

grafik.png

Dann unter secerts die Secrtes einfügen

grafik.png

Man kann diese aber auch als Varibalen in der Secrets Datei ablegen dann sehe der WLAN und MQTT block so aus

# Your Wi-Fi SSID and password
wifi_ssid: "WLAN_DRUCKER"
wifi_password: "wlan passwort"

#MQTT
mqtt_broker: ip adresse
mqtt_user: username
mqtt_password: password

Nun kann ein neues Gerät oder wie beim Home Asstitant Addon vorhandenes Gerät hinzufügen die Geräte verwaltet werden.
Ab da ist das Prinzip gleich. Nur losgelöst vom Home Assistant