Modbus TCP device goes disconnect

Hello again.
We have Modbus TCP device. Values from this device we can take from Modbus Scanner (DAQFactory) perfectly.
[attachment=4]Station.png[/attachment]
But in Ignition this device goes to connect\disconnect state every 3-5 seconds when i try to add the tag. And tag goes to bad quality.
[attachment=0]Device_part1.JPG[/attachment]
[attachment=3]Device_part2.JPG[/attachment]
[attachment=2]Device1.JPG[/attachment]
[attachment=1]Device2.JPG[/attachment]

[attachment=2]TagConfig.JPG[/attachment]
[attachment=3]Scan.JPG[/attachment]
[attachment=1]Tags.JPG[/attachment]

Here is the logs

[attachment=0]logs.bin.gz[/attachment]

Answer from support:
"I noticed that the scan class of your tags (5000 ms) are longer than the timeout for the device (2000 ms). Try increasing the timeout for the device to something larger, or set your scan class to something smaller. "

Making Scan class 5000 and timeout 10000 - same result
15000 and 20000 - same result
15000 and 30000 - same result
3000 and 5000 - same result
5000 and 5000 - same result

You’ve also got incorrect values for all the ‘Max XX Per Request’ settings… if you’re requesting 32-bit values then you’ll need to be able to read at least 2 per request, not 1. You should probably just leave those at the default values for now.

Trying this: 10, 30, 60 - same result

Any ideas?

Try setting the poll rate to 1000ms. Your device might have a short validation time. Post back your results.

Same result :frowning:

Any ideas?

When you’re troubleshooting like this it’s helpful to only be subscribed to ONE tag on the device, and to be using direct/SQLTags to address the tag, not using the address mapping feature of the driver to browse and drag them in.

So remove the address map if you have one, remove all SQLTags pointing to this device, and make one single tag:

[BaseStation]1.IRF0

Make sure ‘Max Input Registers Per Request’ is 2 or greater.
Make sure ‘One-based Addressing’ is false (this allows you to start your addresses at zero like you are).

After doing this, if there’s still no good value in that tag, on the console in the gateway, under the Levels tag, search for ‘ReadInputRegistersRequest’, turn the logger(s) to TRACE, then wait ~15-20s and export the logs.bin.gz again.

Problem solved with Direct scan class and 15000 slow rate, and OPC Data Mode = Read.

Also, timeout = 10000.