S1 Can’t reach higher velocity

Hi Guys,

Im using a Nanotec BLDC motor with an Odrive S1.

I just tuned my PID for velocity loop in the web GUI and i’m very happy about how smooth the Odrive controls the motor.

But I have a problem with the velocity.

The rated speed of the motor is 4840 rpm. But it looks like the odrive is limiting the speed on one way or another.
The max velocity that i can get is around 12 turns/s. If my math is correct this should be around 720rpm.
(The motor drives a 100g flywheel. The mass is about 50mm from the axis.)

I have already tried the next things:

  • Increasing like every limit that is available in the GUI
  • increasing PID gains

Does anyone know how I can solve this problem?

Kind Regards,


Are you getting any VELOCITY_LIMIT_VIOLATION’s? 12rps is the default ceiling here (vel_limit_tolerance * vel_limit).
Alternatively you could be hitting the current limit, or a temperature limit, it’s hard to say without more information.

How does Iq compare to <odrv>.<axis>.config.motor.current_soft_max, or <odrv>.config.inverter0.current_soft_max?
Are you approaching a thermal limit?
Are you reaching the limits of your power supply?