I have been using VESCs for some time now but am stuck on a problem I haven't seen before. I suppose I've discovered a bug in the VESC firmware. Basically the issue is everything appears to be working fine, until I yank the throttle up to full reverse (1 ms input PPM pulse length). After that it stays running at full reverse throttle even after I've returned the throttle to mid-stick position (1.5ms pulse length).
Trying to move it in the other direction (eg 2 ms pulse length) doesn't usually fix it immediately. After a lot of moving the stick around sometimes you can get it out of the stuck state.
I've verified using a scope that my radio receiver is giving the expected pulse lengths to the VESC, so the problem does seem to lie with the VESC itself. While in the stuck position, VESC tool reports -100% duty cycle even when I can see on my scope that the radio is setting it a 1ms pulse.
I have been poking around in the firmware sourcecode looking for workarounds and have confirmed that this problem exists with and without the "median filter" option enabled and with and without the "safe start" option enabled.
Once its in the stuck state, things you can do to unstick it include:
- Sending a new app config to the VESC
- (Sometimes) a lot of moving the stick around
- Unplugging the radio from the PPM input (ie removing the source of control pulses)
Here's my setup:
- - VESC 4.12 hardware (a FlipSky Mini FSESC4.2)
- - Firmware 3.58 (I have also tried older firmware back to 3.34)
- - FOC mode with auto-detected parameters
- - PPM input in duty cycle control mode
- - NTM PropDrive 35-42 1000kV motor
Steps to reproduce:
- Set up in FOC mode with PPM duty cycle control
- Send 1ms pulse length (full reverse throttle)
- Return pulse length to 1.5ms.
- Motor is still running at full reverse throttle. vesctool is still reporting full reverse throttle.
Any suggested workarounds or things I should be trying here?