Yes, no more customization !
My ZMAI90’s like this
- platform: mqtt
name: "Mains Consumed Energy"
state_topic: "electricity1/tele/RESULT"
value_template: >-
{% set message = value_json.SerialReceived %}
{% set payload = message[6:14] %}
{% set payload_len = (payload | length) %}
{% set result = namespace(value='') %}
{% for i in range(0, payload_len + 1) | reverse -%}
{%- if i is divisibleby 2 -%}
{%- set result.value = result.value + payload[i:i+2] -%}
{%- endif -%}
{%- endfor -%}
{{ (result.value|float) / 100 }}
unit_of_measurement: 'kWh'
unique_id: "mains_consumed_energy"
device_class: energy
state_class: measurement
last_reset_topic: 'electricity1/tele/RESULT'
last_reset_value_template: '1970-01-01T00:00:00+00:00'
and my global consumption like this :
template:
- sensor:
- name: "House electricity energy"
unit_of_measurement: 'kWh'
state: >
{{ (states("sensor.mains_consumed_energy") | float + states("sensor.upstairs_consumed_energy") | float) + (states("sensor.extra_consumed_energy") | float) | round(2) }}
device_class: energy
state_class: measurement
attributes:
last_reset: '1970-01-01T00:00:00+00:00'