Homeassistant wether.home daten verwenden

es kommt die Meldung "states" is not declared
Moment, "states" kam nur in meinem ersten Entwurf vor - das solltest Du aktuell (also meines Wissens nach) nicht verwenden, das funktioniert auch nur innerhalb von Home Assistant.

Also - in der configuration.yaml von HA den Sensor - nur den ersten Code - von hier anlegen: https://forum.heimnetz.de/threads/homeassistant-wether-home-daten-verwenden.587/#post-8358

Danach HA neustarten und prüfen, dass der Sensor vorhanden ist und funktioniert / Dir die Temperatur für morgen anzeigt.

Danach müsstest Du mittels
YAML:
sensor:
  - platform: homeassistant
    id: forecast_temperature
    name: "Vorhersage von Home Assistant"
    entity_id: sensor.forecast
bei dem ESP weiterkommen.

Den unteren Teil natürlich entsprechend anpassen, und wenn das noch nicht läuft am besten mal den gesamten eingetragenen Code hier reinkopieren - was ESP direkt angeht kann ich halt wirklich nur raten, aber wenn Du den Code einstellst kann azrael783 Dir vielleicht besser weiterhelfen.

Vielleicht gänge das auch kürzer, aber da ich jedenfalls keine Ahnung habe ob bzw. wie man in ESP an die Vorhersage kommt gehe ich lieber den kleinen Umweg über den expliziten Sensor in HA.
 
{{ state_attr('weather.home', 'forecast')[0], ['templow'] }}
wenn ich das da einsetze, bekomme ich die ganze List an conditionen...
 
Code:
/config/esphome/clean-101.yaml: In lambda function:
/config/esphome/clean-101.yaml:73:77: error: 'state_attr' was not declared in this scope   
 it.printf(200 ,0, id(digit_font), {{ state_attr('weather.home', 'forecast')[0]['templow'] }}
das ist die Meldung die ich bekomme, wenn ich versuche zu übertragen.....
 
Zuletzt bearbeitet von einem Moderator:
das ist die Meldung die ich bekomme, wenn ich versuche zu übertragen.....
Nein, das darfst Du so nicht nach ESP übertragen, das muss in der configuration.yaml in Home Assistant angelegt werden, also dieser ganze Block:
YAML:
sensor:
  - platform: template
    sensors:
      forecast:
        value_template: >
            {{ state_attr('weather.home', 'forecast')[0]['temperature'] }}
        friendly_name: Vorhersage
bzw. das oberste sensor: nur, wenn Du noch keines in der Datei stehen hast.

Erst wenn das geschehen, HA neugestartet ist und der Sensor angezeigt wird kannst Du das von ESP aus aufnehmen.
 
Code:
# Loads default set of integrations. Do not remove.
default_config:

# Text to speech
tts:
  - platform: google_translate

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml

sensor:
  - platform: time_date
    display_options:
      - 'time'
      - 'date'
      - 'date_time'
      - 'date_time_utc'
      - 'date_time_iso'
      - 'time_date'
      - 'time_utc'
      - 'beat'
    

  - platform: template
    sensors:
      forecast:
        value_template: >
            {{ state_attr('weather.home', 'forecast')[0]['templow'] }}
        friendly_name: Vorhersage

das ist die configuration.yaml
was ist dan meine Variable (id: ...) die ich nutzen kann
 
Zuletzt bearbeitet von einem Moderator:
Alles gut :)

Also das steht jetzt so in der configuration.yaml HA, selbiges ist neugestartet und Du kannst diesen Sensor unter Entwicklerwerkzeuge => Zustände sehen?
 
Code:
/config/esphome/clean-101.yaml: In lambda
 function: /config/esphome/clean-101.yaml:73:65: warning: too many arguments for format [-Wformat-extra-args]     
 it.printf(200 ,0, id(digit_font), " °C", id(forecast_temperature));

^
das bekomme ich jetzt beim .....mom
 
Zuletzt bearbeitet von einem Moderator:
ja, er sagt er erwarte ein "double"

Code:
/config/esphome/clean-101.yaml: In lambda function:
/config/esphome/clean-101.yaml:73:70: warning: format '%f' expects argument of type 'double', but argument 6 has type 'esphome::homeassistant::HomeassistantSensor*' [-Wformat=]
     it.printf(140 ,0, id(digit_font), " %.1f °C", id(forecast_temperature));
 
Zuletzt bearbeitet von einem Moderator:
auf dem Display und beim hochladen bekomme ich das mit dem " format'%f' expects argument of type double.. siehe oben
 
Code:
time:
- platform: homeassistant
  id: hass_time


# Example configuration entry


sensor:
#  - platform: dht
#    pin: GPIO4
#    model: DHT22
#    temperature:
#      name: "Esp-Rest-103 Temperature"
#      id: rest_103_temperatur
#      accuracy_decimals: 0
#- platform: homeassistant
# id: current_temperatur
# entity_id: weather.home
#  attribute: temperature

- platform: homeassistant
  id: forecast_temperature
  name: "Vorhersage von Home Assistant"
  entity_id: sensor.forecast



# Example configuration entry
spi:
  clk_pin: GPIO14
  mosi_pin: GPIO12

display:
  - platform: max7219digit
    cs_pin: GPIO15
    num_chips: 8
    intensity: 0
    lambda: |-
    
      it.strftime(18, 0, id(digit_font), "%H:%M", id(hass_time).now());
      it.printf(44, 0, id(digit_font), "Uhr");
      it.strftime(80, 0, id(digit_font), " %d-%h-%y ", id(hass_time).now() );
      it.printf(150 ,0, id(digit_font), "%s.1f °C", id(forecast_temperature));
#      if (id(current_temperatur).has_state()) {
#      it.printf(150, 0, id(digit_font), "%.1f", id(forecast_temperature).state);
#      }
    
#      it.strftime(140, 0, id(digit_font), "%d-%b-%y", id(hass_time).now());
#     it.strftime(30, 0, id(digit_font),  id(haas_time).now());
#      it.strftime(295, 0, id(digit_font), "%H:%M", id(esptime).now());   

#     // %% - literal % sign
#      it.print(37, 0, id(digit_font), " %.1f°C   %.1f%%", id(rest_103_temperatur).state, id(rest_103_luftfeuchtigkeit).state);
font:     
  - file: "pixelmix.ttf"
    id: digit_font
    size: 8
 
Zuletzt bearbeitet von einem Moderator:

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
5.879
Beiträge
57.437
Mitglieder
5.813
Neuestes Mitglied
Blacksnofru
Zurück
Oben