• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Stall detection tweeking from 2.05 to 3.3.0 RC3

Scheduled Pinned Locked Moved
Tuning and tweaking
3
18
835
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    AS-3D Druck @jay_s_uk
    last edited by 15 Jun 2021, 15:51

    @jay_s_uk no Idea?

    Best regards
    AS-3D Druck / Andre

    1 Reply Last reply Reply Quote 0
    • undefined
      jay_s_uk @AS-3D Druck
      last edited by 15 Jun 2021, 15:57

      @as-3d-druck said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

      G1 S3 X-500 F4000 ; move the X to max until it detects the min Point

      well you're telling it to home one way

      G1 S3 X500 F4000 ; move the Y to min until it detects the min Point

      but then you're going top opposite way

      G1 S1 X150

      and then that same way again which seems to be confusing things

      Also, S3 (which as pointed out should be H3) does this
      H3 terminate the move when the endstop switch is triggered and set the axis limit to the current position, overriding the value that was set by M208.
      I think that also would fail as theres currently no position to set as the axis limit as the axis isn't homed.

      So I suggest you check which direction you should be homing in and change to H1

      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

      1 Reply Last reply Reply Quote 0
      • undefined
        Phaedrux Moderator
        last edited by 15 Jun 2021, 19:38

        S3 is for motor stall, but that only belongs in the M574 command. Homing moves when using stall detection are still H1.

        Can you post your config.g as well?

        Z-Bot CoreXY Build | Thingiverse Profile

        undefined 1 Reply Last reply 16 Jun 2021, 15:48 Reply Quote 0
        • undefined
          AS-3D Druck @Phaedrux
          last edited by AS-3D Druck 16 Jun 2021, 15:48

          @phaedrux said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

          M574

          yea shure

          config.g

          ; Configuration file for Duet WiFi (firmware version 3)
          ; executed by the firmware on start-up
          ;
          ; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Jun 14 2021 19:09:40 GMT+0200 (Mitteleuropäische Sommerzeit)
          ; General preferences
          G90 ; send absolute coordinates...
          M83 ; ...but relative extruder moves
          M550 P"D-Bot" ; set printer name
          M669 K1 ; select CoreXY mode
          M671 X-21.4:356.4 Y165:165 S5 P1.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
          ; Network
          ;M551 P"Duet" ; set password
          M552 S1 ; enable network
          M586 P0 S1 ; enable HTTP
          M586 P1 S0 ; disable FTP
          M586 P2 S0 ; disable Telnet
          ; Drives
          M569 P0 S1 ; physical drive 0 goes forwards
          M569 P1 S1 ; physical drive 1 goes forwards
          M569 P2 S1 ; physical drive 2 goes forwards
          M569 P3 S1 ; physical drive 3 goes forwards
          M584 X0 Y1 Z2 E3 ; set drive mapping
          M350 X256 Y256 Z256 I0 ; configure microstepping without interpolation
          M350 E16 I1 ; configure microstepping with interpolation
          M92 X78.43 Y78.43 Z398.00 E492.45 ; set steps per mm
          M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
          M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
          M201 X500.00 Y20.00 Z250.00 E250.00 ; set accelerations (mm/s^2)
          M906 X1200 Y1200 Z1200 E1200 I30 ; set motor currents (mA) and motor idle factor in per cent
          M84 S30 ; Set idle timeout
          ; Axis Limits
          M208 X0 Y0 Z0 S1 ; set axis minima
          M208 X335 Y191 Z350 S0 ; set axis maxima
          ; Stall Detection
          M915 X Y S10 F0 R0
          ; Endstops
          M574 Z1 S0 ; Define active low and unused microswitches
          M574 X3 Y3 S3 ; Define Endstops for Stall Detection
          ;Filament Run Out Sensor
          M591 D0 P2 C3 E6.0 ; Tool 0 Extruder 0
          ; Heaters
          M308 S0 P"bedtemp" Y"thermistor" T100000 B4700 ; configure sensor 0 as thermistor on pin bedtemp
          M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
          M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
          M140 H0 ; map heated bed to heater 0
          M143 H0 S120 ; set temperature limit for heater 0 to 120C
          M308 S1 P"e0temp" Y"thermistor" T100000 B4680 ; configure sensor 1 as thermistor on pin e0temp
          M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
          M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
          M143 H1 S280 ; set temperature limit for heater 1 to 280C
          ; Z-Probe
          M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
          M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
          G31 P600 X-30 Y0 Z1.6 ; (P25 before) ; set Z probe trigger value, offset and trigger height
          M557 X30:304 Y20:191 S40 ; define mesh grid
          ; Nozzle + Filament
          M404 N2.85 D0.400
          ; Fans
          M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
          M106 P0 C"PartCooling" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off
          M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
          M106 P1 C"Heatsink" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on
          M950 F2 C"fan1" Q500 ; create fan 2 on pin fan1 and set its frequency
          M106 P2 C"AlwaysOn" S1 H-1 ; set fan 2 name and value. Thermostatic control is turned on
          ; Tools
          M563 P0 S"e3D V6" 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
          ; Custom settings are not defined
          ; Miscellaneous
          T0 ; select first tool
          M80 ; Turn On Power Supply

          change S3 to H1 on the homex

          ; This File is just for testing the "stall detection" Feature.
          ; It might need to be adjusted to get it to work with you're Printer/s
          ; Sensorless Homing test file for RepRapFirmware on D-Bot
          ; M915 X S3 F0 R1
          ; More about M915 and how to set it up you can find here:
          ; https://duet3d.com/wiki/G-code#M915:_Configure_motor_stall_detection
          ; Lift Z relative to current position
          G91
          G1 Z10 F6000 H1
          G90
          ; Setup Stall Detection on CoreXY for Xmin Xmax
          M400 ; make sure everything has stopped before we make changes
          ; M574 X3 Y3 S3 ; set endstops to use motor stall
          M913 X30 Y30 ; reduce motor current to 50% to prevent belts slipping
          G91 ; use relative positioning
          G1 H1 X-500 F4000 ; move the X to max until it detects the min Point
          G92 X0 ; set X min Point
          ;G1 S2 X30 ; move X away from min Point
          M400 ; wait untill X is done
          G1 H1 X500 F4000 ; move the Y to min until it detects the min Point
          ;G1 S2 X-30 ; move X away from max Point
          M208 ; shows the way that has been traveled
          G90 ; back to absolute positioning
          M400 ; make sure everything has stopped before we reset the motor currents
          M913 X100 Y100 Z100 ; motor currents back to normal
          ; M574 X1 Y2 Z1 S0 ; set endstops back to normal (is maybe different than you're normal)
          G1 H1 X150
          ; Lift Z relative to current position
          G91
          G1 Z-10 F6000 H1
          G90

          btw. those {1} are not actualy in the code might be a Bug with this Forum.

          Output in Console:
          G28 X
          Error: Homing failed
          It dosen't want to move Z even.

          Best regards
          AS-3D Druck / Andre

          undefined 2 Replies Last reply 16 Jun 2021, 17:30 Reply Quote 0
          • undefined
            Phaedrux Moderator @AS-3D Druck
            last edited by 16 Jun 2021, 17:30

            @as-3d-druck said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

            M574 X3 Y3 S3

            X3 Y3 is not valid. It must be either 1 or 2. 1 is low end of travel, 2 is high end of travel. S3 is correct though for stall detection.

            https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M574_RepRapFirmware_Num_3

            Z-Bot CoreXY Build | Thingiverse Profile

            undefined 1 Reply Last reply 16 Jun 2021, 17:53 Reply Quote 0
            • undefined
              Phaedrux Moderator @AS-3D Druck
              last edited by 16 Jun 2021, 17:31

              @as-3d-druck said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

              ; Lift Z relative to current position G91 G1 Z-10 F6000 H1 G90

              The Z moves are the only place where H2 is correct. H1 means seek the endstop. H2 means move the motor regardless if it's homed or not.

              Z-Bot CoreXY Build | Thingiverse Profile

              undefined 1 Reply Last reply 16 Jun 2021, 17:56 Reply Quote 0
              • undefined
                AS-3D Druck @Phaedrux
                last edited by 16 Jun 2021, 17:53

                @phaedrux said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

                X3 Y3 is not valid. It must be either 1 or 2. 1 is low end of travel, 2 is high end of travel. S3 is correct though for stall detection.
                https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M574_RepRapFirmware_Num_3

                fixed that

                ; Endstops
                M574 Z1 S0 ; Define active low and unused microswitches
                M574 X1 S3 ; Define Endstops for Stall Detection //Before X3 Y3
                M574 Y1 S3 ; Define Endstops for Stall Detection //Before X3 Y3

                Best regards
                AS-3D Druck / Andre

                1 Reply Last reply Reply Quote 0
                • undefined
                  AS-3D Druck @Phaedrux
                  last edited by 16 Jun 2021, 17:56

                  @phaedrux said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

                  The Z moves are the only place where H2 is correct. H1 means seek the endstop. H2 means move the motor regardless if it's homed or not.

                  I tryed this for now with no moving Axis.

                  M400
                  M913 X50 Y50 ; drop motor current to 50%
                  M400 G91; relative positioning
                  G1 H2 Z10 F12000 ; lift Z relative to current position
                  G1 H1 X-400 F6000 ; move quickly to X axis endstop and stop there (first pass)
                  G1 H2 X5 F12000 ; go back a few mm
                  G1 H1 X-320.5 F4000 ; move slowly to X axis endstop once more (second pass)
                  G1 H2 Z-10 F6000 ; lower Z again
                  G90 ; absolute positioning
                  M400
                  G1 X150 ; moves X to the Middle
                  M913 X100 Y100 ; return current to 100%
                  M400

                  Best regards
                  AS-3D Druck / Andre

                  undefined 2 Replies Last reply 16 Jun 2021, 18:11 Reply Quote 0
                  • undefined
                    Phaedrux Moderator @AS-3D Druck
                    last edited by 16 Jun 2021, 18:11

                    @as-3d-druck said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

                    G1 H2 X5 F12000 ; go back a few mm

                    Should probably remove the H2 from that one.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      Phaedrux Moderator @AS-3D Druck
                      last edited by 16 Jun 2021, 18:12

                      @as-3d-druck said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

                      I tryed this for now with no moving Axis.

                      Meaning nothing moved?

                      Z-Bot CoreXY Build | Thingiverse Profile

                      undefined 1 Reply Last reply 16 Jun 2021, 18:54 Reply Quote 0
                      • undefined
                        AS-3D Druck @Phaedrux
                        last edited by AS-3D Druck 16 Jun 2021, 18:54

                        Okay i got it now kind off.
                        My Problem was i got in my config before (2.05) steps M92 and after that M350 for interpolation on those steps etc. but in this config as you can see before i got it the other way around.
                        So i changed that and now i got movment back.

                        The only thing that i try to fix is now why it runs to the set direction is on the End and still tackles it a few times and than sets back to the middle as intended.

                        I currently try to change the sensitivity but still not great.
                        M915 X Y S6 F0 R1

                        //EDITE:
                        Got it now on 4 and it seems to work

                        Best regards
                        AS-3D Druck / Andre

                        undefined 1 Reply Last reply 16 Jun 2021, 20:09 Reply Quote 0
                        • undefined
                          Phaedrux Moderator @AS-3D Druck
                          last edited by 16 Jun 2021, 20:09

                          @as-3d-druck said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

                          The only thing that i try to fix is now why it runs to the set direction is on the End and still tackles it a few times and than sets back to the middle as intended.

                          I'm not sure what that means.

                          But sounds like you got it working now?

                          Z-Bot CoreXY Build | Thingiverse Profile

                          undefined 1 Reply Last reply 16 Jun 2021, 21:22 Reply Quote 0
                          • undefined
                            AS-3D Druck @Phaedrux
                            last edited by 16 Jun 2021, 21:22

                            @phaedrux said in Stall detection tweeking from 2.05 to 3.3.0 RC3:

                            But sounds like you got it working now?

                            Yes, i can provide my new Home X and Y File + Config if someone wants to look at it. (Troubleshooting etc.)

                            homex.g

                            M913 X50 Y50 ; drop motor current to 50%
                            M400
                            G91 ; relative positioning
                            G1 H2 Z10 F12000 ; lift Z relative to current position
                            G1 H1 X-500 F5000 ; move quickly to X axis endstop and stop there (first pass)
                            ;G1 H2 X20 F12000 ; go back a few mm
                            ;G1 H1 X-500 F5000 ; move slowly to X axis endstop once more (second pass)
                            G1 H2 Z-10 F6000 ; lower Z again
                            G90 ; absolute positioning
                            M400
                            G1 X150 ; moves X to the Middle
                            M913 X100 Y100 ; return current to 100%

                            homey.g

                            M913 X50 Y50 ; drop motor current to 50%
                            M400
                            G91 ; relative positioning
                            G1 H2 Z10 F12000 ; lift Z relative to current position
                            G1 H1 Y-500 F5000 ; move quickly to X axis endstop and stop there (first pass)
                            ;G1 H2 Y20 F12000 ; go back a few mm
                            ;G1 H1 Y-500 F5000 ; move slowly to X axis endstop once more (second pass)
                            G1 H2 Z-10 F6000 ; lower Z again
                            G90 ; absolute positioning
                            M400
                            G1 X150 Y120 ; moves X to the Middle
                            M913 X100 Y100 ; return current to 100%

                            config.g

                            ; Configuration file for Duet WiFi (firmware version 3)
                            ; executed by the firmware on start-up
                            ;
                            ; generated by RepRapFirmware Configuration Tool v3.2.3 on Mon Jun 14 2021 19:09:40 GMT+0200 (Mitteleuropäische Sommerzeit)
                            ; General preferences
                            G90 ; send absolute coordinates...
                            M83 ; ...but relative extruder moves
                            M550 P"D-Bot" ; set printer name
                            M669 K1 ; select CoreXY mode
                            M671 X-21.4:356.4 Y165:165 S20 P1.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
                            ; Network
                            ;M551 P"Duet" ; set password
                            M552 S1 ; enable network
                            M586 P0 S1 ; enable HTTP
                            M586 P1 S0 ; disable FTP
                            M586 P2 S0 ; disable Telnet
                            ; Drives
                            M569 P0 S1 ; physical drive 0 goes forwards
                            M569 P1 S1 ; physical drive 1 goes forwards
                            M569 P2 S1 ; physical drive 2 goes forwards
                            M569 P3 S1 ; physical drive 3 goes forwards
                            M569 P4 S1 ; physical drive 4 goes forwards
                            M584 X0 Y1 Z2:4 E3 ; set drive mapping (2 Z Motors = 2 & 4)
                            M92 X79.40 Y79.40 Z397.20 E492.45 ; set steps per mm //X&&Y 78.43
                            M350 X128 Y128 Z128 I0 ; configure microstepping without interpolation
                            M350 E64 I1 ; configure microstepping with interpolation
                            M566 X900 Y900 Z12 E120 ; set maximum instantaneous speed changes (mm/min)
                            M203 X6000 Y6000 Z500 E1500 ; set maximum speeds (mm/min)
                            M201 X3500 Y3500 Z300 E2500 ; set accelerations (mm/s^2)
                            M906 X1200 Y1200 Z1200 E1200 I30 ; set motor currents (mA) and motor idle factor in per cent
                            M84 S30 ; Set idle timeout
                            ; Axis Limits
                            M208 X0 Y0 Z0 S1 ; set axis minima
                            M208 X335 Y191 Z350 S0 ; set axis maxima
                            ; Stall Detection
                            M915 X Y S12 F0 R1 ; S=Sensitivity (higher=less sensetive)//started at 10//; F=Filtering; R=Action
                            ; Endstops
                            ;M574 Z1 S0 ; Define active low and unused microswitches
                            M574 X1 S3 ; Define Endstops for Stall Detection //Before X3 Y3
                            M574 Y1 S3 ; Define Endstops for Stall Detection //Before X3 Y3
                            ;Filament Run Out Sensor
                            M591 D0 P2 C3 E6.0 ; Tool 0 Extruder 0
                            ; Heaters
                            M308 S0 P"bedtemp" Y"thermistor" T100000 B4700 ; configure sensor 0 as thermistor on pin bedtemp
                            M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
                            M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
                            M140 H0 ; map heated bed to heater 0
                            M143 H0 S120 ; set temperature limit for heater 0 to 120C
                            M308 S1 P"e0temp" Y"thermistor" T100000 B4680 ; configure sensor 1 as thermistor on pin e0temp
                            M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
                            M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                            M143 H1 S280 ; set temperature limit for heater 1 to 280C
                            ; Z-Probe
                            M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
                            M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
                            G31 P600 X-30 Y0 Z1.6 ; (P25 before) ; set Z probe trigger value, offset and trigger height
                            M557 X30:304 Y20:191 S40 ; define mesh grid
                            ; Nozzle + Filament
                            M404 N2.85 D0.400
                            ; Fans
                            M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
                            M106 P0 C"PartCooling" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off
                            M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
                            M106 P1 C"Heatsink" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on
                            M950 F2 C"fan1" Q500 ; create fan 2 on pin fan1 and set its frequency
                            M106 P2 C"AlwaysOn" S1 H-1 ; set fan 2 name and value. Thermostatic control is turned on
                            ; Tools
                            M563 P0 S"e3D V6" 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
                            ; Custom settings are not defined
                            ; Miscellaneous
                            T0 ; select first tool
                            M80 ; Turn On Power Supply

                            I just reduced the current by 50% and commented out the 2. attempt to home X or Y and tryed differen Sensitivitys and here we go.

                            Best regards
                            AS-3D Druck / Andre

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              Phaedrux Moderator
                              last edited by 16 Jun 2021, 21:24

                              Those look good. Thanks for sharing them.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              1 Reply Last reply Reply Quote 1
                              14 out of 18
                              • First post
                                14/18
                                Last post
                              Unless otherwise noted, all forum content is licensed under CC-BY-SA