Marstek B2500 Batteriespeicher

Ich hab mal weiter rumgedoktort und splitte nicht nach der xten Stelle, sondern nach dem Wert der übergebe wird. Wenn der Hersteller hier irgendwas hinzufügt oder entfernt und sich dadurch die Reihenfolge ändert, sollte das mit dem Wert “sicherer” sein. Ich habe auch noch die Binary sensors bei den normalen Sensoren entfernt so dass sie nicht doppelt sind.

ACHTUNG: Ich habe auch einige Entitäten umbenannt z.B. aus T0 Time 1 gemacht, weil es so vom Hersteller angegeben ist.

Jetzt würde ich mich noch mal an die Device Classes machen und schauen, das hier auch richtige Symbole etc. erscheinen:

mqtt:
  sensor:
    - name: "Solar 1 Input Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      state_class: measurement
      value_template: "{{ value.split('w1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_solar_1_input_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Solar 2 Input Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      state_class: measurement
      value_template: "{{ value.split('w2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_solar_2_input_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Battery Percentage"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      device_class: battery
      value_template: "{{ value.split('pe')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_battery_percentage"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Device Version Number"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('vv')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_device_version_number"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Charging Settings"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('cs')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_charging_settings"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Discharge Settings"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('cd')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_discharge_settings"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "AM"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('am')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_am"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
      
    - name: "DOD Discharge Depth"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      value_template: "{{ value.split('do')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_dod_discharge_depth"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Battery Output Threshold"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('lv')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_battery_output_threshold"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Scene"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('cj')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_scene"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
      
    - name: "Battery Capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: battery
      value_template: "{{ value.split('kn')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_battery_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output Power 1"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('g1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_output_power_1"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output Power 2"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('g2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_output_power_2"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Discharge Setting Mode"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('md')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_discharge_setting_mode"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 1 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('e1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time1_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 1 End"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('f1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time1_end"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 1 Output Value"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('h1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time1_output_value"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('e2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time2_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 End"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('f2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time2_end"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 Output Value"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('h2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time2_output_value"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('e3')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time3_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 End"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('f3')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time3_end"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 Output Value"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('h3')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time3_output_value"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Is the sensor connected"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('sg')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_is_the_sensor_connected"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Automatic Power Size of the Monitor"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('sp')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_automatic_power_size_monitor"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Power Transmitted by the Monitor"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      value_template: "{{ value.split('st')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_power_transmitted_monitor"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Minimum Temperature of Battery Cells"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "°C"
      value_template: "{{ value.split('tl')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_min_temp_battery_cells"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Maximum Temperature of Battery Cells"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "°C"
      value_template: "{{ value.split('th')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_max_temp_battery_cells"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "WiFi Signal Detection"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('ts')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_wifi_signal_detection"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Chip FC4 Version Number"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('fc')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_chip_fc4_version"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Device ID"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('id')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_device_id"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Host Battery Capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: battery
      state_class: measurement
      value_template: "{{ value.split('a0')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_host_battery_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Extra Battery 1 capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: battery
      state_class: measurement
      value_template: "{{ value.split('a1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_extra_battery_1_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Extra Battery 2 capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: battery
      state_class: measurement
      value_template: "{{ value.split('a2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_extra_battery_2_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"



  binary_sensor:
    - name: "Solar Input Status 1"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('p1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_solar_input_status_1"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Solar Input Status 2"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('p2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_solar_input_status_2"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Is Power Pack 1 Connected"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('b1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_power_pack_1_connected"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Is Power Pack 2 Connected"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('b2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_power_pack_2_connected"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output State 1"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('o1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_output_state_1"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output State 2"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('o2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_output_state_2"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time1 Enable Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('d1')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time1_enable_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time2 Enable Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('d2')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time2_enable_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time3 Enable Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('d3')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_time3_enable_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Charging Temperature Alarm"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('tc')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_charging_temp_alarm"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Discharge Temperature Alarm"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('tf')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_discharge_temp_alarm"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Sensor Connection Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('sg')[1].split(',')[0].split('=')[1] }}"
      unique_id: "b2500_sensor_connection_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
1 „Gefällt mir“

Kennt ihr die Arbeit von Martin0475:
https://www.photovoltaikforum.com/thread/232408-b2500-bluepalm-be-cool-marstek-etc-mqtt-aktivierung-und-smarthome-einbindung/?pageNo=59
Er hat ein fertiges Setup für bis zu 4 Speicher mit Dashboard.

1 „Gefällt mir“

Das Splitten nach den Variablen macht deutlich mehr Sinn. Klasse Lösung, danke dir!

Ein kleiner Fehler ist mir noch aufgefallen. Das sind % Angaben.

Danke, langsam wird es richtig gut, ich versuche gerade noch die Zeiteinstellungen, auch als Zeitstempel in HomeAssistant zu haben. Aber da kommt nur murks raus.

Wenn ich z.B. die Zeit auf 01:08 Stelle als 1 Uhr Nachts und 8 min. Dann kommt per MQTT 1:8 . Jetzt habe ich das mal gesplittet und per Sekunden multipliziert und wenn ich das als Template baue klappt das auch, aber als Value Template bekomme ich das nicht hin. Da bin ich zuletzt bei diesem Wahnsinn hier gelandet:

{{ ((float(value.split('e2')[1].split(',')[0].split('=')[1].split(':')[0]) * 3600) + (float(value.split('e2')[1].split(',')[0].split('=')[1].split(':')[1]) * 60)) | timestamp_custom("%H:%M", 0) }}

Das funktioniert im Template:

{% set t = '3:8' %}
{{ ((float(t.split(':')[0]) * 3600) + (float(t.split(':')[1]) * 60)) | timestamp_custom("%H:%M", 0) }}

Da wurschtel ich mal weiter und dann schau ich mal was ich hinbekomme. Aber falls jemand eine Idee hat, gerne her damit.

Vielleicht verstehe ich dein Problem nicht ganz, aber ich setze den Output für zwei B2500 wie folgt:

alias: B2500 Nulleinspeisung
description: ""
triggers:
  - seconds: /10
    trigger: time_pattern
conditions: []
actions:
  - metadata: {}
    data:
      qos: 0
      retain: false
      topic: hame_energy/HMA-1/App/2419720d2e4e/ctrl
      payload: cd=07,md=0,a1=1,b1=00:00,e1=23:59,v1={{states('sensor.p_out') }}
    action: mqtt.publish
  - metadata: {}
    data:
      qos: 0
      retain: false
      topic: hame_energy/HMA-1/App/7ce7126950b1/ctrl
      payload: cd=07,md=0,a1=1,b1=00:00,e1=23:59,v1={{states('sensor.p_out_x') }}
    action: mqtt.publish
mode: single

Mhh ich hab nicht genau beschrieben was ich vor habe. Ich hab den Entitäten versucht die passende Device Class zu geben, bei den Time Dingern wäre das timestamp:

    - name: "Time 1 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      device_class: timestamp
      value_template: >
        {{ ((int(data.split('e1')[1].split(',')[0].split('=')[1].split(':')[0]) * 3600) + (int(data.split('e1')[1].split(',')[0].split('=')[1].split(':')[1]) * 60)) | as_datetime("%H:%M") }}
      unique_id: "b2500_time1_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

Ich wollte einfach das die Zeit dann korrekt erkannt wird, aber ich komme da immer nur auf “Unbekannt”… gut das Ding steht so jetzt auch auf 1970.

Ich denke auch, wenn ihr euch zusammen tut, wird da ein super Project draus.
Alle Achtung und Dank für die klasse Arbeit!

Ja die Arbeit im Photovoltaikforum habe ich gestern auch noch gefunden. Schau ich mir auch noch an, ich wollte nur mein Zeit Problem lösen. Und ich habe auch noch Werte ergänzt, damit man den Batteriespeicher ins Energiedashboard mit aufnehmen kann. Das ist in dem Projekt auch mit drin:

mqtt:
  sensor:
    - name: "Solar 1 Input Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      state_class: measurement
      value_template: "{{ value.split('w1=')[1].split(',')[0] }}"
      unique_id: "b2500_solar_1_input_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Solar 2 Input Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      state_class: measurement
      value_template: "{{ value.split('w2=')[1].split(',')[0] }}"
      unique_id: "b2500_solar_2_input_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Battery Percentage"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      device_class: battery
      value_template: "{{ value.split('pe=')[1].split(',')[0] }}"
      unique_id: "b2500_battery_percentage"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Device Version Number"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('vv=')[1].split(',')[0] }}"
      unique_id: "b2500_device_version_number"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Charging Settings"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('cs=')[1].split(',')[0] }}"
      unique_id: "b2500_charging_settings"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Discharge Settings"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('cd=')[1].split(',')[0] }}"
      unique_id: "b2500_discharge_settings"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "AM"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('am=')[1].split(',')[0] }}"
      unique_id: "b2500_am"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
      
    - name: "DOD Discharge Depth"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      value_template: "{{ value.split('do=')[1].split(',')[0] }}"
      unique_id: "b2500_dod_discharge_depth"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Battery Output Threshold"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('lv=')[1].split(',')[0] }}"
      unique_id: "b2500_battery_output_threshold"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Scene"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('cj=')[1].split(',')[0] }}"
      unique_id: "b2500_scene"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
      
    - name: "Battery Capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: energy_storage
      value_template: "{{ value.split('kn=')[1].split(',')[0] }}"
      unique_id: "b2500_battery_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output Power 1"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('g1=')[1].split(',')[0] }}"
      unique_id: "b2500_output_power_1"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output Power 2"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('g2=')[1].split(',')[0] }}"
      unique_id: "b2500_output_power_2"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Discharge Setting Mode"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('md=')[1].split(',')[0] }}"
      unique_id: "b2500_discharge_setting_mode"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 1 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      device_class: timestamp
      value_template: "{{ today_at(value.split('e1=')[1].split(',')[0]) }}"     
      unique_id: "b2500_time1_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
          
    - name: "Time 1 End"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      device_class: timestamp
      value_template: "{{ today_at(value.split('f1=')[1].split(',')[0]) }}"     
      unique_id: "b2500_time1_end"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 1 Output Value"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('h1=')[1].split(',')[0] }}"
      unique_id: "b2500_time1_output_value"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      device_class: timestamp
      value_template: "{{ today_at(value.split('e2=')[1].split(',')[0]) }}" 
      unique_id: "b2500_time2_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 End"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ today_at(value.split('f2=')[1].split(',')[0]) }}" 
      device_class: timestamp
      unique_id: "b2500_time2_end"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 Output Value"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('h2=')[1].split(',')[0] }}"
      unique_id: "b2500_time2_output_value"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 Start"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      device_class: timestamp
      value_template: "{{ today_at(value.split('e3=')[1].split(',')[0]) }}" 
      unique_id: "b2500_time3_start"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 End"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      device_class: timestamp
      value_template: "{{ today_at(value.split('f3=')[1].split(',')[0]) }}" 
      unique_id: "b2500_time3_end"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 Output Value"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('h3=')[1].split(',')[0] }}"
      unique_id: "b2500_time3_output_value"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Is the sensor connected"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('sg=')[1].split(',')[0] }}"
      unique_id: "b2500_is_the_sensor_connected"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Automatic Power Size of the Monitor"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('sp=')[1].split(',')[0] }}"
      unique_id: "b2500_automatic_power_size_monitor"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Power Transmitted by the Monitor"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "W"
      device_class: power
      value_template: "{{ value.split('st=')[1].split(',')[0] }}"
      unique_id: "b2500_power_transmitted_monitor"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Minimum Temperature of Battery Cells"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "°C"
      device_class: temperature
      value_template: "{{ value.split('tl=')[1].split(',')[0] }}"
      unique_id: "b2500_min_temp_battery_cells"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Maximum Temperature of Battery Cells"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "°C"
      device_class: temperature
      value_template: "{{ value.split('th=')[1].split(',')[0] }}"
      unique_id: "b2500_max_temp_battery_cells"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "WiFi Signal Detection"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('ts=')[1].split(',')[0] }}"
      unique_id: "b2500_wifi_signal_detection"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Chip FC4 Version Number"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('fc=')[1].split(',')[0] }}"
      unique_id: "b2500_chip_fc4_version"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Device ID"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      value_template: "{{ value.split('id=')[1].split(',')[0] }}"
      unique_id: "b2500_device_id"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Host Battery Capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      device_class: battery
      state_class: measurement
      value_template: "{{ value.split('a0=')[1].split(',')[0] }}"
      unique_id: "b2500_host_battery_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Extra Battery 1 capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      device_class: battery
      state_class: measurement
      value_template: "{{ value.split('a1=')[1].split(',')[0] }}"
      unique_id: "b2500_extra_battery_1_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Extra Battery 2 capacity"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "%"
      device_class: battery
      state_class: measurement
      value_template: "{{ value.split('a2=')[1].split(',')[0] }}"
      unique_id: "b2500_extra_battery_2_capacity"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
          
    - name: "Daily Total Battery Charging Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total
      value_template: "{{ value.split('bc=')[1].split(',')[0] }}"
      unique_id: "b2500_daily_total_battery_charging_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
          
    - name: "Daily Total Battery Discharging Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total
      value_template: "{{ value.split('bs=')[1].split(',')[0] }}"
      unique_id: "b2500_daily_total_battery_discharging_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
          
    - name: "Daily Total Photovoltaic Charging Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total
      value_template: "{{ value.split('pt=')[1].split(',')[0] }}"
      unique_id: "b2500_daily_total_photovoltaic_charging_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"
          
    - name: "Daily Micro Reverse Output Total Power"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      unit_of_measurement: "Wh"
      device_class: energy
      state_class: total
      value_template: "{{ value.split('it=')[1].split(',')[0] }}"
      unique_id: "b2500_daily_micro_reverse_output_total_power"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"



  binary_sensor:
    - name: "Solar Input Status 1"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('p1=')[1].split(',')[0] }}"
      unique_id: "b2500_solar_input_status_1"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Solar Input Status 2"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('p2=')[1].split(',')[0] }}"
      unique_id: "b2500_solar_input_status_2"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Is Power Pack 1 Connected"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('b1=')[1].split(',')[0] }}"
      unique_id: "b2500_power_pack_1_connected"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Is Power Pack 2 Connected"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('b2=')[1].split(',')[0] }}"
      unique_id: "b2500_power_pack_2_connected"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output State 1"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('o1=')[1].split(',')[0] }}"
      unique_id: "b2500_output_state_1"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Output State 2"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('o2=')[1].split(',')[0] }}"
      unique_id: "b2500_output_state_2"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 1 Enable Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('d1=')[1].split(',')[0] }}"
      unique_id: "b2500_time1_enable_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 2 Enable Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('d2=')[1].split(',')[0] }}"
      unique_id: "b2500_time2_enable_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Time 3 Enable Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('d3=')[1].split(',')[0] }}"
      unique_id: "b2500_time3_enable_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Charging Temperature Alarm"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('tc=')[1].split(',')[0] }}"
      unique_id: "b2500_charging_temp_alarm"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Discharge Temperature Alarm"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('tf=')[1].split(',')[0] }}"
      unique_id: "b2500_discharge_temp_alarm"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

    - name: "Sensor Connection Status"
      state_topic: "hame_energy/HMA-1/device/2419720d2e4e/ctrl"
      payload_on: "1"
      payload_off: "0"
      value_template: "{{ value.split('sg=')[1].split(',')[0] }}"
      unique_id: "b2500_sensor_connection_status"
      device:
        name: "B2500"
        identifiers:
          - "2419720d2e4e"

