From ebaf24f8d11339521f0296b4a2e5edecf8f41a8c Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Fri, 17 Nov 2017 10:42:41 +0000 Subject: [PATCH] 10_ZWave.pm: some THERMOSTAT_SETPOINT_REPORT patches (Forum #79659) git-svn-id: https://svn.fhem.de/fhem/trunk@15439 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_ZWave.pm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/fhem/FHEM/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm index d873ec70d..12d75b923 100644 --- a/fhem/FHEM/10_ZWave.pm +++ b/fhem/FHEM/10_ZWave.pm @@ -1481,13 +1481,12 @@ ZWave_thermostatSetpointParse ($$) my $scale = (((hex($2) & 0x18)>>3) == 1) ? "F": "C"; my $size = (hex($2) & 0x07); - if (length($3) != $size*2) { - Log3 $name, 1, "$name: THERMOSTAT_SETPOINT_REPORT " - ."wrong number of bytes received"; - return; - } my $sp = hex($3); - $sp -= (2 ** ($size*8)) if $sp >= (2 ** ($size*8-1)); + if(length($3) != $size*2) { + $sp = ($sp & 0xfff0000) >> 16; #79659, Temporary? + } else { + $sp -= (2 ** ($size*8)) if($sp >= (2 ** ($size*8-1))); + } $sp = $sp / (10 ** $prec); # output temperature with variable decimals as reported (according to $prec)