Hallo,
mir ist aufgefallen, dass MH für die u.g. aufgeführten Datenpunkttypen nahezu jeden beliebigen Wert entgegen nimmt, ohne den zulässigen Bereich zu beachten:
EIB10: DPT 7.001, EIS 10, 16-bit unsigned integer
EIB10_1: DPT 8.001, EIS 10.001, 16-bit signed integer
EIB11: DPT 12.001, EIS 11, 32-bit unsigned integer
EIB11_1: DPT 13.001, EIS 11.001, 32-bit signed integer
EIB14: DPT 6.001, EIS 14, 8-bit signed integer
EIB14_1: DPT 5.010, EIS 14.1; 8-bit unsigned integer
Beispielswiese dürfte für EIB10 (16-bit unsigned integer) das Setzen eines Wertes nur im Bereich 0-65535 - also 2^16-1 - möglich sein. Misterhouse nimmt aber auch 100000 entgegen und schickt dann irgendetwas auf den Bus.
Hat jemand schon Erfahrungen damit? Wäre es nicht sinnvoll, dass bei einer Bereichsüberschreitung automatisch auf den max. zulässigen Wert begrenzt wird?
Gruß,
thoern
mir ist aufgefallen, dass MH für die u.g. aufgeführten Datenpunkttypen nahezu jeden beliebigen Wert entgegen nimmt, ohne den zulässigen Bereich zu beachten:
EIB10: DPT 7.001, EIS 10, 16-bit unsigned integer
EIB10_1: DPT 8.001, EIS 10.001, 16-bit signed integer
EIB11: DPT 12.001, EIS 11, 32-bit unsigned integer
EIB11_1: DPT 13.001, EIS 11.001, 32-bit signed integer
EIB14: DPT 6.001, EIS 14, 8-bit signed integer
EIB14_1: DPT 5.010, EIS 14.1; 8-bit unsigned integer
Beispielswiese dürfte für EIB10 (16-bit unsigned integer) das Setzen eines Wertes nur im Bereich 0-65535 - also 2^16-1 - möglich sein. Misterhouse nimmt aber auch 100000 entgegen und schickt dann irgendetwas auf den Bus.
Hat jemand schon Erfahrungen damit? Wäre es nicht sinnvoll, dass bei einer Bereichsüberschreitung automatisch auf den max. zulässigen Wert begrenzt wird?
Gruß,
thoern