diff --git a/README.md b/README.md index c0797fe..ba00a1c 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,10 @@ See the examples for basic usage options - increase device object api version to 2 (invalidation of knx flash data stored by older versions) - add #pragma once to Arduino plattform to allow derived plattforms - change esp32 plattform to use KNX_NETIF -- fix out-of-boundary write and dereferenced nullpointer access in tunneling support +- fix out-of-boundary write and dereferenced nullpointer access in tunneling support + +### V2.1.2 - 2024-12-09 +- adds unicast auto ack ### V2.1.1 - 2024-09-16 - fix minor bug in TP-Uart Driver (RX queue out of boundary) diff --git a/library.json b/library.json index 71fe2eb..b00d5cc 100644 --- a/library.json +++ b/library.json @@ -1,6 +1,6 @@ { "name": "knx", - "version": "2.1.1", + "version": "2.1.2", "dependencies": { }, "description": "knx stack", diff --git a/src/knx/tpuart_data_link_layer.cpp b/src/knx/tpuart_data_link_layer.cpp index 7828789..de1fa6b 100644 --- a/src/knx/tpuart_data_link_layer.cpp +++ b/src/knx/tpuart_data_link_layer.cpp @@ -650,6 +650,15 @@ void TpUartDataLinkLayer::requestConfig() _platform.writeUart(U_CONFIGURE_REQ | U_CONFIGURE_MARKER_REQ); #endif + // Set Address for AutoACK Unicast + const uint16_t address = _deviceObject.individualAddress(); + _platform.writeUart(U_SET_ADDRESS_REQ); + _platform.writeUart((address >> 8) & 0xFF); + _platform.writeUart(address & 0xFF); +#ifdef NCN5120 + _platform.writeUart(0xFF); // Dummy Byte needed by NCN only +#endif + // Abweichende Config if (_repetitions != 0b00110011) {