How can I read the Battery status in Homeassistant?
The HM-CC-RT-DN has on Channel: 4 the “[BATTERY_STATE]: 0e” and on Channel: 0 the “[LOWBAT]: 00” value.
How could I display these values in HA?
How can I read the Battery status in Homeassistant?
The HM-CC-RT-DN has on Channel: 4 the “[BATTERY_STATE]: 0e” and on Channel: 0 the “[LOWBAT]: 00” value.
How could I display these values in HA?
You have to create a template sensor. It’s explained in the HomeMatic documentation here.
Daniel thank you for the Info. Can you please give me a hint how to use the templete sensor?
Here it is not working how it should be.
It’s just like the example in the documentation. You just have to replace the entity ID (it’s there 2 times) with the one of your climate entity, and replace the Valve
with battery
. Once you have done that and restarted Home Assistant, you should have a new sensor entity in Home Assistant that has the battery level as its value. This extra entity then can be used for automations.
@Tom74, did you get it to work? Would you share your Config? I tried it with this in my configuration.yaml, but it does not work:
sensor:
- platform: template
sensors:
Raumthermostat_battery:
value_template: '{{ state_attr('climate.000313c999f2f8', 'battery') }}'
entity_id: climate.000313c999f2f8
friendly_name: 'Kinderzimmer Raumthermostat'
Sorry, for the delay. I had some problems with hassio on my docker installation.
So I moved back to pure homeassistant installation on my raspberry pi.
My config looks like this:
sensors.yaml
- platform: template
sensors:
heizung_schlafzimmer_battery:
unit_of_measurement: "V"
icon_template: mdi:battery
value_template: '{{ states.climate.heizung_schlafzimmer.attributes.battery}}'
entity_id: climate.heizung_schlafzimmer
friendly_name: 'Heizung Schlafzimmer Batterie'
heizung_bad_battery:
unit_of_measurement: "V"
icon_template: mdi:battery
value_template: '{{ states.climate.heizung_bad.attributes.battery }}'
entity_id: climate.heizung_bad
friendly_name: 'Heizung Bad Batterie'
heizung_wohnzimmer_battery:
unit_of_measurement: "V"
icon_template: mdi:battery
value_template: '{{ states.climate.heizung_wohnzimmer.attributes.battery }}'
entity_id: climate.heizung_wohnzimmer
friendly_name: 'Heizung Wohnzimmer Batterie'
heizung_wt_wohnzimmer_battery:
unit_of_measurement: "V"
icon_template: mdi:battery
value_template: '{{ states.climate.wt_heizung_wohnzimmer.attributes.battery }}'
entity_id: climate.wt_heizung_wohnzimmer
friendly_name: 'Heizung WT Wohnzimmer Batterie'
heizung_kueche_battery:
unit_of_measurement: "V"
icon_template: mdi:battery
value_template: '{{ states.climate.heizung_kuche.attributes.battery }}'
entity_id: climate.heizung_kuche
friendly_name: 'Heizung Küche Batterie'
battery.yaml
id: battery
title: Batterie
icon: mdi:battery
cards:
- type: "custom:monster-card"
show_empty: false
card:
type: entities
title: Thermostate
filter:
include:
- entity_id: sensor.heizung_*_battery
Hi,
what values can this get?
I want to do a batterie page with other devices like Shellys, so a % value would be nice.
I solved it this way but only works in conjunction with CCU and not with access point. Create a template sensor for each device. It may be that you first have to release the sensor when integrating the devices in HA.
[image]
I think your voltage values are then between 3V and 2.1V…
But i read my voltage value from HmIp SWDOs (Fensterkontakt), i currently get between 1.1V - 1.3V ?
My Heating Sensors (EVO) or my wall-thermostats (Heizkörperthermostate), Buttons (Taster) are also in range 2.1 - 3V.
You also have some window sensors there… do u know why is it like this showing 1.1V ?
Edit: Ok, that was my bad 1 Battery vs. 2 Batteries
But now i have another question…
So the scale with 2 batteries is between 3V - 2.1V. (where 2.1V means 0%):
3V 100%
2.9V 89%
2.8V 78%
2.7V 67%
2.6V 56%
2.5V 44%
2.4V 33% —> default LOW BATTERY Threshold (in CCU)
2.3V 22%
2.2V 11%
2.1V 0%
I cannot convert your formula for 1 Battery (1.5V)
1.5V 100%
1.45V 89%
1.4V 78%
1.35V 67%
1.30V 56%
1.25V 44%
1.20V 33% (default LOW BATTERY Threshold for 2 Batteries)
1.15V 22%
1.10V 11% —> default LOW BATTERY Threshold 1.1V
1.05V 0%
Now I have a SWDO, which shows me 1V and Low Battery… it does not match the above scale…
maybe it is like this?:
1.5V 100%
1.4V 83%
1.3V 67%
1.2V 50%
1.1V 33%
1.0V 17%
0.9V 0%
So the formula is: ((voltage - 0.9) / (1.5 - 0.9) * 100) ?
Do you also use like this?
Quite simply because at 2 volts at the latest, Homematic devices no longer work anyway, i.e. the CCU starts flashing and the device logs out of the system. You can set this to 2.1 volts in the CCU and it should be enough. I’m also on Simon42 if you prefer to chat in German.
Heyhey
I just installed “Battery notes” and took a look at all my battery devices.
As I have some HmIP devices, im looking for a way to calculate the battery percent from its voltage.
(I know this doesnt fit perfectly fine, but I just want to have a percentage value to sort devices by its battery state).
So I took the code from the screenshot above:
{% set voltage = states('sensor.fensterkontakt_kissenraum_betriebsspannung') | float %}
{% if is_state('binary_sensor.fensterkontakt_kissenraum_batterie', 'on') %}
0
{% else %}
{{ ((voltage - 2.1) / (3 - 2.1) * 100) | round(0) }}
{% endif %}
This contains the following formula:
{{ ((voltage - 2.1) / (3 - 2.1) * 100) | round(0) }}
For this specific device - holding a single AAA battery with a voltage of 1.2V - a percentage value of -111% is shown. Im supposing this is not correct :o)
So I have to adjust this formula for my different devices with different batterys inside.
And my question is if my understanding of this formula is correct. This is as follows:
(ActualVoltage - BatteryEmptyVoltage) / (BatteryFullVoltage - BatteryEmptyVoltage) *100