Thrust Reversing Setup on the Anaconda Platform

To begin here is a quick demo of the thrust reversing in action so you can see the uses for it.

What does the thrust reversing solve you might ask?

Well, I was having an issue with the aircraft remaining on the runway during landing as it would roll off the end of the 200’ runway every time. I had a few options for slowing down then aircraft, they were adding servo or magnetic breaks to the landing gear, adding a drag parachute to deploy upon touchdown, or setting up some kind of arrestor hook system, and the thrust reversing. After looking at each option I weighed the benefits and drawbacks. Breaks would help with takeoff and landing as you could set them then throttle up and release them to get an accelerated takeoff. The drawback of the breaks is weight and more electronic systems running, so I looked at the other options. The parachute idea is neat, but based on my experience with the c-astral Bramor platform the complexity of a parachute system usually outweighs the benefits. And for the arrestor hook, it would be lightweight and would help slow down the aircraft in a shorter distance than the rest of the options, but it would take time to set up every time prior to flight.

For all the drawbacks to the other options, the reverse thrust was the only logical solution. This could be done with the Tekko32 F3 Metal ESC (65A) I had in the aircraft after flashing the latest BLheli 32 and changing the settings.

The results of adding the thrust reversing were slowing down the landing distance from 225’ feet to 150 feet. The data from the flight controller shows this.

From the image above you can see the one U-turn that is off the right end of the runway, that was from a landing without reversing the thrust, the 2 U-turns right of the circle are from reverse thrust landings. Below is a side-by-side video of the landings.

So how does one go about adding reversing to an ESC? Well, I used BLHeli 32 Suite, which can be downloaded from BLHeli/BLHeli_32 ARM at master · bitdump/BLHeli · GitHub. I attempted to follow the Ardupilot pass-through for BLHeli, but I didn’t have any luck with it being able to read the ESC settings, it could still control the ESC through. So I wired up a servo extension lead to a spare flight controller I had and put the latest betaflight on the FC. Then the pass-through to BLheli worked flawlessly. The most important change is the motor direction setting, as you want to change it from Normal to Bidirectional Soft. That adds the 3D ability to the ESC, allowing the motor to spin in either direction. Then I changed the center throttle to 1100 from 1500 so I have higher resolution in normal flight as I don’t need high resolution in the reverse/beta range. The seting that I used in BLHeli is below.

Once the BLHeli is set up there are a few changes to be made in pixhawk cube to enable reversing. They can be made by following the ARDUPilots guide here Reverse Thrust Setup — Plane documentation (ardupilot.org) I set it up on stabilized mode with the momentary switch on my Radiomaster T16 acting as the trigger to switch the throttle from normal operation to reverse operation.

I did some further testing and after 4 takeoffs and reverse landings the ESC overheated and shut down, so I will be working on a cooling system for it as well as installing a better capacitor to help filter out the noise from switching the motor direction. Up next for the Anaconda is more autolanding, and this is a step forward towards precise autolandings for the platform. Hopefully, this was able to help you with setting up reversing on your fixed-wing uas, any feedback is appreciated

- Nicholas