I know that this is an old topic, but I needed to know and found what works. Here is my start.gcode for S3D to prime both extruders at start:
; **** Duplicator 4 dual start.gcode ****
M73 P0 ; enable build progress
G162 X Y F3000 ; home XY maximum
G161 Z F1200 ; home Z minimum
G92 Z-5 ; set Z to -5
G1 Z0 ; move Z to 0
G161 Z F100 ; home Z slowly
M132 X Y Z A B ; recall home offsets
M135 T0 ; load right extruder offsets
G1 X-120 Y-70 Z30 F9000 ; move to wait position off table
G130 X20 Y20 Z20 A20 B20 ; lower stepper Vrefs while heating
M126 S[fan_speed_pwm]
M140 S[bed0_temperature] T0
M134 T0 ; stabilize bed temperature
M104 S[extruder0_temperature] T0
M104 S[extruder1_temperature] T1
M133 T0 ; stabilize right extruder temperature
M133 T1 ; stabilize left extruder temperature
G130 X127 Y127 Z40 A127 B127 ; default stepper Vrefs
G92 A0 B0 ; zero extruders
G1 Z0.4 ; position nozzle
G1 E25 F300 ; purge nozzle M135 T1 ; load left extruder offsets G1 E25 F300 ; purge nozzle NEW
G1 X-115 Y-65 Z0.15 F1200 ; slow wipe
G1 X-110 Y-60 Z0.5 F1200 ; lift
G92 A0 B0 ; zero extruders
M73 P1 ;@body (notify GPX body has started)
; **** end of start.gcode ****
The items in bold were added. When you call M135 with T1, it selects the left extruder, then you simply run the purge again. This has been tested working on Duplicator 4S with Sailfish by yours truly and work swimmingly.
For dual extrusion priming you need to call the tool command, with T0 being your first extruder and T1 being the second extruder. Below are examples that we use in the Starting G-Code Script for our dual extruder machines.
T1 ;Switch to the 2nd extruder
G92 E0 ;zero the extruded length
G1 F200 E15 ;extrude 10mm of feed stock
G92 E0 ;zero the extruded length again
T0 ;Switch to the first extruder
G92 E0 ;zero the extruded length
G1 F200 E15 ;extrude 10mm of feed stock
G92 E0 ;zero the extruded length again