Issues using stall detection when loading filament



  • My loading macro is not detecting the stall at all. I am configuring the axis endstop wrongly I guess but I could not make it work.

    At config.g:

    ; Endstops
    M574 X1 Y1 S3 ; Set active high endstops and use sensorless homing
    M915 P0:1:3 S3 R0 ; set sensitivity to +3 unfiltered

    My load macro (ABS example)

    M291 P"Please wait while the nozzle is being heated up" R"Loading ABS" S0 T0 ; Display message
    G10 S240 ; Set current tool temperature to 220C
    M116 ; Wait for the temperatures to be reached
    M98 P/macros/SubMacros/beep.g ; Warning Beep that your filament is starting to retract!
    M291 P"Please insert filament and confirm..." R"Insert ABS" S3 T0 ; Display new message
    M291 P"Feeding filament..." R"Loading ABS" S0 T0 ; Display new message
    M98 P/macros/SubMacros/Filaments/loadBase.g

    The loadBase macro:

    M913 E30 ; set extruders 0 and 1 to 25% of their normal current
    M83 ; Select relative extruder motion
    G1 E-1 F1800 ; Retract 1mm of filament at 1800mm/min to ensure that it is not flagged as stalled.
    G1 E10 F600 ; Feed 10mm of filament at 600mm/min
    G1 S1 E680 F2000 ; Feed 680mm of filament at 3000mm/min until detects stall
    M913 E100 ; set extruders 0 and 1 to 100% of their normal current
    G1 E30 F300 ; Feed 30mm of filament at 300mm/min
    G4 P1000 ; Wait one second
    G1 E-4 F1800 ; Retract 4mm of filament at 1800mm/min
    M400 ; Wait for moves to complete
    M292 ; Hide the message
    G10 S0 ; Turn off the heater again

    Thanks!


  • administrators

    I will re-test extruder stall detection.



  • @dc42 Please, could I use the laser filament monitor to detect it instead?

    Then I could also use to detect finish of unloading!

    Thanks!


  • administrators

    I've just re-tested using stall detection for filament loading. The following works for me, using a Titan extruder with a 1.8deg 34mm long Nema 17 motor:

    M913 E50 ; reduce current to get a gentle stall
    M302 P1 ; allow cold extrusion
    M915 P3 H400 ; increase minimum speed for stall detection, to avoid stall detection during acceleration
    G1 S1 E500 F1500 ; feed the filament in, stop pon motor stall
    M302 P0 ; don't allow cold extrusion any more
    M913 E100 ; restore current to normal

    Loading filament using the filament monitor isn't supported yet, but I will add it to the wish list.



  • @dc42 I'll try it asap. Thank you very much.

    How about the configuration "M574 X1 Y1 S3 " using X, Y, and S3 is a correct way or should I call all driver channels with the S parameter like S0:1:3?


  • administrators

    @brunofporto said in Issues using stall detection when loading filament:

    @dc42 I'll try it asap. Thank you very much.

    How about the configuration "M574 X1 Y1 S3 " using X, Y, and S3 is a correct way or should I call all driver channels with the S parameter like S0:1:3?

    That command (M574 X1 Y1 S3) is correct, assuming that you want to set both X and Y to stall detection endstops. If you want different types of endstop on different axes, use multiple M574 commands.



  • @dc42 I mean, is that M574 correct to use the extruder with the stall detection for loading?

    I find the instructions for the E parameter kind of confusing for me. I do not know if it is talking about the use of the extruder's end stop inputs (E0 E1) or the that there is an end stop at the E axis.


  • administrators

    M574 does not take an E parameter. The only type of "endstop" that is supported for stopping G1 S1 E moves early is stall detection. So you just need to configure the stall detection parameters using M915.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.