OK, good. "02 - Illegal Data Address" just means you are asking for something out of range with your MRX instruction. In your OP you said, "Just simply attempting to read 40001 and 40002 via MRX will cause this error instantly." So my first guess is that you have typed in "40001" in the "From Modbus Offset Address" parameter for the MRX, when, most likely, you should've typed in "1". The reason being, the MRX "From Modbus Offset Address" is zero-based. You are probably technically wanting to read from "Holding Register 1 and 2" which is commonly referred to in writing as "40001 and 40002" but technically, in the telegram that is sent over the wire is really offset 1 and 2 in the Holding Register block. If you put in "40001" and "40002" in this field in the MRX instruction, then it is literally trying to read "Holding Register 40001 (not 1) and 40002 (not 2)", and this is most likely out of range for your ACS550.