You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm running the slave to capture incoming modbus messages. I need to be able to identify the source of these incoming messages. When I run the slave in debug, I can get the Unit ID of the master from request.serverAddress. The problem is that the request is locked down inside RequestHandlerTCP that is set in ModbusSlaveTCP.run and placed in the slave's treadPool, which is private. Is there another way of differentiating the source of incoming modbus events? I could get the IP inside the ModbusSlaveTcpObserver.clientAccepted, but that doesn't help if there are multiple simultaneous incoming messages from different devices.
The text was updated successfully, but these errors were encountered:
It looks like in RequestHandlerTCP.run there is a condition that tests the incoming request server address is equal to slave.serverAddress. I'm going to try removing that condition since I want all requests from many devices to be handled. Is there a good reason for that condition to be in place? Maybe my whole approach is wrong?
I'm running the slave to capture incoming modbus messages. I need to be able to identify the source of these incoming messages. When I run the slave in debug, I can get the Unit ID of the master from request.serverAddress. The problem is that the request is locked down inside RequestHandlerTCP that is set in ModbusSlaveTCP.run and placed in the slave's treadPool, which is private. Is there another way of differentiating the source of incoming modbus events? I could get the IP inside the ModbusSlaveTcpObserver.clientAccepted, but that doesn't help if there are multiple simultaneous incoming messages from different devices.
The text was updated successfully, but these errors were encountered: