Default Motor PID Values?

Does anyone know the default values for the integrated motor PID? @jpearman ?

Er, yes, but they wouldn’t mean much without understanding the algorithm used. We didn’t expose access to the PID values in VCS, are you using PROS ?

Yes, I’m using pros. My goal is to adjust the integrated motor PID to reduce jerk in my drive during autonomous. Im planing to use the setPosPIDFull command but I don’t have a reference point for what to set my values to as get command does not display default values. Thanks for your help

@jpearman Will the algorithm be documented sometime soon? I have always explained to my teams that tuning is a big part of making a PID work properly within the system, so seems like this should be something that happens. Considering that there is a ton of telemetry available from the motors, tuning the motors to take full advantage of the “smart” part seems reasonable.

Even without full knowledge of the algorithm, knowing default values would save a lot of time as the trial and error could at start from a known part. Any extra info on how those values were tuned/selected would be a bonus!

In the meantime, Robot Mesh Studio C++, PROS, and VCS (through a jpearman secret sauce post) can all do direct voltage control of the motor. You can use those methods to write your own PID, where you won’t have to guess at the algorithm and proper values.

Sure, but the default PID can be nice. If the ability to set PID constants is exposed and a user wants to lower kp by 5% they should be able to do that. It is a reasonable request to have the starting values so people can start tuning from a safe set of constants.

Sorry @jpearman I gotta agree with other people here, the default values without any explanation is better than what we have now.

1 Like

The firmware team still hasn’t decided/checked to see if any combination of values may damage a motor, that’s always been my biggest concern. There are more numbers than just the usual Kp etc. constants. The PROS team was also helping with this last year, but we haven’t discussed it in a while. Once we get 1.0.6 done, I’ll get with other team members and we will discuss the best approach to releasing these publicly.


From what I understand from my teams, people using PROS are already modifying these, just doing so blindly. The potential for damage is already there, and arguably, could be worse since they have no guidance to start with. Those commands should never have been made available in VexOS to PROS if the concern is that high, but that seems moot at this point.

I see no practical reason to hold them back, as PROS already has warnings to modify at your own risk.

1 Like