Duet 3 Sensorless Homing Issues



  • I'm having some sensorless homing issues on a new machine using the Duet 3. I have played some with the sensitivity setting in the M915 command (tried -60 to 60). It actually never seems to report a stall. It does stall physically and starts to skipping. I'm unsure what else to try. Below is my config.

    ; Configuration file for Duet 3 (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Mon Apr 27 2020 11:15:29 GMT-0500 (Central Daylight Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"Printer" ; set printer name

    ; Network
    M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ; Drives
    M569 P0.0 S0 ; physical drive goes backwards - (X)
    M569 P0.1 S0 ; physical drive goes backwards - (Y-Right)
    M569 P0.2 S1 ; physical drive goes forwards - (Y-Left)
    M569 P0.4 S1 ; physical drive goes forwards - (Z-Left)
    M569 P0.3 S1 ; physical drive goes forwards - (Z-Right)
    M569 P0.5 S1 ; physical drive goes forwards - (Extruder)
    M569 P1.0 S1 ; physical drive goes forwards - (Left PNP)
    M569 P1.1 S1 ; physical drive goes forwards - (Right PNP)
    M584 X0.0 Y0.1:0.2 Z0.4 U0.3 ; set drive mapping
    M350 X16 Y16 Z16 U16 I1 ; configure microstepping with interpolation
    M92 X53.33 Y53.33 Z100.00 U100.00 ; set steps per mm
    M566 X600.00 Y600.00 Z900.00 U900.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X90000.00 Y90000.00 Z10000.00 U10000.00 ; set maximum speeds (mm/min)
    M201 X2000.00 Y2000.00 Z1000.00 U1000.00 ; set accelerations (mm/s^2)
    M906 X1500 Y1500 Z1000 U1000 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 U0 S1 ; set axis minima
    M208 X885 Y385 Z60 U60 S0 ; set axis maxima

    ; Endstops
    M574 X1 S3 ; configure sensorless endstop for low end on X
    M574 Y2 S4 ; configure sensorless endstop for high end on Y
    M574 Z1 S3 ; configure sensorless endstop for low end on Z
    M574 U1 S3 ; configure sensorless endstop for low end on U

    ; Stall Detection
    M915 X S0 F0 R0 ; X axis stall detection
    M915 Y S0 F0 R0 ; Y axis stall detection
    M915 Z S0 F0 R0 ; Z axis stall detection
    M915 U S0 F0 R0 ; U axis stall detection

    ; Z-Probe
    M950 S0 C"io4.out" ; create servo pin 0 for BLTouch
    M558 P9 C"io4.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
    M557 X15:215 Y15:195 S20 ; define mesh grid

    ; Heaters
    M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0
    M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
    M143 H0 S120 ; set temperature limit for heater 0 to 120C
    M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
    M140 H0 ; map heated bed to heater 0
    M308 S1 P"1.temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin 1.temp0
    M950 H1 C"1.out0" T1 ; create nozzle heater output on 1.out0 and map it to sensor 1
    M143 H1 S280 ; set temperature limit for heater 1 to 280C
    M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit

    ; Fans
    M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency
    M106 P0 C"Part_Fan" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off
    M950 F1 C"out8" Q500 ; create fan 1 on pin out8 and set its frequency
    M106 P1 C"Hotend" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on

    ; Tools
    M563 P0 S"3D_Head" D0 H1 F0 ; define tool 0
    G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
    G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C


  • Moderator

    Pay attention to the H parameter and the speed needed to detect the stall.

    https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing



  • I think that was part of my issue. I found in another post that it only detects from a gcode file as well. I had just been sending G1 H1 commands from the console to test. I'm guessing that was my main issue. Thanks for the help!


  • administrators

    @gspeterso said in Duet 3 Sensorless Homing Issues:

    I had just been sending G1 H1 commands from the console to test. I'm guessing that was my main issue.

    It should work with G1 H1 commands from the console, as long as stall detection has been set up and the move is fast enough, and you have reduced the motor current if necessary (as you would normally do in the homing files when using stall detect homing).

    BTW I added this section to the wiki page on stall detection recently https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing#Section_Minimum_recommended_speed_for_stall_detection.


Log in to reply