Ok, quite simpel assign second output to EXT1_HEATER_PIN. In HAL.cpp serach
#if defined(EXT1_HEATER_PIN) && EXT1_HEATER_PIN > -1 && NUM_EXTRUDER > 1 && !MIXING_EXTRUDER
if ((pwm_pos_set[1] = (pwm_pos[1] & HEATER_PWM_MASK)) > 0)
WRITE(EXT1_HEATER_PIN, !HEATER_PINS_INVERTED);
#endif
and replace with
#if defined(EXT1_HEATER_PIN) && EXT1_HEATER_PIN > -1 && NUM_EXTRUDER > 1
if ((pwm_pos_set[0] = (pwm_pos[0] & HEATER_PWM_MASK)) > 0)
WRITE(EXT1_HEATER_PIN, !HEATER_PINS_INVERTED);
#endif
and also replace
#if defined(EXT1_HEATER_PIN) && EXT1_HEATER_PIN > -1 && NUM_EXTRUDER > 1 && !MIXING_EXTRUDER
#if PDM_FOR_EXTRUDER
pulseDensityModulate(EXT1_HEATER_PIN, pwm_pos[1], pwm_pos_set[1],
HEATER_PINS_INVERTED);
#else
if (pwm_pos_set[1] == pwm_count_heater && pwm_pos_set[1] != HEATER_PWM_MASK)
WRITE(EXT1_HEATER_PIN, HEATER_PINS_INVERTED);
#endif
with
#if defined(EXT1_HEATER_PIN) && EXT1_HEATER_PIN > -1 && NUM_EXTRUDER > 1
#if PDM_FOR_EXTRUDER
pulseDensityModulate(EXT1_HEATER_PIN, pwm_pos[1], pwm_pos_set[1],
HEATER_PINS_INVERTED);
#else
if (pwm_pos_set[0] == pwm_count_heater && pwm_pos_set[0] != HEATER_PWM_MASK)
WRITE(EXT1_HEATER_PIN, HEATER_PINS_INVERTED);
#endif
That should already do it. Hope you noticed I removed for second extruder the mixing extruder test and changed pwm access from 1 to 0 to use same output signal.