DPT 1.24 and 1.100 missing
wolfib77 opened this issue · comments
wolfib77 commented
Hi,
the DPT 1.024 and 1.100 are missing in dpdconvert.cpp:
int KNX_Decode_Value(uint8_t* payload, size_t payload_length, const Dpt& datatype, KNXValue& value)
{
if (payload_length > 0)
{
// DPT 1.* - Binary
if (datatype.mainGroup == 1 && datatype.subGroup >= 1 && datatype.subGroup <= 23 && datatype.subGroup != 20 && !datatype.index)
{
...
int KNX_Encode_Value(const KNXValue& value, uint8_t* payload, size_t payload_length, const Dpt& datatype)
{
if (datatype.mainGroup == 1 && datatype.subGroup >= 1 && datatype.subGroup <= 23 && datatype.subGroup != 20 && !datatype.index)
return valueToBusValueBinary(value, payload, payload_length, datatype);
...
Additionally the warning in dpt.cpp is not correct for DPT 16.000
Dpt::Dpt(short mainGroup, short subGroup, short index /* = 0 */)
: mainGroup(mainGroup), subGroup(subGroup), index(index)
{
if (subGroup == 0)
println("WARNING: You used and invalid Dpt *.0");
I would be happy if you could fix it.
Kind regards