There's actually a number of issues here but the bottomline is E3D is totally dropping the ball when it comes to support for the tool changer. I used the sample config.sys file on the support pages in the website to develop my updated config.sys file for the update to 3.4.1 of RRF. A number of places incorrectly left out the "!" of the pin connection labels! Then for where the End stops are configured it's not working at all. Here's the code from my file: ; Endstops M574 X1 S1 P"!xstop" ; configure active high endstop switch for low end on X (Duet 3) M574 Y1 S3 ; Set Y endstop stall detection M574 C0 Z0 ; No C Z endstop ; Z probe M558 P8 C"!zstop" H3 F360 I0 T20000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds G31 P200 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height M557 X10:290 Y20:180 S40 ; Define mesh grid It returns: Error: Failed to enable endstops Error: endstop type 0 is no longer supported. Use type 1 and invert the input pin instead. I've tried to contact E3D. I sent an email to their contact and I got no reply and their support pages do not recognize my login. NOT GOOD!!!
The problem turned out to be in the homing scripts. Each used the M574 command and redefined the end stops! Why? I don't know! I did not write them only edited the "S" parameters to "H". Bad idea. Updating from 2.04 to 3.4.1 took me two days with issue after whack a mole issue. A straight forward process should have been documented for updating the Duetwifi2 AND the Duet3 machines. If you still need to do it... good luck!
FWIW I published RRF3 configuration files for the E3D Tool Changer some time ago at https://github.com/Duet3D/RRF-machine-config-files/tree/master/E3D_Tool_Changer.