High step rate or interpolation?

  • Hi,

    I recently got my DuetWifi and while configuring the firmware and researching drop in driver for my previous re-arm +ramps I came across interpolation in the TMC drivers.

    I read here and there a bit about that and I can roughly imagine what interpolation does, but now that I can actually choose I wonder what the actual difference is between a high step rate and interpolation is.

    The reprap wiki mentions "Note that some stepper driver ICs (e.g. TMC2100) use a high microstepping interpolation mode (1/16th microstepping with 1/256 interpolation) achieving silent, vibration free-running while only requiring 1/16th step rate i.e. you can have the cake and eat it too, in this case."

    That sounds pretty good but can someone shed some light on the difference or post some resources?


  • My take on it is that if you want to actually make the firmware and the processor on the duet generate the step pulses for true 1/256th microstepping, you can. But even the mighty Sam4x processor cannot generate enough pulses for high speed movement, especially on a delta at this microstepping setting.

    If you have 1.8deg motors and want a pure z move, and you have 200 steps/mm that's 600 steps/mm for all three motors at 1/16th but 3200 steps/mm at 1/256th. If you want to move 120mm/sec travel speed, for example, that's 384,000 steps/sec which is more than the 180,000 steps/sec possible, leaving no processor cycles for anything else. So it slows down. Try it, you won't break anything.

    If you chose interpolation then its 600 steps/mm for all three motors, so 120mm/s is only 72,000 steps/sec, well within the board capabilities. But it sounds and behaves like 1/256th as the driver chips themselves calculate and generate the microsteps between each 1/16th microstep position, leaving the duet processor relatively free to do other things. My understanding is that only 1/16th can be interpolated, as the duet board is currently setup. All other modes are "native" microstepping.

    TL:DR 1/16th with interpolation requires no more processing power than 1/16th but is quieter, if no more accurate. 1/256th is very processor intensive, especially on a delta.

    2660 datasheet - https://www.google.co.uk/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwjS8Oa04r3WAhVsBMAKHbkZCTcQFggmMAA&url=https%3A%2F%2Fwww.trinamic.com%2Ffileadmin%2Fassets%2FProducts%2FICs_Documents%2FTMC2660_datasheet.pdf&usg=AFQjCNHyr0J3ZNQztvkuahkp8d_P7p-FuA

  • Thanks for the info,

    I just noticed that in the RFF firmware configurator there are the same interpolation options for all other step rates as well.
    Ill try to make some ripple tests with different step and interpolation settings.

  • administrators

    Interpolation only works at x16.


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