Anti-cogging and Joint Limits

Hello Fellow ODrivers,

I have built my robot, a SCARA, using 4 ODrive S1s and 4 D5065 motor. I wanted to make the movements smoother. I assume implementing an anti-cogging measure would help with this but I am unsure I can use the anti-cogging method outlined in the ODrive docs since my robot is already built and there are hard limits on the joints.

The docs mention that the axis will spin quickly in one direction and then in the other to map out the “detents” of the motor but is there a way to set a limit for this mapping process so that my joints do not go over their physical limit?

Hope to hear back soon,

Emi

Hi! Unfortunately, the motors must spin freely for a few minutes. Is it possible to disconnect the motors/joints?

What encoders are you using? It may be possible to mitigate much of the cogging force via better / faster tuning. There’s also a weirder, janky way that may be possible, but that depends on how much work you’re open to doing :slight_smile:

Hey Solomon,

We are using AMT24 absolute encoders on the load side. It would be very annoying to decouple the motors from the robot axis at this point.

I am always open to weird and janky solutions. Would love to hear what you got for me.

As always, thank you Solomon.

What encoder are you using for commutation?

The tried and true AMT102-V

Following up on this