I think I have a dead stepper driver :(

  • Testing homing on my CoreXY and one of the steppers does not seem to be responding.
    Re made the connectors on the X&Y steppers, to be sure, tested again and only 1 motor works still.
    Swapped the connectors and the issue moves to the other motor.
    Here is my config.g

    I have a Duex5 on it with spare ports but I am not knowledgeable enough to change the config to use one of the spare steppers, to prove it is a hardware issue.

    28/07/2019, 21:51:19: Connected to
    28/07/2019, 21:52:10: M122: === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.03 running on Duet Ethernet 1.02 or later + DueX5
    Board ID: 08DGM-917DA-G4MS8-6JKDL-3SN6N-TVVB9
    Used output buffers: 3 of 24 (14 max)
    === RTOS ===
    Static ram: 25680
    Dynamic ram: 93748 of which 416 recycled
    Exception stack ram used: 268
    Never used ram: 10960
    Tasks: NETWORK(ready,524) HEAT(blocked,1236) DUEX(suspended,156) MAIN(running,3828) IDLE(ready,160)
    Owned mutexes:
    === Platform ===
    Last reset 00:01:14 ago, cause: software
    Last software reset at 2019-07-28 21:50, reason: User, spinning module GCodes, available RAM 10960 bytes (slot 0)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 10
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 0.0ms, max retries 0
    MCU temperature: min 28.0, current 28.4, max 28.6
    Supply voltage: min 24.2, current 24.2, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
    Driver 0: standstill, SG min/max not available
    Driver 1: standstill, SG min/max not available
    Driver 2: standstill, SG min/max not available
    Driver 3: standstill, SG min/max not available
    Driver 4: standstill, SG min/max not available
    Driver 5: standstill, SG min/max not available
    Driver 6: standstill, SG min/max not available
    Driver 7: standstill, SG min/max not available
    Driver 8: standstill, SG min/max not available
    Driver 9: standstill, SG min/max not available
    Date/time: 2019-07-28 21:52:09
    Cache data hit count 178784183
    Slowest loop: 4.05ms; fastest: 0.07ms
    I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
    === Move ===
    Hiccups: 0, FreeDm: 169, MinFreeDm: 169, MaxWait: 0ms
    Bed compensation in use: none, comp offset 0.000
    === DDARing ===
    Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    === GCodes ===
    Segments left: 0
    Stack records: 1 allocated, 0 in use
    Movement lock held by null
    http is idle in state(s) 0
    telnet is idle in state(s) 0
    file is idle in state(s) 0
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 6.34ms; fastest: 0.02ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    Interface state 5, link 100Mbps full duplex
    28/07/2019, 21:57:28: Upload of config.g successful after 0s

    Thanks in advance.


  • @paulhew If you swap the motor connectors at the board and the fault moves to a different motor, then it looks like a faulty driver. However this "M669 K2" will set the kinematics to CoreXZ. So first I suggest you comment out that line and stick with the one before which is M669 K1. Try that first.

    If you still have the problem, it looks like driver2 is free. So you could connect a motor to that. If the X motor moves (usually the one on the left or "Alpha") but not the Y motor (the one on the right), then you could connect the Y motor to driver 2. Then change this.......
    M584 X0 Y1 Z5:6:7 E3:4:8:9
    to this...........
    M584 X0 Y2 Z5:6:7 E3:4:8:9

    If it's other motor that doesn't move (the X motor), then swap driver 0 fotr driver 2 and use M584 X2 Y1 Z5:6:7 E3:4:8:9.

    But change the kinematics first.

  • Thanks for the reply Ian.
    I was reading what I thought was all relevant for the CoreXY.

    I will test it again tomorrow with your changes and let you know.

    I owe you a beer or your favourite tipple @tct in September.



  • That worked! Thanks @deckingman
    Both steppers working as they should.

    Learning more! I did question the fact that I was putting in another M669 but thought that it was required.

    Thanks again,


  • @paulhew That was easy then.

    PS. I can't drink alcohol these days so I'll settle for a coffee. An Americano with 1 sugar and a splash of milk will do nicely. 🙂

Log in to reply