Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. [ESPHome] Beta release

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

[ESPHome] Beta release

Scheduled Pinned Locked Moved Tester
591 Posts 48 Posters 169.1k Views 39 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T tloeffel

    @dutchman

    Danke für die schnelle Antwort. In welcher Variable wird den der z.B. Temperaturwert abgespeichert. Kann man auf den zugreifen? Ich habe ein Beispiel unten angefügt, dort scheint es zu gehen. Leider verstehe ich es nicht vollkommen. Den Ausschnitt und den vollen Code habe ich angehängt. Daher weiss ich auch wie man über Http-get direkt in die Homematic CCU schreibt.

    Dieser Bereich scheint den Wert formatiert zu übergeben.

    State(" + esphome::to_string(static_cast<uint16_t>(x)) + ")
    

    Danke und Gruß Thomas

    sensor:
      - platform: scd4x
        id: scd41
        i2c_id: bus_a
        altitude_compensation: 418m
        co2:
          name: co2
          id: co2
          on_value:
            then:
              - lambda: |-
                  if (x > 400 ) id(led_g1).turn_on() ; else id(led_g1).turn_off();
                  if (x > 650 ) id(led_g2).turn_on() ; else id(led_g2).turn_off();
                  if (x > 800 ) id(led_y1).turn_on() ; else id(led_y1).turn_off();
                  if (x > 1050 ) id(led_y2).turn_on() ; else id(led_y2).turn_off();
                  if (x > 1300 ) id(led_r1).turn_on() ; else id(led_r1).turn_off();
                  if (x > 1550 ) id(led_r2).turn_on() ; else id(led_r2).turn_off();
    
              - http_request.get:
                  url: !lambda |-
                    return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(static_cast<uint16_t>(x)) + ")" );
    
    
    substitutions:
      updates: 30s
      devicename: co2-sensor
      hm_host: 192.168.1.58
      hm_sysvar_co2: scd41-co2
    
    esphome:
      name: ${devicename}
    
    esp32:
      board: esp32dev
      framework:
        type: arduino
    
    wifi:
      ssid: !secret wifi_sid
      password: !secret wifi_password
    
    time:
      - platform: sntp
        id: sntp_time
        timezone: "CET-1CEST,M3.5.0,M10.5.0/3"
        servers: "de.pool.ntp.org"
    
    # Enable logging
    logger:
      level: DEBUG
    ## Optional 
    api:
      password: !secret api_password
      reboot_timeout: 0s
    
    ota:
      password: !secret ota_password
    
    ## Optional
    mqtt:
      broker: 192.168.1.114
    
    i2c:
      - id: bus_a
        sda: 21
        scl: 22
        scan: True
    
    http_request:
      useragent: esphome/device
      id: httpget
      timeout: 10s
    
    sensor:
      - platform: scd4x
        id: scd41
        i2c_id: bus_a
        altitude_compensation: 418m
        co2:
          name: co2
          id: co2
          on_value:
            then:
              - lambda: |-
                  if (x > 400 ) id(led_g1).turn_on() ; else id(led_g1).turn_off();
                  if (x > 650 ) id(led_g2).turn_on() ; else id(led_g2).turn_off();
                  if (x > 800 ) id(led_y1).turn_on() ; else id(led_y1).turn_off();
                  if (x > 1050 ) id(led_y2).turn_on() ; else id(led_y2).turn_off();
                  if (x > 1300 ) id(led_r1).turn_on() ; else id(led_r1).turn_off();
                  if (x > 1550 ) id(led_r2).turn_on() ; else id(led_r2).turn_off();
    
              - http_request.get:
                  url: !lambda |-
                    return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(static_cast<uint16_t>(x)) + ")" );
    
        humidity:
          name: "Luftfeuchtigkeit"
          id: humidity
        temperature:
          name: "Raumtemperatur"
          id: temperature
        ambient_pressure_compensation_source: bme280_pressure
        update_interval: ${updates}
    
      - platform: bme280
        setup_priority: -15
        temperature:
          name: "BME280-Temperature"
          id: bme280_temperature
          oversampling: 1x
        pressure:
          name: "BME280-Pressure"
          id: bme280_pressure
          oversampling: 1x
    
        humidity:
          name: "BME280-Humidity"
          id: bme280_humidity
          oversampling: 1x
        address: 0x76
        update_interval: ${updates}
    
      - platform: wifi_signal
        name: "WiFi Signal"
        id: wifisignal
        update_interval: ${updates}
    
    output:
      - platform: gpio
        pin: 23
        id: led_g1
      - platform: gpio
        pin: 19
        id: led_g2
      - platform: gpio
        pin: 18
        id: led_y1
      - platform: gpio
        pin: 32
        id: led_y2
      - platform: gpio
        pin: 25
        id: led_r1
      - platform: gpio
        pin: 26
        id: led_r2
    
    # Example configuration entry
    switch:
      - platform: restart
        name: "CO² Sensor Restart"
    
    web_server:
      port:80
    
    K Offline
    K Offline
    klassisch
    Most Active
    wrote on last edited by klassisch
    #360

    @tloeffel Ich bin kein großer YAML Programmierer und nutze nur, was ich dringend brauche.
    Werte die eine id haben, referenziere ich innerhalb von lambda so:

    id(<idname>).state
    

    Beispiel:

     
    # sht3x supports SHT31 and SHT35
      - platform: sht3xd
        temperature:
          name: "Temp-SHT31"
          id: temperature
    #     id is needed to identify the value in calculations (lambda)      
          accuracy_decimals: 2
    
        humidity:
          name: "Hum-SHT31"
          id: rel_humidity
    #     id is needed to identify the value in calculations (lambda)      
          accuracy_decimals: 2
        address: 0x44
        update_interval: ${updates}
    
    
      - platform: template
        name: "p-vaporSaturated"
        id: p_vaporSatur
        lambda: |-
          return (611*powf(10,7.5*id(temperature).state/(237.3+id(temperature).state)));
        accuracy_decimals: 2
        update_interval: ${updates}
        icon: 'mdi:water'
        unit_of_measurement: 'Pa'
    
    

    P.S.: der DHT11 mißt die Feuchte suboptimal und ist somit Zeitverschwendung. SHT31 macht das deutlich besser.

    1 Reply Last reply
    0
    • C Offline
      C Offline
      ChrisXY
      wrote on last edited by ChrisXY
      #361

      hatte erst ESPHome unter HA laufen. Klappte super alles wurde grün. Nun wollte ich umziehen.
      Leider klappt die .local auflösung nicht .. Okay iobroker 192.168.2.* und HA und die ESPs sind 192.168.4.* ...

      Hab die Passwörter und Manuelle IP in der Config gesetzt Verbinden usw. klappt aber leider bleiben die immer als "OFFLINE" stehen ..

      Ich muss auch erst die IPs Manuell im Adapter bei Geräten hinzufügen dann tauchen diese unter Objekte auf.
      Aber im ESPHome Dashboard leider nicht. Hier leg ich dann ein Gerät an und Kopier den Inhalt der alten Config in die neue.

      K DutchmanD 2 Replies Last reply
      0
      • C ChrisXY

        hatte erst ESPHome unter HA laufen. Klappte super alles wurde grün. Nun wollte ich umziehen.
        Leider klappt die .local auflösung nicht .. Okay iobroker 192.168.2.* und HA und die ESPs sind 192.168.4.* ...

        Hab die Passwörter und Manuelle IP in der Config gesetzt Verbinden usw. klappt aber leider bleiben die immer als "OFFLINE" stehen ..

        Ich muss auch erst die IPs Manuell im Adapter bei Geräten hinzufügen dann tauchen diese unter Objekte auf.
        Aber im ESPHome Dashboard leider nicht. Hier leg ich dann ein Gerät an und Kopier den Inhalt der alten Config in die neue.

        K Offline
        K Offline
        klassisch
        Most Active
        wrote on last edited by
        #362

        @chrisxy bin nicht sicher, ob wir vom gleichen reden. Aber es erinnert mich an einen Eintrag in meiner credentials includes datei

        wifi:
          ssid: "homesweethome"
          password: "topSecret"
          domain: .
        # domain . may be not correct, but works with firtzbox
        # the domain is to support mDNS for flashing and logging
        #  domain: .fritz.box
        # .fritz.box worked for me, the default .local did not   
          
        #  use_address: fine-particle-garden
        # use use_address if having trouble after renaming the unit and getting mDNS error
        # refer to https://esphome.io/components/esphome.html#changing-esphome-node-name 
        
        
        C 1 Reply Last reply
        0
        • K klassisch

          @chrisxy bin nicht sicher, ob wir vom gleichen reden. Aber es erinnert mich an einen Eintrag in meiner credentials includes datei

          wifi:
            ssid: "homesweethome"
            password: "topSecret"
            domain: .
          # domain . may be not correct, but works with firtzbox
          # the domain is to support mDNS for flashing and logging
          #  domain: .fritz.box
          # .fritz.box worked for me, the default .local did not   
            
          #  use_address: fine-particle-garden
          # use use_address if having trouble after renaming the unit and getting mDNS error
          # refer to https://esphome.io/components/esphome.html#changing-esphome-node-name 
          
          
          C Offline
          C Offline
          ChrisXY
          wrote on last edited by
          #363

          @klassisch hmm kannst du das etwas ausführen und wo finde ich diese Datei?

          K 1 Reply Last reply
          0
          • C ChrisXY

            @klassisch hmm kannst du das etwas ausführen und wo finde ich diese Datei?

            K Offline
            K Offline
            klassisch
            Most Active
            wrote on last edited by klassisch
            #364

            @chrisxy sagte in [ESPHome] Beta release:

            @klassisch und wo finde ich diese Datei?

            Wenn Du keine Includes Datei nutzt, dann hast Du die Datei nicht, sondern den Eintrag in Deinem yaml.
            Zu den WiFi Einstellungen habe ich nach einigem Lesen und Experimentieren diesen domain: . hinzugefügt und der ESP wurde gefunden.
            Die includes Datei habe ich einmal mit den credentials angelegt und verweise in meinen verschiedenen Anwendungs-yamls darauf. So vermeide ich es, meine geheimen credentials in zig yamls zu implementieren. Einmal reicht.
            referenziert wird das mit

            <<: !include includes.yaml
            
            

            Ein Beispiel findest Du im Thread ESPHome: Wandfeuchte messen-Schimmel vermeiden+Anwendungen

            hmm kannst du das etwas ausführen

            Wo ich fündig wurde habe ich im Kommentar referenziert und das domain: . habe ich experimentell ermittelt, weil das .local nicht funktioniert hat. Verstanden und ergründet habe ich das nicht. Es hat mir gereicht, daß es zuverlässig funktioniert. Sorry, Pragmatismus.

            1 Reply Last reply
            0
            • T tloeffel

              @dutchman

              Danke für die schnelle Antwort. In welcher Variable wird den der z.B. Temperaturwert abgespeichert. Kann man auf den zugreifen? Ich habe ein Beispiel unten angefügt, dort scheint es zu gehen. Leider verstehe ich es nicht vollkommen. Den Ausschnitt und den vollen Code habe ich angehängt. Daher weiss ich auch wie man über Http-get direkt in die Homematic CCU schreibt.

              Dieser Bereich scheint den Wert formatiert zu übergeben.

              State(" + esphome::to_string(static_cast<uint16_t>(x)) + ")
              

              Danke und Gruß Thomas

              sensor:
                - platform: scd4x
                  id: scd41
                  i2c_id: bus_a
                  altitude_compensation: 418m
                  co2:
                    name: co2
                    id: co2
                    on_value:
                      then:
                        - lambda: |-
                            if (x > 400 ) id(led_g1).turn_on() ; else id(led_g1).turn_off();
                            if (x > 650 ) id(led_g2).turn_on() ; else id(led_g2).turn_off();
                            if (x > 800 ) id(led_y1).turn_on() ; else id(led_y1).turn_off();
                            if (x > 1050 ) id(led_y2).turn_on() ; else id(led_y2).turn_off();
                            if (x > 1300 ) id(led_r1).turn_on() ; else id(led_r1).turn_off();
                            if (x > 1550 ) id(led_r2).turn_on() ; else id(led_r2).turn_off();
              
                        - http_request.get:
                            url: !lambda |-
                              return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(static_cast<uint16_t>(x)) + ")" );
              
              
              substitutions:
                updates: 30s
                devicename: co2-sensor
                hm_host: 192.168.1.58
                hm_sysvar_co2: scd41-co2
              
              esphome:
                name: ${devicename}
              
              esp32:
                board: esp32dev
                framework:
                  type: arduino
              
              wifi:
                ssid: !secret wifi_sid
                password: !secret wifi_password
              
              time:
                - platform: sntp
                  id: sntp_time
                  timezone: "CET-1CEST,M3.5.0,M10.5.0/3"
                  servers: "de.pool.ntp.org"
              
              # Enable logging
              logger:
                level: DEBUG
              ## Optional 
              api:
                password: !secret api_password
                reboot_timeout: 0s
              
              ota:
                password: !secret ota_password
              
              ## Optional
              mqtt:
                broker: 192.168.1.114
              
              i2c:
                - id: bus_a
                  sda: 21
                  scl: 22
                  scan: True
              
              http_request:
                useragent: esphome/device
                id: httpget
                timeout: 10s
              
              sensor:
                - platform: scd4x
                  id: scd41
                  i2c_id: bus_a
                  altitude_compensation: 418m
                  co2:
                    name: co2
                    id: co2
                    on_value:
                      then:
                        - lambda: |-
                            if (x > 400 ) id(led_g1).turn_on() ; else id(led_g1).turn_off();
                            if (x > 650 ) id(led_g2).turn_on() ; else id(led_g2).turn_off();
                            if (x > 800 ) id(led_y1).turn_on() ; else id(led_y1).turn_off();
                            if (x > 1050 ) id(led_y2).turn_on() ; else id(led_y2).turn_off();
                            if (x > 1300 ) id(led_r1).turn_on() ; else id(led_r1).turn_off();
                            if (x > 1550 ) id(led_r2).turn_on() ; else id(led_r2).turn_off();
              
                        - http_request.get:
                            url: !lambda |-
                              return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(static_cast<uint16_t>(x)) + ")" );
              
                  humidity:
                    name: "Luftfeuchtigkeit"
                    id: humidity
                  temperature:
                    name: "Raumtemperatur"
                    id: temperature
                  ambient_pressure_compensation_source: bme280_pressure
                  update_interval: ${updates}
              
                - platform: bme280
                  setup_priority: -15
                  temperature:
                    name: "BME280-Temperature"
                    id: bme280_temperature
                    oversampling: 1x
                  pressure:
                    name: "BME280-Pressure"
                    id: bme280_pressure
                    oversampling: 1x
              
                  humidity:
                    name: "BME280-Humidity"
                    id: bme280_humidity
                    oversampling: 1x
                  address: 0x76
                  update_interval: ${updates}
              
                - platform: wifi_signal
                  name: "WiFi Signal"
                  id: wifisignal
                  update_interval: ${updates}
              
              output:
                - platform: gpio
                  pin: 23
                  id: led_g1
                - platform: gpio
                  pin: 19
                  id: led_g2
                - platform: gpio
                  pin: 18
                  id: led_y1
                - platform: gpio
                  pin: 32
                  id: led_y2
                - platform: gpio
                  pin: 25
                  id: led_r1
                - platform: gpio
                  pin: 26
                  id: led_r2
              
              # Example configuration entry
              switch:
                - platform: restart
                  name: "CO² Sensor Restart"
              
              web_server:
                port:80
              
              T Offline
              T Offline
              tloeffel
              wrote on last edited by
              #365

              @tloeffel

              Hallo Zusammen,

              habe es hinbekommen.

              substitutions:
                hm_host: 192.168.xx.xx
                hm_sysvar_co2: _httptest 
              
              humidity:
                    name: "Dachgeschoss Luftfeuchtigkeit01"
                    on_value:
                      then:
                         - http_request.get:
                            url: !lambda |-
                              return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(x) + ")" );
              

              Nun sendet er an die Homematic CCU3 in eine Variable den Wert.

              Wie Runde ich einen Wert aus ESPhome ?

              Gruß Thomas

              K B 2 Replies Last reply
              0
              • T tloeffel

                @tloeffel

                Hallo Zusammen,

                habe es hinbekommen.

                substitutions:
                  hm_host: 192.168.xx.xx
                  hm_sysvar_co2: _httptest 
                
                humidity:
                      name: "Dachgeschoss Luftfeuchtigkeit01"
                      on_value:
                        then:
                           - http_request.get:
                              url: !lambda |-
                                return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(x) + ")" );
                

                Nun sendet er an die Homematic CCU3 in eine Variable den Wert.

                Wie Runde ich einen Wert aus ESPhome ?

                Gruß Thomas

                K Offline
                K Offline
                klassisch
                Most Active
                wrote on last edited by
                #366

                @tloeffel sagte in [ESPHome] Beta release:

                habe es hinbekommen.

                Danke für die RM. Aber verstenden habe ich das Beispiel nicht

                Wie Runde ich einen Wert aus ESPhome ?

                In ESPHome gebe ich accuracy_decimals an
                Beispiel:

                # sht3x supports SHT31 and SHT35
                  - platform: sht3xd
                    temperature:
                      name: "Temp-SHT31"
                      id: temperature
                #     id is needed to identify the value in calculations (lambda)      
                      accuracy_decimals: 2
                
                

                Dann landet in ioBroker der Wert mit 2 Nachkommastellen

                In HM CCU rechne ich nicht. Zum Rechnen verwende ich ioBroker

                Aber im HM Forum gibt es etwas dazu ToString() Nachkomma und runden

                T 1 Reply Last reply
                0
                • K klassisch

                  @tloeffel sagte in [ESPHome] Beta release:

                  habe es hinbekommen.

                  Danke für die RM. Aber verstenden habe ich das Beispiel nicht

                  Wie Runde ich einen Wert aus ESPhome ?

                  In ESPHome gebe ich accuracy_decimals an
                  Beispiel:

                  # sht3x supports SHT31 and SHT35
                    - platform: sht3xd
                      temperature:
                        name: "Temp-SHT31"
                        id: temperature
                  #     id is needed to identify the value in calculations (lambda)      
                        accuracy_decimals: 2
                  
                  

                  Dann landet in ioBroker der Wert mit 2 Nachkommastellen

                  In HM CCU rechne ich nicht. Zum Rechnen verwende ich ioBroker

                  Aber im HM Forum gibt es etwas dazu ToString() Nachkomma und runden

                  T Offline
                  T Offline
                  tloeffel
                  wrote on last edited by
                  #367

                  @klassisch

                  Ah wieder was gelernt. Danke, probiere das aus.

                  Gruß Thomas

                  1 Reply Last reply
                  0
                  • C ChrisXY

                    hatte erst ESPHome unter HA laufen. Klappte super alles wurde grün. Nun wollte ich umziehen.
                    Leider klappt die .local auflösung nicht .. Okay iobroker 192.168.2.* und HA und die ESPs sind 192.168.4.* ...

                    Hab die Passwörter und Manuelle IP in der Config gesetzt Verbinden usw. klappt aber leider bleiben die immer als "OFFLINE" stehen ..

                    Ich muss auch erst die IPs Manuell im Adapter bei Geräten hinzufügen dann tauchen diese unter Objekte auf.
                    Aber im ESPHome Dashboard leider nicht. Hier leg ich dann ein Gerät an und Kopier den Inhalt der alten Config in die neue.

                    DutchmanD Offline
                    DutchmanD Offline
                    Dutchman
                    Developer Most Active Administrators
                    wrote on last edited by
                    #368

                    @chrisxy sagte in [ESPHome] Beta release:

                    hatte erst ESPHome unter HA laufen. Klappte super alles wurde grün. Nun wollte ich umziehen.
                    Leider klappt die .local auflösung nicht .. Okay iobroker 192.168.2.* und HA und die ESPs sind 192.168.4.* ...

                    Hab die Passwörter und Manuelle IP in der Config gesetzt Verbinden usw. klappt aber leider bleiben die immer als "OFFLINE" stehen ..

                    Ich muss auch erst die IPs Manuell im Adapter bei Geräten hinzufügen dann tauchen diese unter Objekte auf.
                    Aber im ESPHome Dashboard leider nicht. Hier leg ich dann ein Gerät an und Kopier den Inhalt der alten Config in die neue.

                    Zu 1: ESPHome arbeitet mit mdns, wen du unterschiedlich Netzwerke hast wird das untereinander blockiert darum musst die ip eingeben

                    Zu2: die werden da niemals automatisch auftauchen sowohl in ioBroker als hass die yaml musste selber kopieren (steht auch in der Anleitung von ESPHome selber)

                    1 Reply Last reply
                    0
                    • T tloeffel

                      @tloeffel

                      Hallo Zusammen,

                      habe es hinbekommen.

                      substitutions:
                        hm_host: 192.168.xx.xx
                        hm_sysvar_co2: _httptest 
                      
                      humidity:
                            name: "Dachgeschoss Luftfeuchtigkeit01"
                            on_value:
                              then:
                                 - http_request.get:
                                    url: !lambda |-
                                      return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(x) + ")" );
                      

                      Nun sendet er an die Homematic CCU3 in eine Variable den Wert.

                      Wie Runde ich einen Wert aus ESPhome ?

                      Gruß Thomas

                      B Offline
                      B Offline
                      bernd33-1
                      wrote on last edited by
                      #369

                      @tloeffel said in [ESPHome] Beta release:

                      @tloeffel

                      Hallo Zusammen,

                      habe es hinbekommen.

                      substitutions:
                        hm_host: 192.168.xx.xx
                        hm_sysvar_co2: _httptest 
                      
                      humidity:
                            name: "Dachgeschoss Luftfeuchtigkeit01"
                            on_value:
                              then:
                                 - http_request.get:
                                    url: !lambda |-
                                      return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(x) + ")" );
                      

                      Nun sendet er an die Homematic CCU3 in eine Variable den Wert.

                      Wie Runde ich einen Wert aus ESPhome ?

                      Gruß Thomas

                      Hallo Thomas,

                      leider kann ich beim runden nicht helfen.

                      Aber: Geht das auch umgekehrt? Also, dass ein Wert von der Homematic gelesen wird und dann z.B. in einer Variable abgelegt wird?

                      Hintergrund: Ich hab ein Display an einen ESP-Home Node angeschlossen und meine Hoffnung ist, dass man so einfach Werte aus der CCU/IOBroker auf dem Display anzeigen könnte.

                      Danke schon mal und Grüße, Bernd

                      Johannes BauerstatterJ 1 Reply Last reply
                      0
                      • B bernd33-1

                        @tloeffel said in [ESPHome] Beta release:

                        @tloeffel

                        Hallo Zusammen,

                        habe es hinbekommen.

                        substitutions:
                          hm_host: 192.168.xx.xx
                          hm_sysvar_co2: _httptest 
                        
                        humidity:
                              name: "Dachgeschoss Luftfeuchtigkeit01"
                              on_value:
                                then:
                                   - http_request.get:
                                      url: !lambda |-
                                        return ((std::string) "http://${hm_host}:8181/any.exe?x=dom.GetObject('${hm_sysvar_co2}').State(" + esphome::to_string(x) + ")" );
                        

                        Nun sendet er an die Homematic CCU3 in eine Variable den Wert.

                        Wie Runde ich einen Wert aus ESPhome ?

                        Gruß Thomas

                        Hallo Thomas,

                        leider kann ich beim runden nicht helfen.

                        Aber: Geht das auch umgekehrt? Also, dass ein Wert von der Homematic gelesen wird und dann z.B. in einer Variable abgelegt wird?

                        Hintergrund: Ich hab ein Display an einen ESP-Home Node angeschlossen und meine Hoffnung ist, dass man so einfach Werte aus der CCU/IOBroker auf dem Display anzeigen könnte.

                        Danke schon mal und Grüße, Bernd

                        Johannes BauerstatterJ Offline
                        Johannes BauerstatterJ Offline
                        Johannes Bauerstatter
                        wrote on last edited by
                        #370

                        Hallo, hab 2 Iobroker Instanzen am Laufen (Alt und Neu) und habe die Files aus dem Ordner (und Unterordner):

                        opt/iobroker/iobroker-data/Esphome.0
                        

                        aus dem Altsystem in das IobrokerNEU-System kopiert um im Dashboard des IobrokerNEU weiterarbeiten zu können.

                        Leider bekomm ich folgenden Fehler:

                        INFO Reading configuration /opt/iobroker/iobroker-data/esphome.0/Verbrauch_Keller_Garage.yaml...
                        WARNING 'verbrauch_keller_garage': 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...
                        ERROR Error copying file /opt/iobroker/node_modules/iobroker.esphome/python_modules/lib/python3.9/site-packages/esphome/core/component.h to /opt/iobroker/iobroker-data/esphome.0/verbrauch_keller_garage/src/esphome/core/component.h: [Errno 1] Operation not permitted: '/opt/iobroker/iobroker-data/esphome.0/verbrauch_keller_garage/src/esphome/core/component.h'
                        

                        oder wie könnte ich einen Wechsel machen? Die Datenpunkte landen bereits in der Datenstruktur nur die das Dashboard ist leer.

                        DutchmanD 1 Reply Last reply
                        0
                        • Johannes BauerstatterJ Johannes Bauerstatter

                          Hallo, hab 2 Iobroker Instanzen am Laufen (Alt und Neu) und habe die Files aus dem Ordner (und Unterordner):

                          opt/iobroker/iobroker-data/Esphome.0
                          

                          aus dem Altsystem in das IobrokerNEU-System kopiert um im Dashboard des IobrokerNEU weiterarbeiten zu können.

                          Leider bekomm ich folgenden Fehler:

                          INFO Reading configuration /opt/iobroker/iobroker-data/esphome.0/Verbrauch_Keller_Garage.yaml...
                          WARNING 'verbrauch_keller_garage': 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...
                          ERROR Error copying file /opt/iobroker/node_modules/iobroker.esphome/python_modules/lib/python3.9/site-packages/esphome/core/component.h to /opt/iobroker/iobroker-data/esphome.0/verbrauch_keller_garage/src/esphome/core/component.h: [Errno 1] Operation not permitted: '/opt/iobroker/iobroker-data/esphome.0/verbrauch_keller_garage/src/esphome/core/component.h'
                          

                          oder wie könnte ich einen Wechsel machen? Die Datenpunkte landen bereits in der Datenstruktur nur die das Dashboard ist leer.

                          DutchmanD Offline
                          DutchmanD Offline
                          Dutchman
                          Developer Most Active Administrators
                          wrote on last edited by
                          #371

                          @johannes-bauerstatter sagte in [ESPHome] Beta release:

                          oder wie könnte ich einen Wechsel machen? Die Datenpunkte landen bereits in der Datenstruktur nur die das Dashboard ist leer.

                          die underscores rausnehmen in der Datei

                          1 Reply Last reply
                          0
                          • P pboeck

                            @noah3112
                            Hier ist die komplette .yaml und das Blockly:

                            esphome:
                              name: testdisplay
                              platform: ESP32
                              board: nodemcu-32s
                            
                            wifi:
                              ssid: "XX"
                              password: "XX"
                              manual_ip:
                                static_ip: X
                                gateway: X
                                subnet: X
                            
                              # Enable fallback hotspot (captive portal) in case wifi connection fails
                              ap:
                                ssid: "Test Display Fallback Hotspot"
                                password: "X"
                            
                            captive_portal:
                            
                            # Enable logging
                            logger:
                              baud_rate: 0
                            #  level: ERROR
                            
                            # Enable Home Assistant API
                            # api:
                            #  password: "XX"
                            mqtt:
                              broker: XX
                              username: XX
                              password: XX
                            
                            ota:
                              password: "X"
                              
                            web_server:
                              port: 80
                              auth:
                                username: XX
                                password: XX
                                
                            time:
                              - platform: sntp
                                servers: XX
                                id: timeact 
                            spi:
                              clk_pin: GPIO18
                              mosi_pin: GPIO23
                              miso_pin: GPIO19
                              
                            sensor:
                              - platform: wifi_signal
                                id: WLAN
                                name: "WiFi Signal"
                                update_interval: 60s
                              
                            font:
                              - file: "Roboto-Regular.ttf"
                                id: RB3
                                size: 24
                              - file: "Roboto-Regular.ttf"
                                id: 
                                size: 20
                              - file: "Roboto-Regular.ttf"
                                id: RB1
                                size: 16  
                            color:
                              - id: red_01
                                red: 100%
                                green: 0%
                                blue: 0%    
                              - id: blue_01
                                red: 0%
                                green: 0%
                                blue: 100%
                              - id: green_01
                                red: 0%
                                green: 100%
                                blue: 0%    
                            display:
                              - platform: ili9341
                                model: TFT 2.4
                                id: Display1
                                cs_pin: GPIO5
                                dc_pin: GPIO4
                                led_pin: GPIO15  
                                reset_pin: GPIO22
                                rotation: 90°
                                pages:
                                  - id: page1
                                    lambda: |-
                                      it.strftime(160, 0, id(RB1), TextAlign::TOP_CENTER, "%X    %d.%m.%y", id(timeact).now());
                                      it.printf(5, 25, id(RB3), id(green_01), "%s", id(Zeile11).state.c_str());
                                      it.printf(5, 60, id(RB3), id(green_01), "%s", id(Zeile12).state.c_str());
                                      it.printf(5, 90, id(RB3), id(green_01), "%s", id(Zeile13).state.c_str());
                                      it.printf(5, 120, id(RB3), id(green_01), "%s", id(Zeile14).state.c_str());
                                      it.printf(5, 150, id(RB3), id(green_01), "%s", id(Zeile15).state.c_str());
                                      it.printf(5, 180, id(RB3), id(blue_01), "%s", id(Zeile16).state.c_str());
                                      it.printf(5, 210, id(RB3), id(blue_01), "%s", id(Zeile17).state.c_str());
                                  - id: page2
                                    lambda: |-
                                      it.strftime(160, 0, id(RB1), TextAlign::TOP_CENTER, "%X    %d.%m.%y", id(timeact).now());
                                      it.printf(5, 25, id(RB3), id(green_01), "%s", id(Zeile21).state.c_str());
                                      it.printf(5, 60, id(RB3), id(green_01), "%s", id(Zeile22).state.c_str());
                                      it.printf(5, 90, id(RB3), id(green_01), "%s", id(Zeile23).state.c_str());
                                      it.printf(5, 120, id(RB3), id(green_01), "%s", id(Zeile24).state.c_str());
                                      it.printf(5, 150, id(RB3), id(green_01), "%s", id(Zeile25).state.c_str());
                                      it.printf(5, 180, id(RB3), id(blue_01), "%s", id(Zeile26).state.c_str());
                                      it.printf(5, 210, id(RB3), id(blue_01), "%s", id(Zeile27).state.c_str());
                            text_sensor:
                              - platform: mqtt_subscribe
                                name: "Zeile 1.1"
                                id: Zeile11
                                topic: Seite1/Zeile1
                              - platform: mqtt_subscribe
                                name: "Zeile 1.2"
                                id: Zeile12
                                topic: Seite1/Zeile2
                              - platform: mqtt_subscribe
                                name: "Zeile 1.3"
                                id: Zeile13
                                topic: Seite1/Zeile3    
                              - platform: mqtt_subscribe
                                name: "Zeile 1.4"
                                id: Zeile14
                                topic: Seite1/Zeile4    
                              - platform: mqtt_subscribe
                                name: "Zeile 1.5"
                                id: Zeile15
                                topic: Seite1/Zeile5     
                              - platform: mqtt_subscribe
                                name: "Zeile 1.6"
                                id: Zeile16
                                topic: Seite1/Zeile6   
                              - platform: mqtt_subscribe
                                name: "Zeile 1.7"
                                id: Zeile17
                                topic: Seite1/Zeile7   
                            
                              - platform: mqtt_subscribe
                                name: "Zeile 2.1"
                                id: Zeile21
                                topic: Seite2/Zeile1
                              - platform: mqtt_subscribe
                                name: "Zeile 2.2"
                                id: Zeile22
                                topic: Seite2/Zeile2
                              - platform: mqtt_subscribe
                                name: "Zeile 2.3"
                                id: Zeile23
                                topic: Seite2/Zeile3    
                              - platform: mqtt_subscribe
                                name: "Zeile 2.4"
                                id: Zeile24
                                topic: Seite2/Zeile4    
                              - platform: mqtt_subscribe
                                name: "Zeile 2.5"
                                id: Zeile25
                                topic: Seite2/Zeile5     
                              - platform: mqtt_subscribe
                                name: "Zeile 2.6"
                                id: Zeile26
                                topic: Seite2/Zeile6   
                              - platform: mqtt_subscribe
                                name: "Zeile 2.7"
                                id: Zeile27
                                topic: Seite2/Zeile7           
                                
                            output:
                              - platform: ledc
                                pin: GPIO15
                                id: gpio_32_backlight_pwm
                                inverted: yes
                                
                                
                            light:
                              - platform: monochromatic
                                output: gpio_32_backlight_pwm
                                name: "ILI9341 Display Backlight"
                                id: back_light
                                restore_mode: ALWAYS_OFF
                                on_turn_on:
                                - delay: 10s
                                - light.turn_off: back_light
                            
                            xpt2046:
                              id: touchscreen
                              cs_pin: GPIO14
                              irq_pin: GPIO27
                              update_interval: 50ms
                              report_interval: 1s
                              threshold: 400
                              dimension_x: 240
                              dimension_y: 320
                              calibration_x_min: 3860
                              calibration_x_max: 280
                              calibration_y_min: 340
                              calibration_y_max: 3860
                              swap_x_y: false
                              on_state:
                                - lambda: |-
                                    ESP_LOGI("main", "args x=%d, y=%d, touched=%s", x, y, (touched ? "touch" : "release"));
                                    ESP_LOGI("main", "member x=%d, y=%d, touched=%d, x_raw=%d, y_raw=%d, z_raw=%d",
                                        id(touchscreen).x,
                                        id(touchscreen).y,
                                        (int) id(touchscreen).touched,
                                        id(touchscreen).x_raw,
                                        id(touchscreen).y_raw,
                                        id(touchscreen).z_raw
                                        );
                            
                            binary_sensor:
                              - platform: xpt2046
                                xpt2046_id: touchscreen
                                name: Touch1
                                id: touch_key0
                                x_min: 20
                                x_max: 80
                                y_min: 200
                                y_max: 280
                                on_press:
                                  - display.page.show_next: Display1
                                  - component.update: Display1
                                  
                              - platform: xpt2046
                                xpt2046_id: touchscreen
                                name: Touch2
                                id: touch_key2
                                x_min: 90
                                x_max: 140
                                y_min: 100
                                y_max: 160
                                on_press:
                                  - light.turn_on: back_light
                            

                            Bildschirmfoto 2021-09-27 um 08.29.30.png

                            draexlerD Online
                            draexlerD Online
                            draexler
                            wrote on last edited by draexler
                            #372

                            @pboeck @pboeck said in [ESPHome] Beta release:
                            Hi, bastle gerade auch ein bisschen. Für mich ist der MQTT komplett neu. Was ich schon habe ist die Verbindung zwischen MQTT und ESP Home. Das sehe ich auch in den Instanzeneinstellungen. Soweit so gut. Aber ab dann komme ich nicht weiter und finde auch nichts dazu was mir weiterhelfen kann. Wie bekomme ich nun Werte z.B. von einen Termometer nach ESPHome? Durch dein Blockly steige ich nicht so ganz durch... Wo schreibst du was hin? Bis jetzt ist sehe ich nur folgendes:
                            Bildschirmfoto 2021-11-02 um 08.14.21.png

                            Wahrscheinlich brauche ich nur einen "Stupser" in die richtige Richtung.

                            Johannes BauerstatterJ 1 Reply Last reply
                            0
                            • draexlerD draexler

                              @pboeck @pboeck said in [ESPHome] Beta release:
                              Hi, bastle gerade auch ein bisschen. Für mich ist der MQTT komplett neu. Was ich schon habe ist die Verbindung zwischen MQTT und ESP Home. Das sehe ich auch in den Instanzeneinstellungen. Soweit so gut. Aber ab dann komme ich nicht weiter und finde auch nichts dazu was mir weiterhelfen kann. Wie bekomme ich nun Werte z.B. von einen Termometer nach ESPHome? Durch dein Blockly steige ich nicht so ganz durch... Wo schreibst du was hin? Bis jetzt ist sehe ich nur folgendes:
                              Bildschirmfoto 2021-11-02 um 08.14.21.png

                              Wahrscheinlich brauche ich nur einen "Stupser" in die richtige Richtung.

                              Johannes BauerstatterJ Offline
                              Johannes BauerstatterJ Offline
                              Johannes Bauerstatter
                              wrote on last edited by
                              #373

                              @draexler Wenn du in deiner Yaml das Api aktivierst und den ESPHOME - Adapter installiert hast, erscheinen die Punkte autom. .
                              Ich aktivier zudem gerne am Anfang den Webserver. So kannst du mit der ESP-IP:80 die Werte mal sehen, die ankommen sollten. Wenn hier nichts steht, ist ein Fehler in der Yaml.

                              esphome:
                                name: esp32_mini_heizung
                                platform: ESP32
                                board: wemos_d1_mini32
                              
                              wifi:
                                ssid: "Geheim"
                                password: "Geheim"
                              
                              # Enable Home Assistant API -> hiermit werden die Daten an den ESPHOME - Adapter übermittelt
                              api:
                              ota:
                              
                              # Web Server
                              web_server:
                                port: 80
                              
                              dallas:
                                - pin: 4  
                                
                              sensor:
                                - platform: wifi_signal
                                  name: "WiFi Signal Sensor"
                                  update_interval: 10s
                              
                                - platform: pzemac
                              ......
                              

                              9f344a78-05c6-49a8-b4ec-6c5b254c9ad3-image.png

                              draexlerD 1 Reply Last reply
                              0
                              • Johannes BauerstatterJ Johannes Bauerstatter

                                @draexler Wenn du in deiner Yaml das Api aktivierst und den ESPHOME - Adapter installiert hast, erscheinen die Punkte autom. .
                                Ich aktivier zudem gerne am Anfang den Webserver. So kannst du mit der ESP-IP:80 die Werte mal sehen, die ankommen sollten. Wenn hier nichts steht, ist ein Fehler in der Yaml.

                                esphome:
                                  name: esp32_mini_heizung
                                  platform: ESP32
                                  board: wemos_d1_mini32
                                
                                wifi:
                                  ssid: "Geheim"
                                  password: "Geheim"
                                
                                # Enable Home Assistant API -> hiermit werden die Daten an den ESPHOME - Adapter übermittelt
                                api:
                                ota:
                                
                                # Web Server
                                web_server:
                                  port: 80
                                
                                dallas:
                                  - pin: 4  
                                  
                                sensor:
                                  - platform: wifi_signal
                                    name: "WiFi Signal Sensor"
                                    update_interval: 10s
                                
                                  - platform: pzemac
                                ......
                                

                                9f344a78-05c6-49a8-b4ec-6c5b254c9ad3-image.png

                                draexlerD Online
                                draexlerD Online
                                draexler
                                wrote on last edited by
                                #374

                                @johannes-bauerstatter: Danke dir :-) Genau das war der richtige Stupser. Machmal ist es so einfach :-)

                                draexlerD 1 Reply Last reply
                                0
                                • draexlerD draexler

                                  @johannes-bauerstatter: Danke dir :-) Genau das war der richtige Stupser. Machmal ist es so einfach :-)

                                  draexlerD Online
                                  draexlerD Online
                                  draexler
                                  wrote on last edited by draexler
                                  #375

                                  Noch ein Punkt: Wenn ich MQTT verwende heißt es auf der ESPHome Dokumentation das ich die API Line entfernen soll.
                                  Nachdem ich das gemacht habe, habe ich nun immer diese ERRORS im Log.Bildschirmfoto 2021-11-02 um 11.57.19.png

                                  Es läuft aber alles ;-)

                                  Habt ihr das auch?

                                  EDIT: Ich sehe gerade das im ESP Adapter er nicht als Verbunden angezeigt wird. Sehr komisch.

                                  Johannes BauerstatterJ DutchmanD 2 Replies Last reply
                                  0
                                  • draexlerD draexler

                                    Noch ein Punkt: Wenn ich MQTT verwende heißt es auf der ESPHome Dokumentation das ich die API Line entfernen soll.
                                    Nachdem ich das gemacht habe, habe ich nun immer diese ERRORS im Log.Bildschirmfoto 2021-11-02 um 11.57.19.png

                                    Es läuft aber alles ;-)

                                    Habt ihr das auch?

                                    EDIT: Ich sehe gerade das im ESP Adapter er nicht als Verbunden angezeigt wird. Sehr komisch.

                                    Johannes BauerstatterJ Offline
                                    Johannes BauerstatterJ Offline
                                    Johannes Bauerstatter
                                    wrote on last edited by
                                    #376

                                    @draexler Ich benutzte früher auch MQTT aber mittels Api hab ich dafür keine Verwendung mehr. Wozu brauchst du noch MQTT in Kombination mit ESPHOME?

                                    1 Reply Last reply
                                    0
                                    • draexlerD draexler

                                      Noch ein Punkt: Wenn ich MQTT verwende heißt es auf der ESPHome Dokumentation das ich die API Line entfernen soll.
                                      Nachdem ich das gemacht habe, habe ich nun immer diese ERRORS im Log.Bildschirmfoto 2021-11-02 um 11.57.19.png

                                      Es läuft aber alles ;-)

                                      Habt ihr das auch?

                                      EDIT: Ich sehe gerade das im ESP Adapter er nicht als Verbunden angezeigt wird. Sehr komisch.

                                      DutchmanD Offline
                                      DutchmanD Offline
                                      Dutchman
                                      Developer Most Active Administrators
                                      wrote on last edited by
                                      #377

                                      @draexler sagte in [ESPHome] Beta release:

                                      Noch ein Punkt: Wenn ich MQTT verwende heißt es auf der ESPHome Dokumentation das ich die API Line entfernen soll.
                                      Nachdem ich das gemacht habe, habe ich nun immer diese ERRORS im Log.Bildschirmfoto 2021-11-02 um 11.57.19.png

                                      Es läuft aber alles ;-)

                                      Habt ihr das auch?

                                      EDIT: Ich sehe gerade das im ESP Adapter er nicht als Verbunden angezeigt wird. Sehr komisch.

                                      Nein das ist nur nötig wen man mir mqtt benutzen wil.
                                      Wen man den Adapter verwendet hat mqtt keinen Sinn und ist unnötiger overhead die api Communication ist viel stabieler und efficiënter

                                      draexlerD 1 Reply Last reply
                                      0
                                      • DutchmanD Dutchman

                                        @draexler sagte in [ESPHome] Beta release:

                                        Noch ein Punkt: Wenn ich MQTT verwende heißt es auf der ESPHome Dokumentation das ich die API Line entfernen soll.
                                        Nachdem ich das gemacht habe, habe ich nun immer diese ERRORS im Log.Bildschirmfoto 2021-11-02 um 11.57.19.png

                                        Es läuft aber alles ;-)

                                        Habt ihr das auch?

                                        EDIT: Ich sehe gerade das im ESP Adapter er nicht als Verbunden angezeigt wird. Sehr komisch.

                                        Nein das ist nur nötig wen man mir mqtt benutzen wil.
                                        Wen man den Adapter verwendet hat mqtt keinen Sinn und ist unnötiger overhead die api Communication ist viel stabieler und efficiënter

                                        draexlerD Online
                                        draexlerD Online
                                        draexler
                                        wrote on last edited by draexler
                                        #378

                                        @dutchman Und das heißt jetzt? Ich dachte wenn ich Werte z.B. einen Temperaturwert aus ioBroker in ESP Home anzeigen will muss ich das aktuell noch über MQTT machen? Du arbeitest ja noch an einer Lösung oder?
                                        Oder stehe ich jetzt hier komplett auf dem Schlauch?!

                                        Nur das wir vom gleichen reden. Ich nutzte nur den ESPHome Adapter aus iOBroker und möchte Daten auf eine ePaper anzeigen das an einen ESP32 hängt.

                                        A DutchmanD 2 Replies Last reply
                                        0
                                        • draexlerD draexler

                                          @dutchman Und das heißt jetzt? Ich dachte wenn ich Werte z.B. einen Temperaturwert aus ioBroker in ESP Home anzeigen will muss ich das aktuell noch über MQTT machen? Du arbeitest ja noch an einer Lösung oder?
                                          Oder stehe ich jetzt hier komplett auf dem Schlauch?!

                                          Nur das wir vom gleichen reden. Ich nutzte nur den ESPHome Adapter aus iOBroker und möchte Daten auf eine ePaper anzeigen das an einen ESP32 hängt.

                                          A Offline
                                          A Offline
                                          Ahnungsbefreit
                                          wrote on last edited by
                                          #379

                                          @draexler Das unterstützt der ESPHome Adapter noch nicht. Ich habe dafür ein Issue aufgemacht:

                                          https://github.com/DrozmotiX/ioBroker.esphome/issues/103

                                          Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          346

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe