Anti cogging for hoverboard motors

Hi everyone,

I am using odrive 3.6 with hoverboard motors. I am following this website Hoverboard motor and remote control setup guide — ODrive Documentation 0.5.4 documentation

But I need to run the motors at low speed. But robots are cogging at low speeds, they are not running smoothly. I want to ask how motor can run smoothly at low speed during the calibration and not when I set velocity to 0.4 or lower by myself.

Unfortunately since hoverboard motors use hall sensors (which are extremely low resolution), their velocity control precision is quite limited at lower speeds. You can try tuning vel_gain/vel_integrator_gain, however there’s definitely limits to what you can do. The Botwheels from the shop have both hall and incremental encoders – new ODrives such as the ODrive S1 can use both halls and incremental simultaneously for high precision position and velocity control.

Thanks for the reply. Yes, definitely for my next project I need to buy these motors. But for now I need to run hoverboard motors. So if I add as5600 magnetic encoders, what kind of changes do I need to do in order to get it work at low speeds, could you please help me?

Thank you…

AS5600 isn’t supported by the ODrive, they’re just too slow. Something like an AS5047P could do it though. From there, just switching the encoder type used in the ODrive configuration should do the job – it’ll be night and day.

Understood, thanks for the info. Can Botwheels used with odrive 3.6 and ros1? I saw that you have drivers for odrive s1 in ros2 but not for odrive3.6. Sorry about being away from the topic but what do you prefer as controller with Botwheels for indoor and outdoor autonomous navigation using ros or ardupilot. I want to buy full kit.

Botwheels can be used with v3.6, but you can’t use both the hall and incremental encoders at once – you have to choose to use either the incremental encoder (high resolution but requires calibration on startup) or the hall encoder (low resolution, no calibration on startup).

I personally would choose a rPi 4/5 or a Jetson Nano these days. The Botwheel Explorer comes with all the ODrive mechanical parts needed (as well as an additional parts list and assembly instructions) for an AGV, you can either buy one outright or check out the components it uses!

The most important part here is ROS or Ardupilot compabilities. Because for me the most important part of robot in this case is odometry data. So before buying we need to be sure. We really just want something more plug and play rather than writing the drivers from scratch.

Thanks a lot for the replies again…

In that case I’d definitely recommend using the ODrive S1 with a Raspberry Pi, since we have a native ROS2 driver for S1/Pro/Micro, including an example specifically for the botwheel explorer.

Glad I can help!

1 Like