Activating 'Z-Lift' causes double de-retraction

I'm using a mixing hotend and Firmware retraction.
Everything works fine until I activate Z-Lift.
After sending G10 extruder retracts,
then Z-lifts,
then immediately de-retracts (why?)
then makes travel move
then de-reretracts on G11 (deretract as it should be)

What might be the cause for this? I can live without Z-lift, but sometimes it's nice to have.

Comments

  • edited June 2021
    I found the error in my postprocessing script which attached a 'T0' command after every color definition.
    T0 causes a de-retraction even before G10 causes a retract. 
    M83
    G91
    M302
    M400
    M163 S0 P1000
    M163 S1 P0
    M163 S2 P0
    M163 S3 P0
    M163 S4 P0
    M164 S0
    ;T0
    G10 
    G1 F100
    G1 X0.0005771796926883453 Y0.000654
    G11 
    G1 Z0.3


    Sending Tn command will automatically de-retract?
    Not sure why or where to correct this value in of de-retraction in config?
  • Hard to say what exactly is going on especially since I do not own a mxing extruder. Tx is handled in Extruder.cpp in command void Extruder::selectExtruderById(uint8_t extruderId)

    Are you staying at T0 all the time? If not your select and deselect scripts get run.
    Also every Tx calls

    #if MIXING_EXTRUDER
    void Extruder::recomputeMixingExtruderSteps() {
    int32_t sum_w = 0;
    float sum = 0;
    for (fast8_t i = 0; i < NUM_EXTRUDER; i++) {
    sum_w += extruder[i].mixingW;
    sum += extruder[i].stepsPerMM * extruder[i].mixingW;
    }
    sum /= sum_w;
    Printer::currentPositionSteps[E_AXIS] = Printer::currentPositionSteps[E_AXIS] * sum / Printer::axisStepsPerMM[E_AXIS]; // reposition according resolution change
    Printer::destinationSteps[E_AXIS] = Printer::currentPositionSteps[E_AXIS];
    Printer::axisStepsPerMM[E_AXIS] = sum;
    Printer::invAxisStepsPerMM[E_AXIS] = 1.0f / Printer::axisStepsPerMM[E_AXIS];
    }
    #endif

    But that is not retracting.

    Do I understand it correctly that
    T0
    T0
    T0
    will deretract 3 times?
    I see no call to retract function in T0 command so it might not come from this.
    Do you have 
    #define AUTORETRACT_ENABLED 0

    When you say with z lift do you mean
    #define RETRACTION_Z_LIFT 1
    or do you have it enabled on slicer?


  • Yes RETRACTION_Z_LIFT 5 and AUTORETRACT_ENABLED 0 deactivated.
    I only used T0 and just change the M163 ratios for different colors.

    Sending only T0 doesn't do anything even wqith M302 activated
    This is the minium of commands to reproduce the error
    M302
    T0
    G10 
    G11 


    This causes the extruder to retract, de-retract and de-retract again. 
    Don't know why even on the second command (which should be G10) it de-retracts? That should be a guranteed retract?

    Doesn't matter, leaving out T0 solves it. Still strange.


Sign In or Register to comment.