A negative thirty six (-36) error code is generated when we have successfully connected to a device and issued the device a Modbus request, but it has not responded to the request within the defined response time out period. This is akin to calling some one on the phone, having some one answer the phone, but then when you ask them a question there is nothing but silence on the line.
Common causes of this error include:
- Having a response time out setting that is too low (the device is trying to respond but we're not giving them enough time to do so)
- Using the incorrect Slave/Node ID (usually when talking to a Modbus TCP/IP to Modbus RTU converter and thus the Slave/Node ID is very important)
- When we are attempting to use MBAP messaging but the device is expecting Encapsulated Modbus messaging (or vice versa). Our modules use MBAP messaging for all commands where the port is 502, Encapsulated Modbus when any other port is used. Note, some of our drivers have a setting called MBAP over ride which will cause us to use MBAP messaging even when using a non 502 port if enabled. If your device has such a setting, it should be located in the client settings. In the unlikely event that you need to use encapsulated Modbus on port 502, our modules (as of 8/20/2015) do not have that capability. (While not exclusive to them, encapsulated Modbus is usually only used by Modbus TCP/IP to Modbus RTU converters)