Max Speed at different microsteppings



  • with a 8bit Ramps/Rumba board running marlin, you can only set the microstepping so high when trying to achieve acceptable movement speeds..
    due to limited CPU

    with Duet Wifi is there enough CPU power to handle any Microstepping (up to max) and still be able to process speeds in excess of 300mm/sec?


  • administrators

    The maximum step rate is 240kHz with just one motor running and 130kHz with 3 running synchronously. [EDIT: it's now about 50% faster than that, about 360kHz and 180kHz.] From that you can work out the maximum speed at various microstepping settings. For example, if you have 80 steps/mm at x16 then you will have 1280 at x256, which implies a maximum speed of around 100mm/sec to allow for 2 motors running.

    I plan to implement dynamically varying microstepping to allow high microstepping and high travel speeds to be configured.
    However, the default 16x microstepping with 16x interpolation works so well that this is now a low priority.



  • I recently tried running my duet wifi with 1/256 microstepping. Movements at 150 mm/sec were super jittery.

    M350 X256 Y256 Z16 E16 ; Configure microstepping without interpolation
    M92 X3200 Y3200 Z400 E347.8895 ; Set steps per mm

    Based on the above was I simply pushing too far? I was printing just fine at that speed with 1/16 microstepping ( 200 steps/mm on x/y iirc ).

    Maybe put another way what happens if you reach the upper limit of the processor capability does the firmware restrict the movement speed or just try its best to keep up?


  • administrators

    It tries it's best to keep up.

    The maximum step rate achievable depends on how many motors are moving simultaneously, but you should aim for no more than about 200 000. So at 3200 steps/mm that gives you a top speed of about 60mm/sec. I guess you must be using 0.9deg motors to have the steps/mm that high.



  • Yep I am using .9 steppers with iirc 20t gt2

    60 is still plenty fast though I may bring it down to 128 microstepping and get slightly higher print/movement speeds

    thanks for clarification!


  • administrators

    Bilsch, just out of intrest why are you not using 16 microstepping with interpolation up to 256?



  • @T3P3Tony:

    Bilsch, just out of intrest why are you not using 16 microstepping with interpolation up to 256?

    Is interpolation enabled on all axes or can I select the ones to enable it on? I am worried about loss of torque on the extruder and Z steppers


  • administrators

    Torque is not affected by microstepping. The confusion arises because various sites publish incremental torque per microstep - which of course does go down as microstepping increases, because the change in movement angle per microstep goes down.

    You can select which motors to use interpolation on if you wish, just use two separate M350 commands. But if you use x16 microstepping then I am not aware of any situation in which it is better to turn interpolation off.



  • @dc42:

    Torque is not affected by microstepping. The confusion arises because various sites publish incremental torque per microstep - which of course does go down as microstepping increases, because the change in movement angle per microstep goes down.

    You can select which motors to use interpolation on if you wish, just use two separate M350 commands. But if you use x16 microstepping then I am not aware of any situation in which it is better to turn interpolation off.

    Good to know, interpolation it is!


Log in to reply