Ecotracker Daten aus json auslesen

Bin ein Frischling und komme irgendwie nicht weiter.

json

Mein Eintrag in configuration.yaml

template:
- sensor:
- name: "EcoTracker aktueller Verbrauch"
  unique_id: "EcoTrackerVerbrauch"
  state: "{{ ((state_attr('sensor.ecotracker_api', 'power') | float) | round(2)) }}"
  unit_of_measurement: W
- name: "EcoTracker Netzbezug"
  unique_id: "EcoTrackerBezug"
  state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterIn') | float) / 1000) | round(2)) }}"
  unit_of_measurement: kWh
  device_class: 'energy'
  state_class: total_increasing
- name: "EcoTracker Einspeisung"
  unique_id: "EcoTrackerEinspeisung"
  state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterOut') | float) / 1000) | round(2)) }}"
  unit_of_measurement: kWh
  device_class: 'energy'
  state_class: total_increasing
  sensor:
- platform: rest
  name: "ecotracker_api"
  scan_interval: 5
  resource: http://192.168.178.138/v1/json
  json_attributes:
  - power
  - energyCounterIn
  - energyCounterOut

Hier mein Problem:

Logger: homeassistant.config
Quelle: config.py:622
Erstmals aufgetreten: 11:52:05 (103 Vorkommnisse)
Zuletzt protokolliert: 12:03:12

json_attributes
Invalid config for 'template' at configuration.yaml, line 15: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 17: 'state' is an invalid option for 'template', check: state Invalid config for 'template' at configuration.yaml, line 18: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement
Invalid config for 'template' at configuration.yaml, line 19: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 21: 'state' is an invalid option for 'template', check: state Invalid config for 'template' at configuration.yaml, line 22: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at configuration.yaml, line 23: 'device_class' is an invalid option for 'template', check: device_class Invalid config for 'template' at configuration.yaml, line 24: 'state_class' is an invalid option for 'template', check: state_class
Invalid config for 'template' at configuration.yaml, line 25: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 27: 'state' is an invalid option for 'template', check: state Invalid config for 'template' at configuration.yaml, line 28: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at configuration.yaml, line 29: 'device_class' is an invalid option for 'template', check: device_class Invalid config for 'template' at configuration.yaml, line 30: 'state_class' is an invalid option for 'template', check: state_class
Invalid config for 'template' at configuration.yaml, line 32: 'platform' is an invalid option for 'template', check: platform Invalid config for 'template' at configuration.yaml, line 33: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 34: 'scan_interval' is an invalid option for 'template', check: scan_interval Invalid config for 'template' at configuration.yaml, line 35: 'resource' is an invalid option for 'template', check: resource Invalid config for 'template' at configuration.yaml, line 36: 'json_attributes' is an invalid option for 'template', check: json_attributes
Invalid config for 'template' at configuration.yaml, line 32: 'platform' is an invalid option for 'template', check: platform Invalid config for 'template' at configuration.yaml, line 33: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 34: 'scan_interval' is an invalid option for 'template', check: scan_interval Invalid config for 'template' at configuration.yaml, line 35: 'resource' is an invalid option for 'template', check: resource

Template:
Logger: homeassistant.config
Quelle: config.py:622
Erstmals aufgetreten: 11:52:05 (103 Vorkommnisse)
Zuletzt protokolliert: 12:03:12

Invalid config for 'template' at configuration.yaml, line 15: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 17: 'state' is an invalid option for 'template', check: state Invalid config for 'template' at configuration.yaml, line 18: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement
Invalid config for 'template' at configuration.yaml, line 19: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 21: 'state' is an invalid option for 'template', check: state Invalid config for 'template' at configuration.yaml, line 22: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at configuration.yaml, line 23: 'device_class' is an invalid option for 'template', check: device_class Invalid config for 'template' at configuration.yaml, line 24: 'state_class' is an invalid option for 'template', check: state_class
Invalid config for 'template' at configuration.yaml, line 25: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 27: 'state' is an invalid option for 'template', check: state Invalid config for 'template' at configuration.yaml, line 28: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at configuration.yaml, line 29: 'device_class' is an invalid option for 'template', check: device_class Invalid config for 'template' at configuration.yaml, line 30: 'state_class' is an invalid option for 'template', check: state_class
Invalid config for 'template' at configuration.yaml, line 32: 'platform' is an invalid option for 'template', check: platform Invalid config for 'template' at configuration.yaml, line 33: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 34: 'scan_interval' is an invalid option for 'template', check: scan_interval Invalid config for 'template' at configuration.yaml, line 35: 'resource' is an invalid option for 'template', check: resource Invalid config for 'template' at configuration.yaml, line 36: 'json_attributes' is an invalid option for 'template', check: json_attributes
Invalid config for 'template' at configuration.yaml, line 32: 'platform' is an invalid option for 'template', check: platform Invalid config for 'template' at configuration.yaml, line 33: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at configuration.yaml, line 34: 'scan_interval' is an invalid option for 'template', check: scan_interval Invalid config for 'template' at configuration.yaml, line 35: 'resource' is an invalid option for 'template', check: resource

