In our robotics-like application we use RPM mode while adjusting current limit - we customized it to allow dynamic modification of the limit by terminal command. I noticed that if the current limit is set below the actual current, the duty cycle jumps to the highest value (95%) and stays there.
For instance, say current limit is set to 1 Amp, and the motor is spinning at 1000 ERPM drawing 0.3 Amp. If I change the limit to 0.2 Amp, the duty cycle jumps to 95% and motor speeds up to max.
Any ideas ?