Homekit: items with zwave-channel do not work

Tags: #<Tag:0x00007efec4557778> #<Tag:0x00007efec45576b0>

Hello

Im using Openhab v2.5.8-1 with Homekit-integration 2.5.8.

I’ve configured 4 items:

  • TemperatureSensor with netatmo channel
  • TemperatureSensor with zwave channel
  • HumiditySensor with netatmo channel
  • HumiditySensor with zwave channel

here the items-file:

Number	HK_Netatmo_Out_Temp			"netatmo Temperatur"			{homekit="TemperatureSensor", channel="netatmo:NAModule1:home:02000028c876:Temperature"}
Number	HK_GT_Pool_Temp				"zwave Temperatur"				{homekit="TemperatureSensor", channel="zwave:device:2e1cf86f:node22:sensor_temperature"}
Number	HK_Sens5_EG_Wasch_Hum		"zwave Feuchtigkeit"			{homekit="HumiditySensor", channel="zwave:device:2e1cf86f:node22:sensor_relhumidity"}
Number	HK_Netatmo_In_Hum			"netatmo Feuchtigkeit"			{homekit="HumiditySensor", channel="netatmo:NAMain:home:70ee50288d4e:Humidity"}

In the iOS homekit app I always get the minimum value for those two zwave items while in the openhab app the zwave items with the same channel shows the correct values. The netatmo items show the correct values also in the homekit app:


In the openhab.log I can see warnings like this for the zwave temperature item, but not for the humidity item:
2020-09-18 19:50:26.796 [WARN ] [istics.impl.base.FloatCharacteristic] - Detected value out of range 0.0. Returning min value instead. Characteristic io.github.hapjava.characteristics.impl.thermostat.CurrentTemperatureCharacteristic@5e1f36

Does anyone know, what’s wrong in my configuration?
Thanks and regards,
Phil

Im beginner too - but I guess you should set it as string not number.
Dont know if Im right but give it a try :blush:

I do not use HomeKit, but I can read the binding documentation. You should try it sometime.

HumiditySensor has a mandatory characteristic. I would guess the following might work.

Number	HK_Sens5_EG_Wasch_Hum		"zwave Feuchtigkeit"			{homekit="HumiditySensor.RelativeHumidity", channel="zwave:device:2e1cf86f:node22:sensor_relhumidity"}
Number	HK_Netatmo_In_Hum			"netatmo Feuchtigkeit"			{homekit="HumiditySensor.RelativeHumidity", channel="netatmo:NAMain:home:70ee50288d4e:Humidity"}

maybe zwave returns number below 0, e.g.
0.26 for 26C, or 0.5 for 50% humidity

humidity sensor has multiplier for such case.
try
Number HK_Sens5_EG_Wasch_Hum "zwave Feuchtigkeit" {homekit="HumiditySensor" [homekitMultiplicator=100], channel="zwave:device:2e1cf86f:node22:sensor_relhumidity"}

temperature sensor does not have such parameter, yet.

What values do your zwave linked Items actually get updated to? Look in your events.log, pay special attention to units.
Many zwave channels are for Quantity type Items, e.g. Number:Temperature etc.
These get correctly linked when using PaperUI but when using xxx.items files it is possible to link differing types incorrectly.

The problem is resolved, I just was too impatient. The configuration was right, like I did.

Today morning all values are correct. I think I had to wait until the zwave battery (!) devices passed a wakup cycle.
It seems, that the homkit addon does not get the existing values from zwave devices, but only receives them when they where updated…

Thanks for all your answers, and sorry for your waste of time.

1 Like