2nd extruder stepper seems to have stopped working

  • I've tried the following:

    • Power up

    • home

    • M302P1/P2

    • Extrude (stepper 1 spins when extruding on P1, nothing spins on when extruding P2)

    • Extrude both only ext 1 spins

    • Power down

    • swap wires from Ext1 and Ext 2 over

    • Power up

    • M302P1/P2

    • Extrude (stepper 2 spins when extruding on P1, nothing spins on when extruding P2)

    • Extrude both only ext 2 spins

    Output of M122 once wires are back to normal:

    === Diagnostics ===
    Used output buffers: 2 of 32 (11 max)
    === Platform ===
    Memory usage:
    Program static ram used: 20304
    Dynamic ram used: 73848
    Recycled dynamic ram: 56
    Current stack ram used: 3288
    Maximum stack ram used: 4272
    Never used ram: 32592
    Last reset 00:01:15 ago, cause: software
    Last software reset code 0x0003, HFSR 0x00000000, CFSR 0x00000000, ICSR 0x00400000, BFAR 0xe000ed38, SP 0xffffffff
    Spinning module during software reset: GCodes, available RAM 33040 bytes (slot 4)
    Error status: 0
    Free file entries: 10
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 0.0ms
    MCU temperature: min 37.4, current 39.6, max 42.5
    Supply voltage: min 24.6, current 24.7, max 24.9, under voltage events: 0, over voltage events: 0
    Driver 0: stalled standstill
    Driver 1: stalled standstill
    Driver 2: stalled standstill
    Driver 3: standstill
    Driver 4: standstill
    Current date and time: 2017-10-22 18:32:56
    Slowest main loop (seconds): 0.005752; fastest: 0.000031
    === Move ===
    MaxReps: 3, StepErrors: 0, MaxWait: 951ms, Underruns: 0, 0
    Bed compensation in use: none
    Bed probe heights: 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
    Probe change coordinates:
    === Heat ===
    Bed heater = 0, chamber heater = -1
    Heater 1 is on, I-accum = 0.0
    === GCodes ===
    Segments left: 0
    Stack records: 1 allocated, 0 in use
    Movement lock held by null
    http is ready with "M122"
    telnet is idle
    file is idle
    serial is idle
    aux is idle
    daemon is idle
    === Network ===
    WiFiServer is running
    SPI underruns 0, overruns 0
    === Webserver ===
    HTTP sessions: 1 of 8

    Contents of config.g:

    ; Configuration file for big Kossel from Think3DPrint3D V0.1 Date 20150708 with revisions for Duet V0.8.5 by Tony
    ; and addition of 3 more drives and second PWM fan for testing
    ; Communication and general
    M111 S0                             							; Debug off
    M550 PZestyZero                  							; Machine name and Netbios name (can be anything you like)
    M551 zesty 		                       						; Machine password (used for FTP)
    ;*** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
    M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED 							; MAC Address
    ;*** Wifi Networking
    M552 S1											; Enable WiFi
    ;*** Adjust the IP address and gateway in the following 2 lines to suit your network
    ;M552 P0.0.0.0                  							; IP address. to use DHCP
    ;M554 P0.0.0.0		                   						; Gateway
    ;M553 P255.255.255.0                 							; Netmask
    M555 P2                             							; Set output to look like Marlin
    M575 P1 B57600 S1									; Comms parameters for PanelDue
    G21                                 							; Work in millimetres
    G90                                 							; Send absolute coordinates...
    M83                                 							; ...but relative extruder moves
    ;Turn off fans
    M106 S0 										; Turn off Fan 0 (backward compatible with older firmware)
    M106 P1 S0 										; Turn off Fan 1
    ; Axis and motor configuration
    M569 P0 S1										; X Drive 0 goes backwards
    M569 P1 S1										; Y Drive 1 goes backwards
    M569 P2 S1										; Z Drive 2 goes backwards
    ; Extruders
    M569 P3 S1										; E0 Drive 3 goes forwards
    M569 P4 S1										; E1 Drive 4 goes forwards
    M574 X2 Y2 Z2 S1									; set endstop configuration (all endstops at high end, active high)
    ;*** The homed height is deliberately set too high in the following - you will adjust it during calibration. 
    M665 L440.43 R262.03 H418.84 B140.00 X-1.42 Y-0.32 Z0.00   				; set diagonal rod length, delta radius, homed height and printable radius
    M666 X-0.88 Y-0.84 Z2.20								; put your endstop adjustments here, as given by auto calibration 22/05/15
    ;M350 X128 I100 									; Set 128x microstepping without interpolation
    M350 X16 Y16 E16 I1    									; Set 16x microstepping with interpolation
    M92 X200 Y200 Z200 									; Set axis steps/mm http://prusaprinters.org/calculator/#stepspermmbelt
    M906 X950 Y950 Z950 E500:500								; Set motor currents (mA); set each extruder explicitly
    M906 I100										; Set motor idle factor to 100% while testing so they don't idle at all
    M201 X1000 Y1000 Z1000 E120								; Accelerations (mm/s^2) Set all E-motors the same
    M203 X5000 Y5000 Z5000 E1000								; Maximum speeds (mm/min) Set all E-motors the same
    M566 X500 Y500 Z500 E40									; Maximum instant speed changes mm/minute. Set all E-motors the same
    ; Thermistors
    M305 P0 T100000 B3950 R4700 H0 L0							; Put your own H and/or L values here to set the bed thermistor ADC correction
    ; Duet0.8.5 uses 4.7K resistors
    M305 P1 X201										; Put your own H and/or L values here to set the 1st nozzle thermistor ADC correction
    ;M305 P2 X200										; Put your own H and/or L values here to set the 2nd nozzle thermistor ADC correction
    M143 H0 S160 										; set the maximum bed temperature to 160C
    ;M307 H0 A624.7 C768.3 D22.1 B0                             				; Set Heater 0, bed, settings
    M307 H1 A586.1 C214.9 D6.5 B0								; Set Heater 0, bed, settings
    M570 S60										; Hot end may be a little slow to heat up so allow it 60 seconds
    ; Tool definitions FOR Cyclops+ HOT-END - Tools 0 and 1
    M563 P0 D0:1 H1                       							; Define tool 0
    G10 P0 S0 R150 X0 Y0                							; Set tool 0 operating and standby temperatures and centre offset
    ; Enable mixing - https://duet3d.com/wiki/G-code#M568:_Turn_off.2Fon_tool_mix_ratios
    M568 P0 S1
    ; Define mix ratio - https://duet3d.com/wiki/G-code#M567:_Set_tool_mix_ratios
    M567 P0 E1:0										; Extrude full left
    ;*** If you have a dual-nozzle build, un-comment the next 2 lines
    ;M563 P1 D1 H2                      							; Define tool 1
    ;G10 P1 S0 R0 X-9.0 Y5.0             							; Set tool 1 operating and standby temperatures and centre offset
    M92 E2400:2400			        						; Set extruder steps per mm explicitly for all the extruders - 5 for Duet085+Dt4 test
    // Z probe and compensation definition
    ;*** If you have an IR zprobe instead of a switch, change P4 to P1 in the following M558 command
    M558 P1 X0 Y0 Z0 H5									; Z probe is a DC42 Differential IR PCB and is not used for homing any axes
    G31 X15 Y28 Z2.46 P500									; Set the zprobe offset, height and threshold (put your own values here)
    M208 S1 Z-0.2										; set minimum Z
    T0											; select first hot end

    Any help greatly appreciated.

  • administrators

    How are you commanding the "Extrude both"?

    Can you feel the second extruder motor getting energised? Is the E1 stepper driver getting hot, or showing signs of damage?

    Have you changed anything since it was last working?

    You can send M584 E4 followed by M906 E500 to remap extruder 0 to E1 for testing.

  • Hi David

    Sending commands from the buttons on the webUI.

    E1 shows no evidence of heat damage or escaped smoke) on visual inspection.

    No nothing has changed since it was last working.

    Remapping from gcode wouldn't test if it's the driver thats at fault though, I was trying to confirm that the stepper itself was still ok (which it is based on my tests)

    Is there components I can test with multimeter to see if they might have blown?

  • administrators

    The reason to remap the driver is in case there is a configuration problem (tool selection, temperature etc.) that is preventing extrusion on extruder drive 1.

  • Hi David

    Sending M584 E4 followed by M906 E500 to remap extruder 0 to E1 for testing did allow the second stepper to spin (and the first stopped spinning in this case)

    Holding my finger on the driver chip before doing this the ex1 one was warm but not hot, the 2nd was cold.

    I assume this means it's a config issue, can you see anything wrong in the config?

    Looking through myself now..

  • Got them both spinning at the same time for now.. by updating to this..
    M567 P0 E0.5:0.5

    Still would like some assistance with getting them to extrude separately though please

  • Hi Brian,

    I'm struggling to understand your configuration. Can you confirm that you are using a Cyclops - i.e. two inputs but one output?

    If so, then you seem to have only one tool defined and that tool uses both extruders with a default mixing ratio of 1:0. In that case, the only way to get either one of other of the extruders to work would be to change the mixing ratio. So M567 P0 E1.00:0.00 will use the first extruder and M567 P0 E0.00:1.00 will use the second and as you've discovered setting it to E0.5:0.5 uses both.

    So assuming that you have a two input one output hot end. Then you need to define a second tool (T1) which it looked like you once did but it's commented out. You should have something like M563 P1 D0:1 followed by M567 P1 E0.00:1.00.

    Also, tool numbers are 0 and 1, not 1 and 2 unless you use M563 S1.

    A couple of other things that leap out at me is that you haven't defined accelerations, speed and jerk setting for the second extruder. It may not be important if Duet defaults to using the values of the first extruder to all other extruders but I'd put E0:1 at the end of those lines juts to be safe.



  • Hi Ian

    Yes I'm using a Cyclops, I think I commented out the second tool due to having issues getting that all working in a logical way initially so that makes sense..

    Thanks for the suggestion about ext 2 accell,speed,jerk will add thoise in asdap too.

    I've had a rod arm break so will pick this up once the replacements arrive, it would be great to organise a time to talk to you about this at some stage if possible, particularly how you manage long prints where only one side might be extruding (particularly stopping crystalisation and blockages in the other side).


  • Brain,

    Sent you a pm with my email address.



Looks like your connection to Duet3D was lost, please wait while we try to reconnect.