Jetzt werden die Zeiten auch als Zeitstempel in Home Assistant angezeigt. Das kann das Projekt im Photovoltaikforum auch noch nicht, werde ich da auch noch mal schreiben.

Noch ein wichtiger Hinweis zur 0 Einspeisung. In der hier verlinkten Variante wurde der Wert immer in den Flashspeicher geschrieben, wenn man hier cd=20 statt 07 verwendet wird es nicht fest gespeichert und schon den Speicher. Zudem hatte ich das “Problem” das wenn ich als Wert 0 übergeben habe, dass er weiterhin Strom ausgeben hat, ich musste da noch die “Zeit” deaktivieren. Zudem habe ich wenn der Strombedarf oberhalb des Wechselrichters lag oder unter 0, dass dann der max wert oder min wert übergeben wird. Daher sieht meine Automation aktuell so aus:

alias: B2500 Nulleinspeisung
description: ""
triggers:
  - seconds: /10
    trigger: time_pattern
conditions: []
actions:
  - choose:
      - conditions:
          - condition: numeric_state
            entity_id: sensor.einspeisung_fur_akku
            below: 0
        sequence:
          - metadata: {}
            data:
              qos: 0
              retain: false
              topic: hame_energy/HMA-1/App/2419720d2e4e/ctrl
              payload: cd=20,md=0,a1=0,b1=00:00,e1=23:59,v1=0
            action: mqtt.publish
      - conditions:
          - condition: numeric_state
            entity_id: sensor.einspeisung_fur_akku
            above: 600
        sequence:
          - metadata: {}
            data:
              qos: 0
              retain: false
              topic: hame_energy/HMA-1/App/2419720d2e4e/ctrl
              payload: cd=20,md=0,a1=1,b1=00:00,e1=23:59,v1=600
            action: mqtt.publish
      - conditions:
          - condition: numeric_state
            entity_id: sensor.einspeisung_fur_akku
            below: 600
            above: 0
        sequence:
          - metadata: {}
            data:
              qos: 0
              retain: false
              topic: hame_energy/HMA-1/App/2419720d2e4e/ctrl
              payload: >-
                cd=20,md=0,a1=1,b1=00:00,e1=23:59,v1={{ states('sensor.einspeisung_fur_akku') }}
            action: mqtt.publish
