Extruder motors weak and weird

  • Hi

    While trying to do the last adjustments for the printer I ran up with a completely unexpected and weird behaviour on the extruder steppers. When trying to extrude 10mm from the "Extrude" menu I get slow and weak rotation of the extruders that continues for minutes and is lacking all the power that they used to have before changing into new Duet (from 0.8.5). If there is filament present it wont move as the motors only skip. The current should suitable for these small Nema 11 (or 14, can't remember) motors and changing it in config.g does not change anything for real. With the previous Duet these settings were running the extruders just fine ( I have a gear of about 1:5 ratio)

    Here are the config.g lines:

    ; Drives
    M569 P0 S1 ; Drive 0 goes forwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S1 ; Drive 3 goes forwards
    M569 P4 S1 ; Drive 4 goes forwards
    M569 P5 S1 ; Drive 5 goes forwards
    M569 P6 S1 ; Drive 6 goes forwards
    M569 P7 S1 ; Drive 7 goes forwards
    M569 P8 S1 ; Drive 8 goes forwards
    M584 X5 Y6 Z7 E0:1:2:3 ; Apply custom drive mapping
    M350 X8 Y8 Z4 I0 ; Configure microstepping without interpolation
    M350 E1:1:1:1:1:1 I0 ; Configure microstepping without interpolation
    M92 X37.2 Y25.6 Z723 E420:420:420:420:420:420 ; Set steps per mm
    M566 X900 Y900 Z12 E120:120:120:120:120:120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X6000 Y6000 Z180 E1200:1200:1200:1200:1200:1200 ; Set maximum speeds (mm/min)
    M201 X200 Y200 Z100 E250:250:250:250:250:250 ; Set accelerations (mm/s^2)
    M906 X600 Y600 Z600 E600:600:600:600:600:600 ;I30 ; Set motor currents (mA) and motor idle factor in per cent

    XYZ are driven with external drivers so the low amperage should not cause issues (and they work just fine when testing)


    With M906 X600 Y600 Z600 E600 I100 the power is back. Still amaizingly long 10mm of extrusion though..

  • What feedrate do you have your extruders set at?

  • If you raise the M203 E's up to 3000+, you'll get faster feeding. Change the I100 back to I30 (idle power) in your M906.

  • That looks awfully like you've set micro stepping to 1 but the steps per mm for 16x micro stepping. Just going on the fact that my E3D Titans which have 3:1 gearing run at around 405 steps per mm with 16x microstepping. That would account for why your 10mm of extrusion is amazingly long - I'd guess it's in the order of 160mm? If 420 is correct for 16X micro stepping, you'd need 26.5 full steps (micro stepping of 1).

    I'm always confused by the fact that we have to put steps per mm not as full steps but as microsteps.

  • administrators

    I agree with Ian, 420 full steps per mm of filament is ridiculous. 420 1/16 microsteps per mm would be reasonable.

    Why have you set the microstepping so low? The only reason to use microstepping below the default x16 is if you have an unusual, extremely large number of steps/mm on an axis or extruder.

  • Yeah the microstepping was 1/16 originally but in the middle of blind trying for getting the steppers run properly I changed it.

    Looks to me that now they work, and the solution was to set the mixing ratios 1:1:1:1 instead of 100💯100:100 as I had read somewhere from this forum. Also the microstepping is back to 1/16 allthough the extruded amount remains the same whether I have it set 1 or 1/16 which confuses me a lot. I never actually got the consept of microstepping 100% clear, and was happy with what ever number as long as extruder were running nice.

    I also set the Idlefactor back to 30%, allthough that's another mystery for me 😉

  • What sort of hot end are you using? The only mixing hot ends I've seen have 2, 3 or 5 inputs - never seen one with 4. I doubt you'll have seen to use a mixing ratio of 100💯100:100. It's usually best if the mixing ratio add up to 1.00 in total. So for a tool using just the first extruder, you'd set the mixing ratio to 1.00:0.00:0.00:0.00 and if you wanted to use all 4 in equal amounts, you'd use 0.25:0.25:0.25:0.25.

    Ref micro stepping. With the most common type of stepper motor, there are 200 full steps to one revolution. As there are 360 degrees in a circle, it follows that each full step equates to 1.8 degrees. There are also 0.9 degree stepper motors which take 400 full steps to move one revolution. Micro stepping simply breaks each full step into smaller chunks. So 16X micro stepping means that there are 16 micro steps to each full step.. It therefore follows that for a 1.8 degree motor using 16X micro stepping, there would be (200*16) 3200 micro steps per revolution. It's a little quirk of 3D printing software/firmware that whenever we input the steps per mm for an axis or extruder, the default assumes that 16X micro stepping is used so the term "steps per mm" is actually misleading and it should be "Number of 16X micro steps per mm" or some such. So you have to be careful if you change micro stepping from the default 16X as explained here https://duet3d.com/wiki/G-code#M350:_Set_microstepping_mode

  • Hi

    I use up to 4 extruders to make up to 4 parts at a time. So every extruder has to be 100% when used, and now the mixing being 1:1:1:1 they run nice.

    Thanks for the explanation for the microsteps, this "Number of 16X micro steps per mm" is a point I had missed 🙂

  • Mixing ratios are for mixing hot ends which you clearly don't have. Setting them all to 1.00 will work but if I were you, I'd simply not enable mixing. Just take out all the M567 and M568 commands (if you have them) from your config.g.

  • administrators

    Mixing ratios are also used when doing ditto printing on IDEX printers, with a tool definition that uses both print heads at once. The mixing ratio is set to 1:1 so that both heads get the normal amount of extrusion.

  • Ahh. Didn't know that about IDEX printers. Thanks for pointing it out.


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