Die Temperaturumwandlung für HM-CC-TC ist falsch und liefert Temperaturen weit unterhalb des absoluten Nullpunkts:
2015-12-30_09:19:53 T.ZZZ T: -1637.8 H: 58
2015-12-30_09:22:39 T.ZZZ T: -1635.9 H: 59
2015-12-30_09:25:11 T.ZZZ T: -1634.1 H: 59
(Die Temperaturen sollten eigentlich -0.6, -2.5 und -4.3 lauten.)
Der Grund dafür ist eine abenteuerliche Umrechnung des 15-Bit Temperaturwerts in Zeile 1348 von 10_CUL_HM.pm:
$t = sprintf("%2.1f",($t & 0x3fff)/10*(($t & 0x4000)?-1:1));
Das ist falsch und müßte geändert werden in:
$t = (($t & 0x4000)?-1-($t ^ 0x7fff):($t & 0x3fff))/10;
oder noch besser in
$t &= 0x7fff;
$t = -1 - ($t ^ 0x7FFF) if ($t & 0x4000);
$t /= 10;
was sich besser lesen läßt und somit wartbarer ist.
drin - danke