From 9cc2c4d16b13d5e6cf36be1c85fd94a5d21877f5 Mon Sep 17 00:00:00 2001 From: jfmartel Date: Mon, 17 Nov 2025 14:05:08 -0500 Subject: [PATCH] Ajout plus de traces pour debug Modbus --- sources/Modbus/ModbusBackend.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/sources/Modbus/ModbusBackend.cpp b/sources/Modbus/ModbusBackend.cpp index 5ad83bb..562d84f 100644 --- a/sources/Modbus/ModbusBackend.cpp +++ b/sources/Modbus/ModbusBackend.cpp @@ -168,7 +168,7 @@ int CModbusBackend::AnalyzeModbusRequest(CModbusTransaction Transaction) //Validate data range if(!mModbusRepo->IsHRValid(StartAdress,1)) { - qDebug("Reg invalid"); + CEngLog::instance()->AddLogString(QString().sprintf("Slave invalid register in Rx Write Single Register req. Address: %d",StartAdress)); //Send negative response SendErrorResponse(Transaction,MODBUS_EXCEPTION_ILLEGAL_DATA_ADDRESS); ModbusRequestException(MODBUS_EXCEPTION_ILLEGAL_DATA_ADDRESS,MODBUS_WRITE_SINGLE_REGISTER); @@ -180,10 +180,7 @@ int CModbusBackend::AnalyzeModbusRequest(CModbusTransaction Transaction) //Write register data mModbusRepo->WriteHRData(StartAdress,1,data); - if(StartAdress == 2000) - { - qDebug("debug... 2000"); - } + CEngLog::instance()->AddLogString(QString().sprintf("Slave Rx Write Single Register. Address: %d, Value: 0x%s",StartAdress, data.toHex().data())); CEngLog::instance()->AddLogString(QString().sprintf("Data: %s\n",data.toHex().data())); @@ -213,7 +210,7 @@ int CModbusBackend::AnalyzeModbusRequest(CModbusTransaction Transaction) //Validate nb of registers if(NbRegisters < 1 || NbRegisters > 0x7D || ByteCount != (NbRegisters*2)) { - qDebug("Invalid register number or byte count "); + CEngLog::instance()->AddLogString(QString().sprintf("Slave invalid register nb or byte count in multiple registers write req. ByteCount: %d, Nb Reg: %d",ByteCount, NbRegisters)); SendErrorResponse(Transaction,MODBUS_EXCEPTION_ILLEGAL_DATA_VALUE); ModbusRequestException(MODBUS_EXCEPTION_ILLEGAL_DATA_VALUE,MODBUS_FCT_WRITE_MULTIPLE_REGISTERS); return 0; @@ -222,7 +219,7 @@ int CModbusBackend::AnalyzeModbusRequest(CModbusTransaction Transaction) //Validate data range if(!mModbusRepo->IsHRValid(StartAdress,NbRegisters)) { - qDebug("Reg invalid"); + CEngLog::instance()->AddLogString(QString().sprintf("Slave invalid register in multiple registers write req. Address: %d, Nb Reg: %d",StartAdress, NbRegisters)); //Send negative response SendErrorResponse(Transaction,MODBUS_EXCEPTION_ILLEGAL_DATA_ADDRESS); ModbusRequestException(MODBUS_EXCEPTION_ILLEGAL_DATA_ADDRESS,MODBUS_FCT_WRITE_MULTIPLE_REGISTERS);