Synchronising two ODrive


Currently I am working on controlling ODrive Pro with a joystick via CAN Bus. I use an STM32 microcontroller to process data coming from the joystick and then it sends out velocity commands to the ODrive. So far, everything seems to work just fine.

I would like to add another motor to this project, so that the second motor turns exactly with the same speed as the first one. So my question is: How could I achieve that the two ODrive Pros are synchronised?

I have read about the mirror input mode, but the documentation mentions that ODrive Pro does not support this feature.

Iā€™d really appreciate the help. Thank you!

Hi Viktor,

The simplest way is to send the same velocity command to both ODrives.
I presume you tried this and had issues with them staying in sync? Do you also need the angle to stay in sync, or just the speed (and some small angle drift over time is ok)?

Hi Oskar,

Thank you for the reply! The angles should be in sync yes, since I am planning to build a skid-steer mobile robot. I will try sending the velocity commands to the motors one after the other, and see the results.

Ok I see. I think in a skid-steer application, there will be drift against the ground even if the motors stay perfectly in sync, so I would recommend using an additional layer of localization and correction either way.