Only works for GPIO (direct control) movements.
Formula result will be used as length of each pulse in nano seconds.
In the best case senario formula will run before each pulse, but to prevent delays it run less frequently in fast speeds.
Startup speed will be used until formula result become available.