Hello,
I am having problems using a template sensor, I think I am missing something stupid but I can’t find out what. I hope you can help me with this.
I have the following template sensor:
- platform: template
sensors:
apartment_1_energy_kwh:
entity_id: sensor.apartment_1_energy
value_template: "{{ state_attr('sensor.apartment_1_energy') | float / 1000 }}"
friendly_name: "Apartment 1 energy kWh"
unit_of_measurement: kWh
apartment_2_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_2_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 2 energy kWh"
unit_of_measurement: kWh
apartment_3_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_3_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 3 energy kWh"
unit_of_measurement: kWh
apartment_4_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_4_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 4 energy kWh"
unit_of_measurement: kWh
apartment_5_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_5_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 5 energy kWh"
unit_of_measurement: kWh
apartment_6_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_6_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 6 energy kWh"
unit_of_measurement: kWh
apartment_7_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_7_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 7 energy kWh"
unit_of_measurement: kWh
apartment_8_energy_kwh:
value_template: "{{ state_attr('sensor.apartment_8_energy') | int / 1000 | round(2)}}"
friendly_name: "Apartment 8 energy kWh"
unit_of_measurement: kWh
The entities for this template sensor are defined here:
- platform: mqtt
name: "Apartment 1 power"
state_topic: "panel/sensor/apartment_1_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 1 energy"
state_topic: "panel/sensor/apartment_1_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 1 power factor"
state_topic: "panel/sensor/apartment_1_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 2 power"
state_topic: "panel/sensor/apartment_2_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 2 energy"
state_topic: "panel/sensor/apartment_2_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 2 power factor"
state_topic: "panel/sensor/apartment_2_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 3 power"
state_topic: "panel/sensor/apartment_3_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 3 energy"
state_topic: "panel/sensor/apartment_3_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 3 power factor"
state_topic: "panel/sensor/apartment_3_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 4 power"
state_topic: "panel/sensor/apartment_4_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 4 energy"
state_topic: "panel/sensor/apartment_4_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 4 power factor"
state_topic: "panel/sensor/apartment_4_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 5 power"
state_topic: "panel/sensor/apartment_5_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 5 energy"
state_topic: "panel/sensor/apartment_5_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 5 power factor"
state_topic: "panel/sensor/apartment_5_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 6 power"
state_topic: "panel/sensor/apartment_6_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 6 energy"
state_topic: "panel/sensor/apartment_6_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 6 power factor"
state_topic: "panel/sensor/apartment_6_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 7 power"
state_topic: "panel/sensor/apartment_7_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 7 energy"
state_topic: "panel/sensor/apartment_7_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 7 power factor"
state_topic: "panel/sensor/apartment_7_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
- platform: mqtt
name: "Apartment 8 power"
state_topic: "panel/sensor/apartment_8_power/state"
availability_topic: "panel/status"
unit_of_measurement: "W"
- platform: mqtt
name: "Apartment 8 energy"
state_topic: "panel/sensor/apartment_8_energy/state"
availability_topic: "panel/status"
unit_of_measurement: "Wh"
- platform: mqtt
name: "Apartment 8 power factor"
state_topic: "panel/sensor/apartment_8_power_factor/state"
availability_topic: "panel/status"
unit_of_measurement: ""
I think I have everything setup properly following the documentation, but I am getting the following error for my template sensor in home assistant log, and my template sensors are not working at all:
2020-04-29 11:59:17 ERROR (MainThread) [homeassistant.helpers.entity] Update for sensor.apartment_5_energy_kwh fails
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 261, in async_update_ha_state
await self.async_device_update()
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 439, in async_device_update
await self.async_update()
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/template/sensor.py", line 238, in async_update
self._state = self._template.async_render()
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/template.py", line 215, in async_render
return compiled.render(kwargs).strip()
File "/srv/homeassistant/lib/python3.7/site-packages/jinja2/asyncsupport.py", line 76, in render
return original_render(self, *args, **kwargs)
File "/srv/homeassistant/lib/python3.7/site-packages/jinja2/environment.py", line 1008, in render
return self.environment.handle_exception(exc_info, True)
File "/srv/homeassistant/lib/python3.7/site-packages/jinja2/environment.py", line 780, in handle_exception
reraise(exc_type, exc_value, tb)
File "/srv/homeassistant/lib/python3.7/site-packages/jinja2/_compat.py", line 37, in reraise
raise value.with_traceback(tb)
File "<template>", line 1, in top-level template code
File "/srv/homeassistant/lib/python3.7/site-packages/jinja2/sandbox.py", line 438, in call
return __context.call(__obj, *args, **kwargs)
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/template.py", line 963, in wrapper
return func(hass, *args[1:], **kwargs)
TypeError: state_attr() missing 1 required positional argument: 'name'