diff --git a/src/knx/tpuart_data_link_layer.cpp b/src/knx/tpuart_data_link_layer.cpp index 48fef44..f5505ec 100644 --- a/src/knx/tpuart_data_link_layer.cpp +++ b/src/knx/tpuart_data_link_layer.cpp @@ -235,13 +235,13 @@ void TpUartDataLinkLayer::loop() //Destination Address + payload available _xorSum ^= rxByte; //check if echo - if (!((buffer[0] ^ _sendBuffer[0]) & ~0x20) && !memcmp(buffer + _convert + 1, _sendBuffer + 1, 5)) - { //ignore repeated bit of control byte - _isEcho = true; - } - else + _isEcho = false; + if(_sendBuffer != NULL) { - _isEcho = false; + if (!((buffer[0] ^ _sendBuffer[0]) & ~0x20) && !memcmp(buffer + _convert + 1, _sendBuffer + 1, 5)) //ignore repeated bit of control byte + { + _isEcho = true; + } } //convert into Extended.ind