I have been fooling around with modbus for a few hours, and I have discovered something I didn't find in all of the searching of documents and fora that I did.
When you are setting up a Functon in modbus in Mach4, even though you have to select the Function type, such as, "Read Holding Registers 16 bit (0x3)", you also need to put the prefix (in this case, "3") in the box labelled "Register Name Prefix".
Not very intuitive; I did it sort of on a whim when nothing worked.
Seems like that box should be labeled "Register Address Prefix", as it has nothing to do with the name. And why is it necessary to put in the prefix, if I have already selected the Function type, which implies the prefix?
Anyway, I am finally talking to my VFD.
I thought maybe somebody else would find this useful when they dig in to modbus.