From 71c7e60b66736fc38572f63914cd372bcfb468fa Mon Sep 17 00:00:00 2001 From: Andreas Breitschopp Date: Fri, 19 Sep 2025 14:28:27 +0200 Subject: [PATCH 1/2] - Fixed sub group "0" should not trigger a warning for DPTs 14-16. - Fixed typing mistake in warning. --- src/knx/dpt.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/knx/dpt.cpp b/src/knx/dpt.cpp index 9af00c2..5f67db7 100644 --- a/src/knx/dpt.cpp +++ b/src/knx/dpt.cpp @@ -8,8 +8,9 @@ Dpt::Dpt() 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"); + if ((mainGroup < 14 || mainGroup > 16) && + subGroup == 0) + println("WARNING: You used an invalid Dpt *.0"); } bool Dpt::operator==(const Dpt& other) const From 8bd74ac273f30b303c215561360b560d652b1234 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cornelius=20K=C3=B6pp?= Date: Sun, 5 Oct 2025 19:12:23 +0200 Subject: [PATCH 2/2] Optimize DPT Constructor: Check for SubGroup==0 before MainGroups --- src/knx/dpt.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/knx/dpt.cpp b/src/knx/dpt.cpp index 5f67db7..c8791ce 100644 --- a/src/knx/dpt.cpp +++ b/src/knx/dpt.cpp @@ -8,8 +8,7 @@ Dpt::Dpt() Dpt::Dpt(short mainGroup, short subGroup, short index /* = 0 */) : mainGroup(mainGroup), subGroup(subGroup), index(index) { - if ((mainGroup < 14 || mainGroup > 16) && - subGroup == 0) + if (subGroup == 0 && (mainGroup < 14 || mainGroup > 16)) println("WARNING: You used an invalid Dpt *.0"); }