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

Need help diagnosing bad stepper output signal on Duet 3

Scheduled Pinned Locked Moved
Duet Hardware and wiring
3
19
641
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
    Noah
    last edited by 13 Feb 2021, 22:11

    I just setup a brand new duet 3 board with a Pi.
    I have X,Y,Z1,Z2,Z3 on drivers 0,1,2,3,4 and the extruder on the last driver #5. I have tried 3 different motors and then switched the extruder motor around with a Z motor by just swapping connectors from one of the 3 Z motors at the board. When the extruder motor is plugged into driver #4 it runs perfectly, and on the same cable just plugged into a Z motors driver when I manual raise or lower the bed.
    So the motor and cable is definitely working fine. I am wondering if the brand new board I have just happened to come with a bad driver or something?
    I have tried many many amp settings and accel and step settings... not matter what any motor I connect to driver #5 just makes a faint hummm and rarely will even start to rotate. If I help the shaft along while it humming it will go.

    basic config:
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"Duet 3" ; set printer name
    M669 K1 ; select CoreXY mode

    ; Drives
    M569 P0.0 S1 ; physical drive 0.0 goes forwards
    M569 P0.1 S1 ; physical drive 0.1 goes forwards
    M569 P0.2 S1 ; physical drive 0.2 goes forwards
    M569 P0.3 S1 ; physical drive 0.3 goes forwards
    M569 P0.4 S1 ; physical drive 0.4 goes forwards
    M569 P0.5 S1 ; physical drive 0.5 goes forwards
    M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5 ; set drive mapping
    M671 X-30.109:146.1:322.309 Y-10.413:317.797:-10.413 S50
    M350 X16 Y16 Z16 E16:16:16 I1 ; configure microstepping with interpolation
    M92 X160.00 Y160.00 Z1600.00 E1600.00:1600.00:873.00 ; set steps per mm
    M566 X1200.00 Y1200.00 Z30.00 E30.00:30.00:1800.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X18000.00 Y18000.00 Z1800.00 E1800.00:1800.00:3000.00 ; set maximum speeds (mm/min)
    M201 X1600.00 Y1600.00 Z100.00 E100.00:100.00:2000.00 ; set accelerations (mm/s^2)
    M906 X1200 Y1200 Z800 E800:800:950 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 X315 Y315 Z400 S0 ; set axis maxima

    ; Endstops
    M574 X1 S1 P"io1.in" ; configure active-high endstop for low end on X via pin io1.in
    M574 Y1 S1 P"io0.in" ; configure active-high endstop for low end on Y via pin io0.in
    M574 Z1 S2 ; configure Z-probe endstop for low end on Z

    ; Z-Probe
    M950 S0 C"io7.out" ; create servo pin 0 for BLTouch
    M558 P9 C"^io7.in" H15 F120 T9000 ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X26.5 Y-37 Z1.44 ; set Z probe trigger value, offset and trigger height
    M557 X40:190 Y15:195 S40 ; define mesh grid

    ; Heaters
    M308 S0 P"temp0" Y"pt1000" R2200 ; configure sensor 0 as PT1000 on pin temp0
    M950 H0 C"out0" T0 ; create nozzle heater output on out0 and map it to sensor 0
    M307 H0 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
    M143 H0 S460 ; set temperature limit for heater 0 to 460C
    M308 S1 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1
    M950 H1 C"out1" T1 ; create bed heater output on out1 and map it to sensor 1
    M307 H1 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
    M140 H1 ; map heated bed to heater 1
    M143 H1 S160 ; set temperature limit for heater 1 to 160C
    M308 S2 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin temp2
    M950 H2 C"out2" T2 ; create chamber heater output on out2 and map it to sensor 2
    M307 H2 B0 S1.00 ; disable bang-bang mode for the chamber heater and set PWM limit
    M141 H2 ; map chamber to heater 2
    M143 H2 S150 ; set temperature limit for heater 2 to 150C

    ; Fans
    M950 F0 C"out4" Q500 ; create fan 0 on pin out4 and set its frequency
    M106 P0 S0.5 H-1 ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"out5" Q500 ; create fan 1 on pin out5 and set its frequency
    M106 P1 S0.5 H-1 ; set fan 1 value. Thermostatic control is turned off

    ; Tools
    M563 P0 D0 H0 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

    ; Miscellaneous
    M501 ; load saved parameters from non-volatile memory
    M911 S22 R23.5 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
    T0 ; select first tool

    M122 RESULTS

    2/13/2021, 1:57:52 PM M122
    === Diagnostics ===
    RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v1.01 or later (SBC mode)
    Board ID: 08DJM-956BA-NA3TJ-6JTD2-3SD6M-9B9YT
    Used output buffers: 1 of 40 (20 max)
    === RTOS ===
    Static ram: 149788
    Dynamic ram: 62956 of which 40 recycled
    Never used RAM 146048, free system stack 126 words
    Tasks: Linux(ready,95) HEAT(blocked,297) CanReceiv(blocked,927) CanSender(blocked,348) CanClock(blocked,352) TMC(blocked,19) MAIN(running,1069) IDLE(ready,19)
    Owned mutexes: Telnet(MAIN)
    === Platform ===
    Last reset 00:18:28 ago, cause: power up
    Last software reset at 2021-02-13 12:38, reason: User, none spinning, available RAM 146048, slot 1
    Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
    Error status: 0x00
    Aux0 errors 0,0,0
    Aux1 errors 0,0,0
    MCU temperature: min 40.1, current 40.4, max 40.6
    Supply voltage: min 23.9, current 23.9, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes
    12V rail voltage: min 12.1, current 12.2, max 12.2, under voltage events: 0
    Driver 0: position 10480, standstill, reads 23950, writes 4 timeouts 0, SG min/max 0/149
    Driver 1: position -6160, standstill, reads 23950, writes 4 timeouts 0, SG min/max 0/163
    Driver 2: position 50304, ok, reads 23950, writes 4 timeouts 0, SG min/max 0/111
    Driver 3: position 0, ok, reads 23950, writes 4 timeouts 0, SG min/max 0/111
    Driver 4: position 0, ok, reads 23950, writes 4 timeouts 0, SG min/max 0/112
    Driver 5: position 0, standstill, reads 23954, writes 0 timeouts 0, SG min/max not available
    Date/time: 2021-02-13 13:57:53
    Slowest loop: 173.93ms; fastest: 0.03ms
    === Storage ===
    Free file entries: 10
    SD card 0 not detected, interface speed: 37.5MBytes/sec
    SD card longest read time 0.0ms, write time 0.0ms, max retries 0
    === Move ===
    DMs created 125, maxWait 49750ms, bed compensation in use: none, comp offset 0.000
    === MainDDARing ===
    Scheduled moves 29, completed moves 28, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state 3
    === AuxDDARing ===
    Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
    === Heat ===
    Bed heaters = 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = 2 -1 -1 -1
    Heater 0 is on, I-accum = 0.0
    === GCodes ===
    Segments left: 0
    Movement lock held by HTTP
    HTTP* is idle in state(s) 47 8, running macro
    Telnet* is doing "M122" in state(s) 0
    File is idle in state(s) 0
    USB is idle in state(s) 0
    Aux is idle in state(s) 0
    Trigger* is idle in state(s) 0
    Queue is idle in state(s) 0
    LCD is idle in state(s) 0
    SBC is idle in state(s) 0
    Daemon is idle in state(s) 0
    Aux2 is idle in state(s) 0
    Autopause is idle in state(s) 0
    Code queue is empty.
    === CAN ===
    Messages queued 254, send timeouts 566, received 0, lost 0, longest wait 0ms for reply type 0, free buffers 48
    === SBC interface ===
    State: 4, failed transfers: 0
    Last transfer: 1ms ago
    RX/TX seq numbers: 39110/39110
    SPI underruns 0, overruns 0
    Number of disconnects: 0, IAP RAM available 0x2c8a8
    Buffer RX/TX: 0/0-0
    === Duet Control Server ===
    Duet Control Server v3.2.2
    HTTP:
    Buffered code: G30 ; home Z by probing the bed
    ==> 24 bytes
    Executing macro homeall.g, started by G28

    Next stack level
    Code buffer space: 4096
    Configured SPI speed: 8000000 Hz
    Full transfers per second: 36.46
    Maximum length of RX/TX data transfers: 4924/860
    ok

    undefined undefined 2 Replies Last reply 13 Feb 2021, 22:19 Reply Quote 0
    • undefined
      Noah
      last edited by 13 Feb 2021, 22:18

      This stands out to me a little... I have no clue what any of it means. I just notice irregularities on driver 5 compared to the others

      Driver 0: position 10480, standstill, reads 23950, writes 4 timeouts 0, SG min/max 0/149
      Driver 1: position -6160, standstill, reads 23950, writes 4 timeouts 0, SG min/max 0/163
      Driver 2: position 50304, ok, reads 23950, writes 4 timeouts 0, SG min/max 0/111
      Driver 3: position 0, ok, reads 23950, writes 4 timeouts 0, SG min/max 0/111
      Driver 4: position 0, ok, reads 23950, writes 4 timeouts 0, SG min/max 0/112
      Driver 5: position 0, standstill, reads 23954, writes 0 timeouts 0, SG min/max not available

      1 Reply Last reply Reply Quote 0
      • undefined
        Rushmere3D @Noah
        last edited by 13 Feb 2021, 22:19

        @Noah

        The first thing that stands out is you have defined multiple E factors in your config but you only have one Extruder, I think you meant to set multiple Z factors.

        Ie

        M350 X16 Y16 Z16 E16:16:16 I1 ; configure microstepping with interpolation

        Follow my adventures in 3D Printing, laser cutting and electronics. https://linktr.ee/Rushmere3D

        1 Reply Last reply Reply Quote 1
        • undefined
          Phaedrux Moderator @Noah
          last edited by 13 Feb 2021, 22:19

          @Noah said in Need help diagnosing bad stepper output signal on Duet 3:

          M350 X16 Y16 Z16 E16:16:16 I1 ; configure microstepping with interpolation
          M92 X160.00 Y160.00 Z1600.00 E1600.00:1600.00:873.00 ; set steps per mm
          M566 X1200.00 Y1200.00 Z30.00 E30.00:30.00:1800.00 ; set maximum instantaneous speed changes (mm/min)
          M203 X18000.00 Y18000.00 Z1800.00 E1800.00:1800.00:3000.00 ; set maximum speeds (mm/min)
          M201 X1600.00 Y1600.00 Z100.00 E100.00:100.00:2000.00 ; set accelerations (mm/s^2)
          M906 X1200 Y1200 Z800 E800:800:950 I30 ; set motor currents (mA) and motor idle factor in per cent

          Can you remove the multiple E values from this section? You only have a single extruder, so there should only be a single E value.

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 1
          • undefined
            Phaedrux Moderator
            last edited by 13 Feb 2021, 22:20

            Can you send M98 P"config.g" and report the results?

            Z-Bot CoreXY Build | Thingiverse Profile

            undefined 1 Reply Last reply 13 Feb 2021, 22:25 Reply Quote 0
            • undefined
              Noah
              last edited by 13 Feb 2021, 22:24

              The rrf config tool originally gave me that setup
              When I manually moved things from
              M350 X16 Y16 Z16 E16:16:16 I1 to M350 X16 Y16 Z16:16:16 E16 I1
              and so on for all the motor settings the bed would no longer home and the printer wouldn't function so I had to switch everything back

              undefined 1 Reply Last reply 13 Feb 2021, 22:46 Reply Quote 0
              • undefined
                Noah @Phaedrux
                last edited by 13 Feb 2021, 22:25

                @Phaedrux said in Need help diagnosing bad stepper output signal on Duet 3:

                P"config.g"

                M98 P"config.g"
                Error: in file macro line 21: M350: array too long, max length = 1
                Error: in file macro line 22: M92: array too long, max length = 1
                Error: in file macro line 23: M566: array too long, max length = 1
                Error: in file macro line 24: M203: array too long, max length = 1
                Error: in file macro line 25: M201: array too long, max length = 1
                Error: in file macro line 26: M906: array too long, max length = 1
                Warning: Macro file config-override.g not found

                1 Reply Last reply Reply Quote 0
                • undefined
                  Noah
                  last edited by Noah 13 Feb 2021, 22:34

                  I just tried putting back these settings

                  ; Drives
                  M569 P0.0 S1 ; physical drive 0.0 goes forwards
                  M569 P0.1 S1 ; physical drive 0.1 goes forwards
                  M569 P0.2 S1 ; physical drive 0.2 goes forwards
                  M569 P0.3 S1 ; physical drive 0.3 goes forwards
                  M569 P0.4 S1 ; physical drive 0.4 goes forwards
                  M569 P0.5 S1 ; physical drive 0.5 goes forwards
                  M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5
                  M671 X-30.109:146.1:322.309 Y-10.413:317.797:-10.413 S50
                  M350 X16 Y16 Z16 E16:16:16 I1
                  M92 X160.00 Y160.00 Z1600.00:1600.00:1600.00 E873.00
                  M566 X1200.00 Y1200.00 Z30.00:30.00:30.00 E1800.00
                  M203 X18000.00 Y18000.00 Z1800.00:1800.00:1800.00 E3000.00
                  M201 X1600.00 Y1600.00 Z100.00:100.00:100.00 E2000.00
                  M906 X1200 Y1200 Z800:800:800 E950 I30
                  M84 S30

                  Same result again. The triple Z bed no longer homes or responds to G32

                  undefined 1 Reply Last reply 13 Feb 2021, 22:46 Reply Quote 0
                  • undefined
                    Rushmere3D @Noah
                    last edited by 13 Feb 2021, 22:46

                    @Noah

                    If you run M98 P"config.g" again and it gives the same result as before, I think it's because you have multiple factors when you don't need them. If you tell the firmware the Z is 0.2:0.3:0.4 it knows to use one setting for all 3 steppers.

                    Follow my adventures in 3D Printing, laser cutting and electronics. https://linktr.ee/Rushmere3D

                    undefined 1 Reply Last reply 13 Feb 2021, 22:46 Reply Quote 0
                    • undefined
                      Phaedrux Moderator @Noah
                      last edited by 13 Feb 2021, 22:46

                      @Noah said in Need help diagnosing bad stepper output signal on Duet 3:

                      M350 X16 Y16 Z16 E16:16:16 I1 to M350 X16 Y16 Z16:16:16 E16 I1

                      The Z axis only needs a single entry as well. It's only when you have multiple extruder axis that each axis needs to be defined. The other axis with multiple motors all use the same settings since they aren't independent.

                      So remove the multiple Z values as well.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 1
                      • undefined
                        Phaedrux Moderator @Rushmere3D
                        last edited by 13 Feb 2021, 22:46

                        @Rushmere3D JYNX again!

                        Z-Bot CoreXY Build | Thingiverse Profile

                        undefined 1 Reply Last reply 13 Feb 2021, 22:47 Reply Quote 0
                        • undefined
                          Rushmere3D @Phaedrux
                          last edited by 13 Feb 2021, 22:47

                          @Phaedrux haha

                          Follow my adventures in 3D Printing, laser cutting and electronics. https://linktr.ee/Rushmere3D

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            Noah
                            last edited by 13 Feb 2021, 22:56

                            ok, haha
                            thank you so much for dealing with the noob over here. I corrected all of the lines after m671 to show only one value for X,Y,Z,E
                            I was just copying what the RRF config tool gave me for the multiple E motors since it did not have any option to add extra Z motors.
                            Z homing and G32 working perfect again, and I only have one data point for motor 5 now
                            Fingers crossed.

                            undefined 1 Reply Last reply 13 Feb 2021, 23:13 Reply Quote 0
                            • undefined
                              Noah
                              last edited by 13 Feb 2021, 22:57

                              as soon as the hotend heats up and it will let me send extrude and retract commands, I'll let you know if the ext motor is behaving any differently now

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                Noah
                                last edited by 13 Feb 2021, 23:05

                                Hahahaha Phaedrux & Rushmere You guy are amazing!!!
                                wish I had asked a little sooner for someone to review my code... I really caused myself a couple of days of grief over here... I have good motor function on all motors now.
                                Now, I am off to tune my extrusion steps and try a print!|

                                Thank You both soooooo much

                                Noah

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  Noah
                                  last edited by Noah 13 Feb 2021, 23:07

                                  Proper config for others refernce

                                  ; Drives
                                  M569 P0.0 S1 ; physical drive 0.0 goes forwards
                                  M569 P0.1 S1 ; physical drive 0.1 goes forwards
                                  M569 P0.2 S1 ; physical drive 0.2 goes forwards
                                  M569 P0.3 S1 ; physical drive 0.3 goes forwards
                                  M569 P0.4 S1 ; physical drive 0.4 goes forwards
                                  M569 P0.5 S1 ; physical drive 0.5 goes forwards
                                  M584 X0.0 Y0.1 Z0.2:0.3:0.4 E0.5
                                  M671 X-30.109:146.1:322.309 Y-10.413:317.797:-10.413 S50
                                  M350 X16 Y16 Z16 E16 I1
                                  M92 X160.00 Y160.00 Z1600.00 E873.00
                                  M566 X1200.00 Y1200.00 Z30.00 E1800.00
                                  M203 X18000.00 Y18000.00 Z1800.00 E3000.00
                                  M201 X1600.00 Y1600.00 Z100.00 E2000.00
                                  M906 X1200 Y1200 Z800 E950 I30
                                  M84 S30

                                  1 Reply Last reply Reply Quote 1
                                  • undefined
                                    Phaedrux Moderator @Noah
                                    last edited by 13 Feb 2021, 23:13

                                    Glad you got it sorted.

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      Noah
                                      last edited by 13 Feb 2021, 23:18

                                      I still do have the
                                      Error: in file macro line 21: M350: array too long, max length = 1

                                      but only for the M350 line

                                      That's strange... what doesn't it like about my M350 X16 Y16 Z16 E16 I1

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        Phaedrux Moderator
                                        last edited by 14 Feb 2021, 00:27

                                        Please upload your actual config.g file

                                        Z-Bot CoreXY Build | Thingiverse Profile

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