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

    Homing problem after Duet2 WiFi Upgrade

    Scheduled Pinned Locked Moved
    General Discussion
    6
    17
    793
    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.
    • lhbruundefined
      lhbru
      last edited by

      I have installed a new Duet2 3D as an upgrade into a 3D printer that was built from a kit provided by our local makerspace. It’s a cartesian printer with 2 z-axis motors, and one each on x, y and e. All are NEMA 17 motors marked with the following information: 17HS5005-20B JUGTEK 174501.

      My initial testing shows that the lcd display works and the bed and extruder heat as expected. The cooling fans also work as expected. On initialization, the IR bed sensor provides the expected 4 led flashes, z-probe measurements are indicated on the web interface and the numbers change when I move a white piece of paper under the probe.

      Unfortunately, when I try to home the x- and y-axes the motors start with a terrible grinding/vibrating noise, and then the build plate moves smoothly toward home until it hits the endstop and resumes the grinding/vibrating noise until I kill the printer with the emergency stop button. If I let it run a bit longer, the printer stops and I receive the following error message: M112 M999 error homing failed.

      Prior to installing the Duet2 into this printer I was using an Einsy Rambo controller. Sensorless homing worked without problems and the printer otherwise worked well.

      I suspect the cause of my problems is that I’m not using the correct sensorless endstop settings but I’m not sure where to start resolving the problem. I’m wondering if anyone can help me resolve this problem?

      I’m running RepRapFirmware for Duet 2 WiFi/Ethernet 2.05.1 (2020-02-09b1).

      Thanks in advance for your suggestions.

      My config files are as follows:

      config.g:

      ; Configuration file for Duet WiFi (firmware version 2.03)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 09 2020 13:36:42 GMT-0400 (Eastern Daylight Time)
      
      ; General preferences
      G90                                      ; send absolute coordinates...
      M83                                      ; ...but relative extruder moves
      M550 P"Nova300"                          ; set printer name
      
      ; Network
      M552 S1                                  ; enable network
      M586 P0 S1                               ; enable HTTP
      M586 P1 S0                               ; disable FTP
      M586 P2 S0                               ; disable Telnet
      
      ; Drives
      M569 P0 S0                               ; physical drive 0 goes backwards
      M569 P1 S1                               ; physical drive 1 goes forwards
      M569 P2 S0                               ; physical drive 2 goes backwards
      M569 P3 S1                               ; physical drive 3 goes forwards
      M584 X0 Y1 Z2 E3                         ; set drive mapping
      M350 X16 Y16 Z16 E16 I1                  ; configure microstepping with interpolation
      M92 X80.00 Y80.00 Z1600.00 E146.50       ; 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 Y500.00 Z20.00 E250.00      ; set accelerations (mm/s^2)
      M906 X1100 Y1100 Z1300 E1100 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 X300 Y300 Z350 S0                   ; set axis maxima
      
      ; Endstops
      M574 X1 Y1 S3                            ; set endstops controlled by motor stall detection
      M574 Z1 S2                               ; set endstops controlled by probe
      
      ; Z-Probe
      M558 P1 H10 F120 T6000                   ; set Z probe type to unmodulated and the dive height + speeds
      G31 P500 X0 Y-15 Z2.5                    ; set Z probe trigger value, offset and trigger height
      M557 X25:275 Y25:275 S83                 ; define mesh grid
      
      ; Heaters
      M305 P0 T100000 B3950 R4700              ; set thermistor + ADC parameters for heater 0
      M143 H0 S120                             ; set temperature limit for heater 0 to 120C
      M305 P1 T100000 B4725 C7.060000e-8 R4700 ; set thermistor + ADC parameters for heater 1
      M143 H1 S280                             ; set temperature limit for heater 1 to 280C
      
      ; Fans
      M106 P0 S0 I0 F500 H-1                   ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
      M106 P1 S1 I0 F500 H1 T45                ; set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
      
      ; Tools
      M563 P0 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
      
      

      homeall.g:

      ; homeall.g
      ; called to home all axes
      ;
      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 09 2020 13:36:42 GMT-0400 (Eastern Daylight Time)
      G91                     ; relative positioning
      G1 H2 Z10 F6000         ; lift Z relative to current position
      G1 H1 X-305 Y-305 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
      G1 H2 X5 Y5 F6000       ; go back a few mm
      G1 H1 X-305 Y-305 F360  ; move slowly to X and Y axis endstops once more (second pass)
      G90                     ; absolute positioning
      G1 X25 Y40 F6000        ; go to first bed probe point and home Z
      G30                     ; home Z by probing the bed
      
      ; Uncomment the following lines to lift Z after probing
      ;G91                    ; relative positioning
      ;G1 Z10 F100            ; lift Z relative to current position
      ;G90                    ; absolute positioning
      

      homex.g:

      ; homex.g
      ; called to home the X axis
      ;
      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 09 2020 13:36:42 GMT-0400 (Eastern Daylight Time)
      G91               ; relative positioning
      G1 H2 Z10 F6000   ; lift Z relative to current position
      G1 H1 X-305 F1800 ; move quickly to X axis endstop and stop there (first pass)
      G1 H2 X5 F6000    ; go back a few mm
      G1 H1 X-305 F360  ; move slowly to X axis endstop once more (second pass)
      G1 H2 Z-10 F6000  ; lower Z again
      G90               ; absolute positioning
      

      homy.g

      ; homey.g
      ; called to home the Y axis
      ;
      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 09 2020 13:36:42 GMT-0400 (Eastern Daylight Time)
      G91               ; relative positioning
      G1 H2 Z10 F6000   ; lift Z relative to current position
      G1 H1 Y-305 F1800 ; move quickly to Y axis endstop and stop there (first pass)
      G1 H2 Y5 F6000    ; go back a few mm
      G1 H1 Y-305 F360  ; move slowly to Y axis endstop once more (second pass)
      G1 H2 Z-10 F6000  ; lower Z again
      G90               ; absolute positioning
      

      homez.g

      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 09 2020 13:36:42 GMT-0400 (Eastern Daylight Time)
      G91              ; relative positioning
      G1 H2 Z10 F6000  ; lift Z relative to current position
      G90              ; absolute positioning
      G1 X25 Y40 F6000 ; go to first probe point
      G30              ; home Z by probing the bed
      
      ; Uncomment the following lines to lift Z after probing
      ;G91             ; relative positioning
      ;G1 Z10 F100     ; lift Z relative to current position
      ;G90             ; absolute positioning
      
      droftartsundefined 1 Reply Last reply Reply Quote 0
      • JamesMundefined
        JamesM
        last edited by

        I don't know anything about using stall detection instead of endstops but in your config.g the endstop section says it is to use stall detection but no M915 line is in your config to set it.

        https://duet3d.dozuki.com/Wiki/Gcode#Section_M915_Configure_motor_stall_detection

        Hopefully someone else will chime in on the ir sensor since I have only used a bltouch.

        1 Reply Last reply Reply Quote 0
        • droftartsundefined
          droftarts administrators @lhbru
          last edited by

          @lhbru Do you get a grinding noise when you move the axis normally? eg send:

          G91
          G1 H1 X-10 Y-10 F1800
          G90
          

          Ian

          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

          1 Reply Last reply Reply Quote 0
          • lhbruundefined
            lhbru
            last edited by

            @droftarts - there is no grinding with normal axis movements using the G-codes you provided. Movement is smooth and quiet.

            droftartsundefined 1 Reply Last reply Reply Quote 0
            • droftartsundefined
              droftarts administrators @lhbru
              last edited by

              @lhbru Hmm... Is the grinding in the Z axis, trying to move too fast? Try:

              G91                     ; relative positioning
              G1 H2 Z10 F6000         ; lift Z relative to current position
              G90 
              

              The grinding at the end will be that you need to tune sensorless homing for your machine. See https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing

              Ian

              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

              1 Reply Last reply Reply Quote 0
              • lhbruundefined
                lhbru
                last edited by

                @droftarts: the z-axis grinds and does not move with the command G1 H2 Z10 F6000. I am also seeing the following error message: Warning: motor phase A may be disconnected reported by driver(s) 2.

                1 Reply Last reply Reply Quote 0
                • lhbruundefined
                  lhbru
                  last edited by

                  @droftarts : I've just rechecked what happens when I send the command G1 H1 Y-10 X-10 F1800. There's no grinding and no error messages are shown. The problem appears to be with the z-axis, not x or y as I originally thought...

                  1 Reply Last reply Reply Quote 0
                  • elmoretundefined
                    elmoret
                    last edited by

                    If normal moves are grinding, that generally indicates miswired stepper motors. If you move an X-axis motor to your Z-axis stepper driver and do a Z move, what. happens?

                    droftartsundefined 1 Reply Last reply Reply Quote 0
                    • droftartsundefined
                      droftarts administrators @elmoret
                      last edited by

                      @elmoret @lhbru Or just moving too fast for the motors to cope with; you have 1600 steps per mm. Try

                      G91                     ; relative positioning
                      G1 H2 Z10 F60         ; lift Z relative to current position
                      G90 
                      

                      F60 is 1mm/s

                      Ian

                      Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                      1 Reply Last reply Reply Quote 0
                      • lhbruundefined
                        lhbru
                        last edited by

                        @droftarts: slowing speed to F60 does not resolve the problem. I will recheck the wiring on the stepper motors. I've done a visual inspection to ensure that the wire are inserted into the correct pin locations. They all look correct. I'll double check each connector to make sure I don't have a bad crimp - I needed to re-wire/re-crimp all the connectors to make the transition and I may have missed one. I'll also try the suggestion of @elmoret after I check the integrity of the connectors.

                        1 Reply Last reply Reply Quote 0
                        • Phaedruxundefined
                          Phaedrux Moderator
                          last edited by

                          Also verify that your motor phases are correctly wired

                          https://duet3d.dozuki.com/Wiki/Choosing_and_connecting_stepper_motors#Section_Identifying_the_stepper_motor_phases

                          Each of your Z motors are going to one of the Z motor ports, correct?

                          Z-Bot CoreXY Build | Thingiverse Profile

                          1 Reply Last reply Reply Quote 0
                          • lhbruundefined
                            lhbru
                            last edited by

                            Thank you all! One problem seems to be solved: I double checked to ensure the motor phases are correctly wired as recommended by @Phaedrux. That aspect of the wiring is OK. I then found one bad crimp on a wire inserted into one of the new z-axis connectors. I repaired it and verified that all the other connectors are sound. The z-axis now moves smoothly and quietly following issuance of the commands provided by @droftarts.

                            My remaining problem is that x- and y-axis homing is not yet working properly. When the build platform reaches either the x or y end stop after a home x or y command is issued, it hits the end and does not stop running until I hit the emergency stop. The error message, homing failed, is shown. I'm going to run through the motor stall detection configuration procedures in the link recommended by @JamesM above. Please LMK if you have other suggestions on what I might need to do to solve this one.

                            Thanks again everyone. I'm very grateful for the kind help you've provided.

                            droftartsundefined 1 Reply Last reply Reply Quote 0
                            • droftartsundefined
                              droftarts administrators @lhbru
                              last edited by

                              @lhbru The link that @JamesM provided is just the gcode dictionary link, and should be used in conjunction with this guide: https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing

                              Ian

                              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                              1 Reply Last reply Reply Quote 0
                              • lhbruundefined
                                lhbru
                                last edited by

                                @droftarts My x- and y-axis homing problems are now solved. After reading the the stall detection and sensorless homing guide, I changed the speed settings in the G1 command lines homex.g and homey.g from F1800 to F4800 so that the homing speed is greater than the minimum F2400 that derives from the default stall detection threshold of 200 steps/second. I also commented out the lines associated with the second slow fine homing moves. Now, when I command home x or home y, the build platform moves quietly to the endstops and the platform stops as expected. Thanks so much for pointing me in the right direction 😊

                                I have final question related to specifying a stall detection configuration using M915. I haven't yet added M915 line to my config.g. because the changes I made in the homex.g and homey.g seem to have solved my homing problems. I take this to mean that the default M915 settings do not need to be modified by adding a M915 line to config.g. Is this the right way to think about this, or would it better for me to add the M915 line to config.g? And if I add the line would you please confirm where it should be placed? I'm thinking it should follow the two M574 commands in the Endstops section of config.g?

                                Again thanks to all for your help.

                                Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                • mendenmhundefined
                                  mendenmh
                                  last edited by

                                  I would always add an explicit line, so you are not dependent on defaults, and so that you can easily see what to change if there is an issue. 'hidden' configuration can be very hard to diagnose.

                                  1 Reply Last reply Reply Quote 1
                                  • Phaedruxundefined
                                    Phaedrux Moderator @lhbru
                                    last edited by

                                    @lhbru said in Homing problem after Duet2 WiFi Upgrade:

                                    I'm thinking it should follow the two M574 commands in the Endstops section of config.g?

                                    Sounds like a good place.

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    1 Reply Last reply Reply Quote 0
                                    • lhbruundefined
                                      lhbru
                                      last edited by

                                      All problems are solved - and just completed a first print with the new Duet2. Thanks again to all who helped - I'm very grateful!

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post
                                      Unless otherwise noted, all forum content is licensed under CC-BY-SA