I clamped a dial indicator to my bed to measure my Ultimaker's backlash. While working on that, I noticed something interesting about the behavior of the needle on the indicator. Please watch this video to see it:
I told the head to move 2.54 mm (0.1 inches) slowly along the Y axis, to make the needle revolve once. The interesting thing (to me) is that the needle didn't move smoothly all the way around. It moved smoothly for about 0.008 inches, then paused, then moved smoothly another ~0.008 inches, then paused, and so on.
I can think of several things that could cause this pattern. One is that the indicator itself is causing it. If so, that's a benign problem in the sense that it doesn't affect prints. Here is the certificate of inspection that came with my indicator:
I don't know if there's enough resolution in the certificate's error graph to decide whether the pattern is caused by the indicator.
Another potential reason is interference between the firmware's clock frequency and the wave frequency required to drive the stepper at the desired speed. I don't think this is the problem because if I run the test at a higher (but still fairly slow) speed, I still see the pattern, with the same distances (but shorter time intervals) between pauses. If it were a clock interference problem, I would expect the time interval between pauses to remain constant.
Another possible reason is that the stepper itself has irregularities.
The last reason that occurs to me is that the timing belt/pulley interface is irregular. Perhaps due to the way the teeth mesh, the pulley's response to timing belt motion is nonlinear.