mode: single

1 „Gefällt mir“

Hallo,

wie hast Du es geschafft, dass der Speicher bei dem Energy Managment System angezeigt wird?
Habe die App Power Zero das erscheint es aber wenn ich mich mit dem selben Zugangsdaten bei Energy Management System anmelde sehe ich ncihts und auch das eingeben von der SN oder der Mac aus der App sehe ich nichts.
Kannst Du oder jemand anderster mir helfen?
Gruss
Nick

Das geht seit ein paar Tagen nicht mehr. Mir wird da aktuell auch kein Gerät mehr angezeigt.
Du kannst über die App den Hersteller anschreiben. Stichwort: Benutzer-Feedback. Die antworten normal innerhalb von einem Tag.
LG Chris

Mhh ach kacke… Sowas nervt brutal.

Hallo,
Deshalb mache ich mich unabhängig von cloudlösungen.
Es gibt unter dem Photovoltaikforum einen Thread der beschreibt wie man mqtt beim Speicher aktiviert. Dann kann homeassistant die Daten über das lokale Netzwerk auslesen und darstellen.

MQTT muss einmalig über das “Energy Management System” aktiviert werden.
Ansonsten machen wir nichts anderes als Martin0475 mit seinem Setup.
LG Chris

Ich bekomme es nicht zum laufen. Hab den Ordner eingefügt jedoch kann ich keine werte sehen usw.
Weiss nicht genau was noch fehlt.

