Why is my motor not rotating at the expected speed when using the TMCM-1290? (NOTE THAT THIS ONLY APPLIES TO TMCL FW VERSIONS 1.01 AND EARLIER)
The TMCM-1290's firmware (V1.01 and earlier) scales the velocity Axis Parameters based on a 16MHz clock. Even if a different clock is used (such as the internal 12.5MHz), the unit scaling used in FW versions 1.01 and earlier always assumes that a 16MHz clock is provided. As such, if you are using a different clock speed, you will need to scale your velocity values accordingly.
As an example, if you want to rotate the motor at 1RPS (assuming a 1.8° stepper motor and 256 microstepping is used):
The TMCM-1290's firmware (V1.01 and earlier) scales the velocity Axis Parameters based on a 16MHz clock. Even if a different clock is used (such as the internal 12.5MHz), the unit scaling used in FW versions 1.01 and earlier always assumes that a 16MHz clock is provided. As such, if you are using a different clock speed, you will need to scale your velocity values accordingly.
As an example, if you want to rotate the motor at 1RPS (assuming a 1.8° stepper motor and 256 microstepping is used):
With a 16MHz external clock (which is what the firmware assumes), the unit for the velocity axis parameters is in PPS (pulses per second, which is equivalent to microsteps per second). In this case, you'd set the Velocity Axis Parameter to 51200 in order to achieve a speed of 1 revolution per second (200 fullsteps/rev * 256 microsteps/fullstep = 51200 microsteps per revolution).
If the internal 12.5MHz clock is used, you will need to scale the velocity axis parameter value in order to achieve the same rotational speed. In this case, you'd set the velocity axis parameter to 51200 * (16MHz/12.5MHz) = 65536 to achieve a speed of 1 revolution per second.
