In servo mode with two PMSM motor are not synchronized at the start/stop

Hi, this is my question

I am applying the concept where the ODrive is being controlled by a step/dir pulsetrain from a my motion controller.

When I test the Odrive with two motors one seems to start before the other, this is important because the motors should be synchronized in position, I already check twice (or more) the pulse train and the time difference between one pulse for one motor is not more than 3 microseconds, I don’t think this is the problem FYI.

The problem is presented at start and the stop of the motion in between with a passive incremental controller I could synchronize the movement.

Somebody has already this problem or has an idea how to solve it?

As power electronic engineer, I have the suspicion that one motor when start sucks a lot of current that doesn’t allow to start the second motor, this is posible? because I remember that one of the input variables for the motor control of a PMSM is the dc bus voltage that multiplied by the PWM gives the output voltage of the drive…

And greetings to use the sensorless Estimator designed by Ortega, Praly and Astolfi, Ortega was my PhD director.

Best Regards


Can you record the shadow_count, pos_setpoint, pos_estimate, and vel_estimate of each motor? With step/dir they should be synchronized. Make sure your gains are identical on both motors too. Although, if your steps are very fast then the ODrive will have trouble (it handles the steps in software)