Tired of crashing out early in a race and stuck upside down? Too lazy to walk to your quad to flip it over? I got a solution for you…
The best way to do the anti-turtle was to use Dshot commands (more info on dshot here: https://blck.mn/2016/11/dshot-the-new-kid-on-the-block/) with no loss of throttle resolution (info in background). Basically it is a digital protocol that left some spots to do commands. Unfortunately only Kiss ESCs have implemented some of the commands (I don’t have any kiss ESCs so I can verify this). So I set out to modify blheli_s code to accept Dshot commands. Currently there is support for reversing the motor direction and making the ESC beep at various tones.
Github repo with updated hex files here:
Reverse motor direction
Recently my pull request (https://github.com/betaflight/betaflight/pull/3267) got accepted in to the master branch of betaflight. I’ve been quite happy with how it works have done lots of testing flipping back over in the field. To enable this the modeswitch “Disable 3d switch” is currently being used.
Update: On the betaflight 3.2 RC it is now called “dshot reverse motors”
When this is enable it sends the dshot command to all the motors to tell them to all reverse directions. This has to be done in the unarmed state. Usually to flip over, I’ll flip the “disable 3d switch ” and wobble in the direction that I think will get me upright, flip over, disarm, unflip the switch, rearm and fly away. With this switch flipped you could even take off upside down and fly around.
The other useful thing I added is to be able tell the ESCs to beep the motor (like on start up) when the beeper switch is flipped. Say goodbye to using an actual beeper to find your quad. All you have to do is add a beeper range on a switch and flip it when you want to find the quad. I find it helpful to increase the beep strength in blheli configurator to hear it even when it is far away.
My first attempt at fixing this was to set the quad involved setting the ESCs and FC in 3d mode and adding an additional switch that would reverse the motors on demand. There are various way you can do this, with the mixer on the transmitter or I had test coded up in betaflight to have a seperate mode switch to reverse. This was great because you could fly 3d without center throttle and can switch 3d mode in the air. I used the right momentary switch on my taranis. There are 2 problems I ran into with this. The 3d mode on the dev build or betaflight 3.2 seemed extra swimmy even when you were just using the positive range. This may be a betaflight bug… 2nd problem is that you lose 1/2 your FC to esc resolution… which arguably may not really matter for most people (2048 to 1024 steps in dshot), but people hate to hear they are getting 1/2 of something.