:crayon:by HarryP: Post formatiert

Die Formatierung/Einrückung ist falsch.
Probier es ma so:

template:
  - sensor:
      - name: "EcoTracker aktueller Verbrauch"
        unique_id: "EcoTrackerVerbrauch"
usw.

Hallo harryp,

ich bin mit deiner Hilfe etwas weiter:
Sensor

Danke

1 „Gefällt mir“

Hi,

könntest du bitte mal deinen aktuellen Eintrag dazu posten? ich stehe gerade vor dem gleichen Problem und schaffe es immer nur, einen Eintrag zu bekommen.
VG
Daniel

Hallo,

Heute ebenfalls den EcoTracker installiert.
Wäre auch sehr an einer config interessiert

Vielen Dank

template:
- sensor:
  -  name: "EcoTracker aktueller Verbrauch"
     unique_id: "EcoTrackerVerbrauch"
     state: "{{ ((state_attr('sensor.ecotracker_api', 'power') | float) | round(2)) }}"
     unit_of_measurement: W

 - name: "EcoTracker Netzbezug"
   unique_id: "EcoTrackerBezug"
   state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterIn') | float) / 1000) | round(2)) }}"
   unit_of_measurement: kWh
   device_class: 'energy'
   state_class: total_increasing

 - name: "EcoTracker Einspeisung"
   unique_id: "EcoTrackerEinspeisung"
   state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterOut') | float) / 1000) | round(2)) }}"
   unit_of_measurement: kWh
   device_class: 'energy'
   state_class: total_increasing

- sensor:

- platform: rest
  name: "ecotracker_api"
  scan_interval: 5

resource: http://192.168.178.199/v1/json

json_attributes:

- power

- energyCounterIn

- energyCounterOut

:crayon:by HarryP: Codezeilen formatiert (bitte immer in </> einbinden)

ich habe mir auch den Ecotracker zugelegt und möchte den Netzbezug und die Einspeisung in Homeassistant auslesen. Muss ich nur die o.g. Konfigurationszeilen in configuratin.yaml kopieren?

Update:
bei der configuration.yaml erhalte ich keinen nSyntaxfehler, die Entitäten werden angelegt, es kommen aber keine Werte rein.

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

Hallo habe es noch nicht hin bekommen könnt Ihr bitte nochmals den yaml code zusednen?

'# Example configuration.yaml entry
  - sensor:
  - platform: bitcoin
    display_options:
      - exchangerate
      - trade_volume_btc
      
      template:
  - sensor:
      name: "EcoTracker aktueller Verbrauch"
      unique_id: "EcoTrackerVerbrauch"
      state: "{{ ((state_attr('sensor.ecotracker_api', 'power') | float) | round(2)) }}"
      unit_of_measurement: W

  - sensor:
      name: "EcoTracker Netzbezug"
      unique_id: "EcoTrackerBezug"
      state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterIn') | float) / 1000) | round(2)) }}"
      unit_of_measurement: kWh
      device_class: 'energy'
      state_class: total_increasing

  - sensor:
      name: "EcoTracker Einspeisung"
      unique_id: "EcoTrackerEinspeisung"
      state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterOut') | float) / 1000) | round(2)) }}"
      unit_of_measurement: kWh
      device_class: 'energy'
      state_class: total_increasing

  - sensor:
      platform: rest
      name: "ecotracker_api"
      scan_interval: 5'

:crayon:by HarryP: Codezeilen formatiert

hast du es inzwischen geschafft? ich leider nicht

Hallo,

ich habe gerade das vom Ecotracker gelesen. Bei mir läuft es soweit.
Habe ein Template und rest für das auslesen.
Habe dem Ecotracker eine fest IP Adresse vergeben. Kann auch mit Namen benutzt werden.
Bei EcoTrackerVerbrauch ist es etwas komplizierter, da bei mir ein negativer Wert kommt, wenn ich einspeise. Das ist dann aber auf der Seite mit Energie nicht so günstig.

ecotracker.yaml (1,9 KB)