Stepper inaccuracies workaround idea

Specs: Kingroon KP3S printer with custom Sherpa Mini and e3d V6 hotend (Robin Nano v1.3 with GD32F103 mcu and Radxa Zero SBC board).

klippy.zip (331.6 KB)

After many hours of thinking about VFA’s from stepper inaccuracy (picture from this post)
loaded-test-2-Copy-2

I’ve got the idea that with high microstepping like 128/256 it is possible to implement the microstep offset table (like in tcm2130) for any driver. I’ve digged around the code and found that we already know the current motor microstep and phase numbers (ENDSTOP_PHASE_CALIBRATE and GET_POSITION reports that). As well as get_status() from tmc.py (line 408 on latest master). I’m willing to try implementing this, but I’ll need some pointers on where would be the best place to patch this in.

Also, am I missing something?

Could be very beneficial for any stepper including the extruder. Of course the calibration process is not going to be easy for the end user. But the benefits are awesome (at least in my head =) - VFA’s and geared extruders would be improved.

Thanks.