The recovery speed is currently set to the minimum PWM speed. This is fine when the terrain does not change, but if the minimum PWM is set for asphalt, and the rover wanders to grass, the speed may be low enough to cause a stall. Add a configuration parameter for a recovery speed factor which is multiplied by the minimum. For example, if the recovery speed factor were set to be 1.5, then the recovery speed would be the minimum PWM percentage times 1.5.
The recovery speed is currently set to the minimum PWM speed. This is fine when the terrain does not change, but if the minimum PWM is set for asphalt, and the rover wanders to grass, the speed may be low enough to cause a stall. Add a configuration parameter for a recovery speed factor which is multiplied by the minimum. For example, if the recovery speed factor were set to be 1.5, then the recovery speed would be the minimum PWM percentage times 1.5.