conv_dpt_9_001(.) ignores signed/unsigned and while (val >= 2047) should be while (val > 2047), range checks also missing.
Use DPT9 conversion floatToDpt9(.) from sblib instead.
See sblib/inc/eib/datapoint_types.h.
Maybe the same problem as mentioned in the Wiki
Die Batteriespannung (Kommunikationsobjekt 10) wird nach dem Start des Moduls nicht korrekt angezeigt.
Bei einigen Meldern wird die Batteriespannung sofort korrekt übertragen, andere benötigen dazu teilweise einige Tage Laufzeit.
Bisher ist nicht bekannt, wodurch dieses Problem ausgelöst wird.
conv_dpt_9_001(.)
ignores signed/unsigned andwhile (val >= 2047)
should bewhile (val > 2047)
, range checks also missing. Use DPT9 conversionfloatToDpt9(.)
from sblib instead. See sblib/inc/eib/datapoint_types.h. Maybe the same problem as mentioned in the Wiki