Effective_torque_setpoint limit

i am running an odrive S1 with a M8325s motor and the onboard encoder. I have a microcontroller sending a canbus command correctly interpreted as a torque input. The system behaves as expected and exerts the requested torque, except that the effective_torque_setpoint stops following input_torque when input_torque is above 0.5 N.m. Any idea what could be limiting the torque? I have already verified every current limit i could find. The behavior is similar when commanded from the dashboard. i can set it to torque mode and set setpoint at 4 N.m but the current seems to be limited to about 4A and the effective torque setpoint does not go above 0.38 approx. However, when i switch to position or velocity it has no problem going up tu 15A.


here is an image to help troubleshoot

In torque control mode, with torque mode velocity limit enabled, the ODrive uses vel_gain to derate the torque versus speed. With high torque motors, this can cause a torque limit even at standstill – see here for more information: Controller — ODrive Documentation 0.6.11 documentation

I’d recommend either tuning your vel_gain, or disabling enable_torque_mode_vel_limit – note that the latter can have safety considerations (as it removes the ODrive’s ability to limit the speed of your motor), so I’d strongly recommend just tuning your vel_gain.

Very interesting. Tuning my velocity gain effectively corrects the issue. I do want to keep the speed limit since this is a demo in which the user operates a lever on the motor to make it behave either as a damper or a spring in rotation. Many thanks.

Great to hear! Please let me know if there’s any other way I can help.