HomeKit CurrentTemperature shows only rounded values

Hi there :wave:

My problem:
HomeKit shows current temperatures rounded to the next half or full degree, even if no value step is set.

My system:

Summary
#########################################################################
###############  openhabian  ############################################
#########################################################################
##        Ip = xxx.xxx.xxx.xxx
##   Release = Raspbian GNU/Linux 11 (bullseye)
##    Kernel = Linux 6.1.21-v7+
##  Platform = Raspberry Pi 3 Model B Plus Rev 1.3
##    Uptime = 1 day(s). 15:37:21
## CPU Usage = 3.28% avg over 4 cpu(s) (4 core(s) x 1 socket(s))
##  CPU Load = 1m: 0.55, 5m: 0.31, 15m: 0.22
##    Memory = Free: 0.10GB (11%), Used: 0.84GB (89%), Total: 0.94GB
##      Swap = Free: 2.21GB (97%), Used: 0.07GB (3%), Total: 2.29GB
##      Root = Free: 18.10GB (65%), Used: 9.66GB (35%), Total: 28.98GB
##   Updates = 0 apt updates available.
##  Sessions = 1 session(s)
## Processes = 136 running processes of 32768 maximum processes
#########################################################################

What I have done:
I moved from textual configurations to the UI config to use the Semantic Model. I created the items from things and added the metadata for HomeKit.
For Thermostat.CurrentTemperature I added no further config but then the values displayed in HomeKit are set to a step of 0.5 what is too inexact for my favor.
I also tried to add a config step, but the UI shows a form validation error (see screenshot below).

I tried adding the value for steps into the code column like this

value: Thermostat.CurrentTemperature
config:
  step: 0.1

and even :dotted_line_face:

value: Thermostat.CurrentTemperature
config:
  step: 0,1

but both without any change in HomeKit. :expressionless:

Screenshots




In my .items-file it looked like this and was showing the actual value:

Number OG_Arbeitszimmer_Heizung_Ist_Temp "Arbeitszimmer Heizung ist-Temp" (gOG_Arbeitszimmer_Heizung, INNOGY_Temp, OG_Arbeitszimmer, gSollIstVergleich) {homekit = "CurrentTemperature"}

Any help is highly appreciated.
(wife acceptance factor is decreasing rapidly :sweat_smile:)

That is exactly what the Apple Homekit app does, it seems it’s an intentional behavior. It won’t ever show degrees with a higher precision, probably out of “simplicity for the user”. However it may use .1 degree step precision for setpoints.

What you could try, is setting a condition in Homekit with a temperature threshold (e.g. turn ON or OFF a specific light for testing purposes), and see if it gets triggered when the threshold is reached. That threshold can be set to .1 degree accuracy If I’m not mistaken.

To verify this, you’ll have to use a different system that will NOT round the temperature reading to .0 or .5 degrees when displaying the temperature…

Simplest way is to ask Siri, it answers with .1 precision

1 Like