Hi @austin-c ,
You can find the latest M0138 firmware with regen completely disabled here
Also, I added the esc config that i've been using for testing here
For step tests, i have been using pretty aggressive step command:
./voxl-esc-spin-step.py --id 2 --rpm 2000 --step-amplitude 4000 --step-frequency 2.0 --timeout 2.0 --cmd-rate 2000 --enable-plot 1In order to make the ESC not de-sync (due to long demag time of the motor), the following params were adjusted:
max_rpm_delta set to 4000 (you can go lower), to cap the maximum rpm transitions. Although in my test, the step is 4000, so this had no effect timing_advance: 45 -- this is pretty high commutation advance to trigger commutation earlier so that there is more time for back-emf sensing -- high advance wiil reduce motor efficiency and will cause the motor to heat up a bit more sense_advance: 30 -- delay back-emf sensing so that we don't sample back-emf during the motor coil demagnetization more details : https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-esc/-/blob/dev/voxl-esc-tools/doc/low_kv_motor_tuning.mdI had another thought.. What if you use a small battery to absorb the voltage spikes? Basically hook up a 6-7S battery with a beefy Schottyky diode (10A) set up with Cathode (negative) pointing to the battery.
you will have to make sure the power supply voltage never exceeds battery voltage + diode drop. you will also need to make sure that you don't over-charge the battery with repeated spike absorption.. It is possible to have some sort of self-discharge circuit to slowly discharge the battery to a certain voltage (using a Zener diode + resistor or something similar).Anyway, just an idea..
Try out the no-regen firmware..
Alex