First, thanks to Smurf for the response, I will checkout the .ini
Scott, I will send you the .ini file intact as it is possible that either your MAD software, or my incorrect use of it, cause the gremlin because it started with the MAD install
Now a general FWIW. While I do not yet know how useful the built-in MACH4 Modbus 'monitor' will be, I am happy to have it and will investigate. Meanwhile, this is what I am doing to 'monitor' the TCP Modbus. This is a general description of the function. Please do not ask for the code. It is not generic.
1) in the device, track the number of modbus reads
2) send that number continuously over Modbus to MACH3 (I have not done this with MACH4 yet - and may not have to)
3) read the counts in MACH and compare each number to the previous.
A) read
B) store the value
C) start a timer of some kind
D) read again (after a longer period than the Modbus speed)
E) compare reads
F) if the reads do NOT match, Modbus is not only running, but the data is being passed correctly. If they do match, the com is broken, the device has locked up, of Mach has stopper sending queries for some reason.
There are doubtless lots of way to skin this cat. I am using the MacroPump to do this. In my setup, it actually is already in use for monitoring/sending E-stop to my Motor controller, and the Modbus 'monitoring' code was just added to it.
Since I do not want to pause the E-stop monitoring waiting for the next Modbus read, I am using the actual MacroPump execution loop as the timer.
So far it is working fine.