diff --git a/src/knx/bau07B0.cpp b/src/knx/bau07B0.cpp index 83e6156..9cc10ce 100644 --- a/src/knx/bau07B0.cpp +++ b/src/knx/bau07B0.cpp @@ -138,8 +138,8 @@ bool Bau07B0::isAckRequired(uint16_t address, bool isGrpAddr) return _addrTable.contains(address); } - // Also ACK for our own individual address or broadcast - if (address == _deviceObj.individualAddress() || address == 0) + // Also ACK for our own individual address + if (address == _deviceObj.individualAddress()) return true; return false; diff --git a/src/knx/network_layer_coupler.cpp b/src/knx/network_layer_coupler.cpp index d54b176..038d455 100644 --- a/src/knx/network_layer_coupler.cpp +++ b/src/knx/network_layer_coupler.cpp @@ -98,8 +98,8 @@ bool NetworkLayerCoupler::isRoutedIndividualAddress(uint16_t individualAddress) // This shall serve for protection purposes. (It is useful to prevent all parameterisation in one Subnetwork; the Coupler shall be protected // too. A typical use case is the protection of a Subnetwork that is located outside a building) - // Also ACK for our own individual address or broadcast - if (individualAddress == _deviceObj.individualAddress() || individualAddress == 0) + // Also ACK for our own individual address + if (individualAddress == _deviceObj.individualAddress()) return true; // use 2 for now diff --git a/src/knx/tpuart_data_link_layer.cpp b/src/knx/tpuart_data_link_layer.cpp index c56f98f..fe0cb8f 100644 --- a/src/knx/tpuart_data_link_layer.cpp +++ b/src/knx/tpuart_data_link_layer.cpp @@ -272,7 +272,7 @@ void TpUartDataLinkLayer::loop() // or any filter tables (coupler) to see if we are addressed. //check if individual or group address - bool isGroupAddress = (buffer[6] & 0x80) != 0; + bool isGroupAddress = (buffer[1] & 0x80) != 0; uint16_t addr = getWord(buffer + 4); if (_cb.isAckRequired(addr, isGroupAddress))