Thanks Hakan for your reply.
The encoders are currently fed back to the stepper drivers only, so it is a 'semi-closed' loop system.
The Pico board has a dip switch option that allows it to count steps generated by the board if encoders are not connected so I guess that's what the current PID setup in the ini is doing. I think I have these settings setup as default from the Pico config example files but I don't fully understand that area so it could still be the cause of my issue.
I am thinking of swapping out the closed loop stepper drivers for open loop versions and then connecting the stepper encoders to the Pico board. However, the stepper encoders have six wires (PA+, PA-, PB+, PB-, 5v, GND) but the Pico board is only looking for three signals (A, B, Z,). I don't understand enough about encoders to know if I can match these two so need to do a bit more research. I think the 'Z' is an index signal which I guess I won't have on the stepper encoders I've got (?)