Extruder motors not moving



  • Hi

    I am building a machine that is not a 3D printer but as I have liked a lot Duets for years now I decided to use one as a controller in this project too. Now all the other axis are moving as supposed but the extruder ones are not. I have waisted hours trying to find the problem and tried a lot of different tricks being often sure that NOW I found it. not.

    So if somebody could see at a glance some stupid mistake in my very short config.g or otherwise know what to do that'd be amaizing.

    Here goes the config:

    M550 PXTP1

    ; General preferences
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M555 P2 ; Set firmware compatibility to look like Marlin
    ;M208 X0 Y0 Z0 S1 ; Set axis minima
    ;M208 X549.5 Y800 Z800 S0 ; Set axis maxima

    ; Endstops
    M574 X1 S1 ; Define active high microswitches
    M574 Y1 S0
    M574 Z1 S0

    M558 P0 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to switch, the axes for which it is used and the probe + travel speeds

    M350 X16 Y8 Z16 E16:16 I0 ; Configure microstepping without interpolation

    M92 X641 Y641 Z641 E600:600 STEPS PER MM

    M566 X1 Y1 Z1 E1:1 ; Set maximum instantaneous speed changes (mm/min) “JERK”
    M203 X4000 Y175000 Z1500 E1000:1000 ; Set maximum speeds (mm/min) SPEED
    M201 X120 Y120 Z120 E120:120 ; Set accelerations (mm/s^2) “ACCELERATION”
    M906 X2000 Y1700 Z2000 E1700:1700 I30 ; Set motor currents (mA) and motor idle factor in per cent

    M84 S1 ; Set idle timeout

    ;heaters

    M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0

    M305 P1 T100000 B4138 C0 R4700 ; Set thermistor for heater 1
    M305 P2 T100000 B4138 C0 R4700 ; Set thermistor for heater 2

    ; Tools

    M563 P0 D3:4 H1:2 ; Define tool 0
    M302 P1
    M584 E3:4

    ;M563 P0 D3:4 ; Define tool 0 (no heaters assigned)
    ;M567 P0 E1:1
    ;M584 E3:4
    ;M302 P1 ;COLD EXTRUSION ON

    ; Network
    M550 PXTP1 ; Set machine name
    M540 PBE:EF:DE:AD:FE:ED ; Set MAC address
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; Fans
    M106 P0 S1 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off

    As said I have tried a lot of different combos but none has worked - the steppers stay unpowered and still. I have 100K resistors in the place of the thermistors and the paneldue WAS showing reasonable readings as temperature for extruders 1 and 2 that WERE visible on the screen. Now I have no extruders or temps on the screen. When I try to "extrude" from the menu or with a direct G1 command I get an error message saying "Attempting to extrude without tool selected" regardless if I have put T0 before that or not. Earlier I got to a point where I didn't get this error msg allthough nothing else happened neither. Now I have somehow managed to backwards apparently and of course didn't copy the old config before poking it.

    Thanks in advance, guys!


  • administrators

    Try sending M563 P0 to check that tool 0 really has been defined. If so, then T0 to select the tool followed by a G1 Exxx command should either report that cold extrusion has been prevented, or run the extruders.

    You can define a tool with no heaters if that is what you want to do, unless you are running very old firmware,



  • @propellerhat Also, your M584 needs to come before your M350 and M906 commands. https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping

    And you have a semi colon missing in this line M92 X641 Y641 Z641 E600:600 STEPS PER MM (i.e. you need a semi colon before the "STEPS PER MM" comment).


  • administrators

    @deckingman said in Extruder motors not moving:

    @propellerhat Also, your M584 needs to come before your M350 and M906 commands. https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping

    And you have a semi colon missing in this line M92 X641 Y641 Z641 E600:600 STEPS PER MM (i.e. you need a semi colon before the "STEPS PER MM" comment).

    I think Ian has nailed it!



  • Thanks for the fast replies, guys, but the problem remains :I

    What might be wrong with my tool0? I am still "attempting to extrude with no tool selected" and the M563 P0 returns "Attempt to print details of nonexisting tool".

    The firmware was the newest about a month ago.

    Here the config.g with the corrections:

    M550 PXTP1

    ; General preferences
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M555 P2 ; Set firmware compatibility to look like Marlin
    ;M208 X0 Y0 Z0 S1 ; Set axis minima
    ;M208 X549.5 Y800 Z800 S0 ; Set axis maxima

    ; Endstops
    M574 X1 S1 ; Define active high microswitches
    M574 Y1 S0
    M574 Z1 S0

    M558 P0 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to switch, the axes for which it is used and the probe + travel speeds

    M350 X16 Y8 Z16 E16:16 I0 ; Configure microstepping without interpolation

    M92 X641 Y641 Z641 E600:600; STEPS PER MM

    M584 E3:4
    M566 X1 Y1 Z1 E1:1 ; Set maximum instantaneous speed changes (mm/min) “JERK”
    M203 X4000 Y175000 Z1500 E1000:1000 ; Set maximum speeds (mm/min) SPEED
    M201 X120 Y120 Z120 E120:120 ; Set accelerations (mm/s^2) “ACCELERATION”
    M906 X2000 Y1700 Z2000 E1700:1700 I30 ; Set motor currents (mA) and motor idle factor in per cent

    M84 S1 ; Set idle timeout

    ;heaters

    M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0

    M305 P1 T100000 B4138 C0 R4700 ; Set thermistor for heater 1
    M305 P2 T100000 B4138 C0 R4700 ; Set thermistor for heater 2

    ; Tools

    M563 P0 D3:4 H1:2; Define tool 0
    M302 P1

    ;M563 P0 D3:4 ; Define tool 0 (no heaters assigned)
    ;M567 P0 E1:1
    ;M584 E3:4
    ;M302 P1 ;COLD EXTRUSION ON

    ; Network
    M550 PXTP1 ; Set machine name
    M540 PBE:EF:DE:AD:FE:ED ; Set MAC address
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; Fans
    M106 P0 S1 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off

    I'm clueless!!



  • @propellerhat The message " attempting to extrude with no tool selected" means exactly that. You have only one tool defined so simply enter the command "T0" before you attempt to extrude. Better still, just put T0 at the end of your config.g file.



  • Sorry for not saying so but I have typed "T0" in the console the first thing :I Despite it there is no tool selected, and the "Attempt to print details of nonexisting tool" looks a lot like the T0 is not even defined... even though there it is. I have also put the T0 in the config.g without any change in the situation.



  • @propellerhat Ahh, yes think I see the problem.

    For your tool definition you have M563 P0 D3:4 H1:2.

    It's a bit confusing and an easy mistake to make but the "D" parameter in that command refers to the extruder number, not the drive number. So in your drive mapping M584 E3:4 means that the first extruder uses drive 3 and the second one uses drive 4. Thereafter, you have to refer to extruders, not drives. The first extruder is extruder number 0 and the second is extruder number 1 so your tool definition should be M563 P0 D0:1 H1:2.

    Edit. The error message is a tad ambiguous because it should really say "Attempting to extrude with a tool that has non-existant extruders".



  • All right! Now E1 motor runs. That was a silly mistake as I have successfully configured a printer with 6 extruders a couple of years ago. The E2 motor still stays unpowered though, any idea what might be causing that?

    Is it possible to command E1 and E2 separately without changing tools? Maybe I can change the "E" into other letters..?
    My goal is to have 5 independent axis, no heaters needed.



  • @propellerhat Er, you don't have an E2. You have extruder 0 and extruder1.

    But assuming that's just a typo on your part, and thinking about it some more, you might need to use M567 to define the mixing ratio for the two extruders. How are the extruders configured? Is it a 2 in 1 out hot end or have you got them set up as a push-pull configuration. Either way, I think you'll still have to set up the mixing ratio using M567. If it's a 2 in 1 out then the ratios for each extruder ought to add up to 1.00. If they are push-pull, then the ratio ought to be 1.00 for each extruder. Once that's done, then DWC will allow you to extrude by individual drives or by mixing.



  • @propellerhat said in Extruder motors not moving:

    .............................My goal is to have 5 independent axis, no heaters needed.

    I've just noticed this comment that you made. You haven't said anything about the application that you are working on but have you considered creating additional axes such as U and V, rather than re-purposing extruders?


  • administrators

    @propellerhat said in Extruder motors not moving:

    Is it possible to command E1 and E2 separately without changing tools? Maybe I can change the "E" into other letters..?

    I think you mean E0 and E1, as Ian said. Your tool 0 is configured to use both. So with tool 0 selected you can do this:

    G1 E10:0 F120 ; extrude 10mm from the first extruder
    G1 E0:10 F120 ; extrude 10mm from the second extruder
    G1 E10:10 F120 ; extrude 10mm from both extruders

    Also see Ian's point about creating additional axes instead.



  • @dc42 That's useful to know. I hadn't considered the possibility of being able to use multiple E values separated by colons.



  • Awesome. After adding the 1:1 mixing ratio both motors turn.

    Great possibility that G1 E10:0/E0:10 to control which motor turns, allthough it might come more handy later to create those extra axes.

    Now it looks all set up to get stuck with some other kind of problems than the configuring 😉

    Thanks!


 

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