Using LabVIEW's built-in MODBUS VIs I am able to successfully read all of the registers for the MFCs. It's a mystery why the I/O server method is having problems reading those particular registers I mentioned earlier. Maybe there is a mismatch in the CRC causing the error??
One thing: With the MODBUS Read Holding Registers.vi I notice that I can successfully read 41 successive 16-bit registers, but when I try to read 49 successive 16-bit registers I get an error status <APPEND> function code d-389113 (I didn't try any number 42-48). It makes sense that there would be a limit to how many items you can read from 1 ping... but if this is the source of the error I can't figure out what that limit is.