First move in new direction is skipping steps on X-axis



  • First of all, happy new year!

    I'm having a problem with my setup of the Duet2 WiFi Board. I have a X-axis with two Nema23 stepper motors moving the Y-axis in parallel via 2 belts separate belts. I use the drivers 0 and 4 for the motors on the X-axis. I hope you can visualize my setup.

    So the problem is, when I want to move the X-axis in a new direction, then the motor skips or stalls (not make a noise) on the first move. Every move in the same direction works fine. When I change direction again, same happens on the first move and the following in the same direction work perfectly.
    Example:
    x +10mm - skips and only moves 5mm
    x +10mm - works fine and moves 10mm
    x -10mm - skips and only moves 5mm
    x -10mm - works fine and moves 10mm

    No other axis are affected and work perfectly.

    I've played with acceleration, micro-stepping, instantaneous speed changes, belt tension.
    The thing is, when I disconnect the belt from the Y-axis slider and the belt moves on its own without moving the Y-axis then this problem does not occur. This problem does also not occur when using a different board with Pololu drivers.

    I've added the config below, but I'm not finished with the setup.
    I hope someone can help me.

    Have a nice day

    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Wed Dec 19 2018 20:23:10 GMT+0100 (Central European Standard Time)
    
    ; General preferences
    G90                                         ; Send absolute coordinates...
    M83                                         ; ...but relative extruder moves
    
    ; Network
    M550 P"----"                                ; Set machine name
    M551 P"----"                                ; Set password
    M552 S1                                     ; Enable network
    ;*** Access point is configured manually via M587
    M586 P0 S1                                  ; Enable HTTP
    M586 P1 S0                                  ; Disable FTP
    M586 P2 S0                                  ; Disable Telnet
    
    ; Drives
    M584 X0:4 Y1 Z2 E3
    M569 P0 S0                                  ; Drive 0 goes backwards
    M569 P1 S0                                  ; Drive 1 goes backwards
    M569 P2 S0                                  ; Drive 2 goes backwards
    M569 P3 S1                                  ; Drive 3 goes forwards
    M569 P4 S1				    ; Drive 4 goes forwards
    M350 X32 Y32 Z32 E16 I0                     ; Configure microstepping without interpolation
    M92 X64.00 Y88.89 Z1600.00 E415.00          ; Set steps per mm
    M566 X10.00 Y900.00 Z12.00 E120.00         ; Set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z300.00 E1200.00     ; Set maximum speeds (mm/min)
    M201 X10.00 Y500.00 Z20.00 E250.00         ; Set accelerations (mm/s^2)
    M906 X2400.00 Y1000.00 Z1500.00 E800.00 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 X780 Y450 Z800 S0                      ; Set axis maxima
    
    ; Endstops
    M574 X1 Y1 S1                               ; Set active high endstops
    
    ; Z-Probe
    M558 P0 H5 F120 T6000                       ; Disable Z probe but set dive height, probe speed and travel speed
    M557 X15:11 Y15:195 S20                     ; Define mesh grid
    
    ; Heaters
    M140 H-1                                    ; Disable heated bed
    M305 P1 T100000 B4138 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 S0 I0 F500 H-1                    ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    
    ; Tools
    M563 P0 D0 H1                               ; 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
    
    ; Automatic saving after power loss is not enabled
    
    ; Custom settings are not configured
    
    
    

  • administrators

    What a strange problem! Which firmware version are you using? Please try 2.02 if you are using an older version.



  • Firmware version 2.01 was installed, I updated to 2.02 but the problem still persists.
    I tested some more things. When only one motor (doesn't matter which) is moving the carriage, then the problem is still the same.

    But I noticed, only about 5mm of travel is lost. If i move x +100mm it moves 95mm and following with x -100mm the slider stops at 0 again. Same with 50mm and 10mm moves. It moves about 3-5mm stops for some milliseconds and then continues to move the rest of the travel.
    All moves following in the same direction are perfectly executed.

    I made a short video to show the problem


  • administrators

    I think you have a loose grubscrew in the pulley on the motor shaft.


Log in to reply