Closed dvehof closed 5 years ago
Did this happen after the update to OH 2.4? If yes and if you are using PaperUI you can try the following:
I have got three of these devices and all are working correctly with OH 2.4.
Thanks for the hint, I'll try to readd the things later (using text configuration).
@MHerbst : I removed the thing from my homematic.things file, readded the thing but sadly it didn't help and the error remains. A bit strange that the same devices work for you.
TRACE log of homematic binding in addition (if it helps):
2019-01-06 14:11:41.240 [DEBUG] [ematic.handler.HomematicThingHandler] - Received command '21.0 C' for channel 'homematic:HM-TC-IT-WM-W-EU:ccu:XXXXXXXX:2#SET_TEMPERATURE'
2019-01-06 14:11:41.243 [TRACE] [converter.type.AbstractTypeConverter] - Converting type QuantityType with value '21.0 C' to FLOAT value with QuantityTypeConverter for 'XXXXXXXX:2#SET_TEMPERATURE'
2019-01-06 14:11:41.246 [ERROR] [ematic.handler.HomematicThingHandler] - null
I had a short look at the QuantityTypeConverter Class. The above TRACE shows "21.0 C" and if i look at the class it seems to expect "21 °C". As i look at my older Wireless Room Thermostat Devices (HM-CC-TC) accodring to the TRACE they seem to send "21 °C" (and they work).
@MHerbst : maybe you can enable TRACE logging for the homematic binding and have a look what command is sent if you change the temperature? Maybe this is dependent on the firmware of the device? Mine are on 1.4.
I set TRACE using karaf:
log:set TRACE org.eclipse.smarthome.binding.homematic
I don't think that it has to do with the device firmware (I have got 1.4 too) because as far as I understand it, the problem happens before the data is sent to the device. I have tried it with log set to DEBUB (because TRACE gives to many information). This is my output:
17:01:35.513 [DEBUG] [mematic.handler.HomematicThingHandler] - Received command '20.0 °C' for channel 'homematic:HM-TC-IT-WM-W-EU:3014F711A0001F58A992F7F2:MEQ0863365:2#SET_TEMPERATURE'
17:01:35.524 [DEBUG] [communicator.AbstractHomematicGateway] - Sending datapoint 'MEQ0863365:2#SET_TEMPERATURE' with value '20.0' to gateway with id '3014F711A0001F58A992F7F2' using rxMode 'DEFAULT'
How did you define your items? I am using an .items file with following definition:
Number HM_Buero_Temp_Set "Solltemperatur [%.1f °C]" <temperature> {channel="homematic:HM-TC-IT-WM-W-EU:3014F711A0001F58A992F7F2:OEQ1667729:2#SET_TEMPERATURE"}
Here it is very important to add the "°" before the C. If I remove it, I get exactly the same error as you got.
Hi @MHerbst , thanks a lot for that hint! I only got "C" and not "°C" in my item definition. I changed that and that did the trick. Not sure if I like the fact that the item must be defined that way but it works and thats the important part. So again thanks for your thoughts and time @MHerbst .
I will close the issue as I suppose it is working the way it is intended.
Hi,
I am using OpenHAB 2.4 and I got a problem to control my Wireless Room Thermostats (HM-TC-IT-WM-W-EU). Changing the mode or trying to set a temperature using the app do not change anything and I get the following error in my log:
gerrieg told me I should ask you, @mdicke2s if you maybe have a clue as you implemented the converter and gerrieg is currently on vacation.
Thanks and greets