Homing with switch and stall detection for layer shift

  • Hi,
    is it possible to use mechanical switch and Zprobe for homing sequence from the DWC (with button Home All, Home X, Home Y, Home Z), homing at the start of a print with G28 in the start of gcode file and use the stall detection only for detect a layer shift so in rehome.g i can put a G28 XY (that use the mechanical switch) and then resume the print.

  • administrators


  • Ok, awesome!!!
    So, i have only to add this in config.g [c]M915 X Y S10 F0 R3[/c] without to change the [c]M574 X1 Y2 Z2 S0[/c]
    or i have to add the M915 in config.g and change the [c]M574 X1 Y2 Z2 S0[/c] in config.g into this

    M574 Z2 S0         ; set endstop Z for piezo probe
    M574 X1 Y2 S3      ; set endstop X1 is at MIN end - Y2 is at MAX end - stall detection 
    ```and in the homeall.g, homex.g, homey.g add at the beginning of the code a [c]M574 X1 Y2 Z2 S0[/c]?
    anyway i have to add a rehome.g in sys directory for homing the printer using the mechanical endstop:

    M98 Phomex.g ; home X. Running the home X sequence
    M98 Phomey.g ; home Y. Running the home Y sequence
    M24 ; Resume print

    thank you

  • administrators

    Leave your M574 command on config.g exactly as you would if you were not configuring stall detection. M915 does not affect the endstops unless you have configured stall detection endstops in M574.

    You do not need M24 in rehome.g, the print should be resumed automatically after running it.

  • So with only the M915 in config.g file i configure the stall for layer shift.
    i have to try to cause a little stall in middle print and see how it work
    thank you for your help!

  • is there a precision point where to place the M915? or it can be everywhere in config.g file?

  • administrators

    M915 needs to be after any M584 command(s) if you are using axis letters in the M915 command, but other than that it should not matter.

  • I have stall detection working - mostly, still trying to dial it in.

    Is it possible to both log and pause? ie, M915 Z S52 F1 R1 R2? I feel this would be quite handy as far as knowing what caused a fault. Logging more details than simply "Warning: Driver(s) 2 stalled at Z height 55.00" would be quite a thing too. The command as I have pasted it certainly doesn't work, but is there something silly I'm missing?

    That said, the fact that this works at all on a coreXY machine is amazing.

    Another question - I believe the extruder is P3 on my machine (driver 3). This being the case, is it feasible to use stall detection to notice extruder backpressure and pause a print? Or is this idea likely to cause me much gnashing of teeth but not much success? I'm happy to have a crack at it, but just thought I'd see if anyone else has attempted this.

Log in to reply