Hallo,
ich habe seit ein paar Tagen das gleiche Problem. Kann auch nichts im “Energy Management System” sehen. Ev. ist der Server down?
Haben noch mehr das Problem?

Gruß

Hab die Anleitung aus dem PV Forum mal nochmal gemacht. Ist das richtig:


Hier ein Ordner mit packages und dann den gesamten ZIP dorthinein entpacken. Und weiter? Weiss das jemand?

Hast du die configuration.yaml bearbeitet? Da muss man das packages -Verzeichnis bekanntmachen.
Im HA Verzeichniss muss ein Unterordner packages erstellt werden.

Dann in der configuration.yaml an der richtigen Stelle packages: !include_dir_named packages einfügen.

homeassistant:
customize: !include customize.yaml
packages: !include_dir_named packages
Seite 40 im Photovoltaikforum

1 „Gefällt mir“

Wo finde ich das im Photovoltaikforum?
Der Thread hat doch nur 2 Seiten?

photovoltaikforum - b2500-bluepalm-be-cool-marstek-etc-mqtt-aktivierung-und-smarthome-einbindung

es gibt auch einen Thread in dem gerade eine Anleitung entsteht. Ist aber nicht wirklich übersichtlich.
photovoltaikforum - b2500-integration-in-homeassistant-package-by-martin0475

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

Hallo,
Ich will MQTT über die Seite
https://eu.hamedata.com/app/AfterSales/login.html
aktivieren aber nach dem Einloggen habe ich keine Daten.
Mein Browser zeigt in den Netzwerk Daten einen HTTP 500 Fehler.