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)