The entire tool pickup sequence for each tool should go in the tpre(n).g file; just the definition of the tools themselves - extruder, heater, fan etc. - in config.g

eg. This is my tpre0.g for tool zero using the E3D toolchange system:

; tpre0.g ; called before tool 0 is selected ; Verify X & Y are referenced before any tool action if !move.axes[0].homed || !move.axes[1].homed M98 P"homey.g" M98 P"homex.g" M98 P"homec.g" G91 G1 Z5 F15000 G90 ;Unlock Coupler M98 P"/macros/Coupler - Unlock" ;Move to clearance position G1 Y200 F25000 ;Align G1 X300.0 Y220 F25000 ;Pick up position G1 X300.0 Y298.0 F2500 ;Close Coupler M98 P"/macros/Coupler - Lock" ;Move Out G1 X300.0 Y220 F4000

Each tool also has a tfree(n).g that is very similar but to return/unclamp the tool.

If the config tool has created tpre0 etc. already, just edit the sequence of moves in them to match the exact mechanics and system on your printer.

The coupler - lock and coupler - unlock macros have the commands to clamp or release whatever tool the head is aligned with.