Profile Offset with Units


I’m trying to get this working (Openhab 2.4 stable running on Windows):

Number:Dimensionless EG_WcGast_Luftfeuchte "Luftfeuchte" <humidity> { channel="onewire:bms:332f4e49:26_57DE1D020000:humidity" [profile="offset", profile-parameterID="-2.5 %"]}

but it gives the following errors in openhab.log:

2019-09-07 19:24:57.685 [WARN ] [nternal.profiles.SystemOffsetProfile] - Received a QuantityType state '46.2146 %' with unit, but the offset is defined as a plain number without unit (null), please consider adding a unit to the profile offset.
2019-09-07 19:24:58.065 [WARN ] [nternal.profiles.SystemOffsetProfile] - Offset not configured correctly, please make sure it is of type QuantityType, e.g. "3", "-1.4", "3.2°C". Using offset 0 now.

I also tried parameters “-2.5%”, “-2.5” and “-2.5 %”. The error comes up every time. I don’t understand it, because the offset is not “defined as plain number without unit”.

I am using multiple onewire sensor, the probleme exits with every one of them and also with the temperature measurements.

Thanks for any help!

  • you may use offset instead of profile-parameterID as parameter key, so it will read your percent
  • however I’m not sure it will work with non-static value (percent). report back, i’m curious.

Correct form:

Number:Dimensionless EG_WcGast_Luftfeuchte "Luftfeuchte" <humidity> { channel="onewire:bms:332f4e49:26_57DE1D020000:humidity" [profile="offset", offset="-2.5 %"]}

Another possible to try, in rules a pipe character can denote units
offset="-2.5 | %"

Also % often needs escaping, how about