You guys need to distinguish throttle preset from cruise control.
Throttle preset is typically a functionality of the controller. The Enertion/Backfire controller offers throttle preset, which means the controller will just keep sending the same pulsewidth it was sending at the point you pressed the C-button. It is not aware of your current speed and does not adjust accordingly. When you hit a hill, you’ll slow down unless you release the C-button, speed up and repress the C-button.
Cruise control is a closed loop speed control and cannot be implemented in the controller because the controller doesn’t know what your speed is.
The VESC has built-in cruise control logic when using the Nyko-Kama nunchuck.
When you press the C-button, the VESC takes your current speed as the setpoint and autonomously adjusts motor current in order to maintain that speed. When you hit a hill, the VESC will increase current to keep you from slowing down.
Using the Nyko Kama, when you keep the C-button pressed and accelerate, the VESC will automatically take your new, faster speed as the new setpoint.