3D Robotics

Jason Short and I had great day of testing and improving code (and putting in a pretty good T3 contest time!). Once again we were at the RC club in Point Richmond, across the Bay from San Francisco. Jason was just back from a skiing vacation where he tangled with another snowboard to the tune of 17 stitches on his ankle (I saw them: ouch) but fortunately UAV development doesn't require a lot of running.

You can see what flight testing looks like above. I fly, he watches the telemetry and then makes changes in the code for me to test.

Here's the rundown of the day's progress. You should see all this reflected in the code in the repository in a day or so:

The Good:

--Navigation is now locked in pretty well. Straight lines to waypoints (no more snaking) and pretty tight turns between them.

--Manual throttle control now works in autopilot mode! Just like you can "nudge" the plane's direction with RC controls while it's flying autonomously, you can now speed it up or down. Excellent for finding the best speed for T3 runs!

--The funky thing with one of my Futaba FASST receivers working and the other not was solved. Turns out that one of them outputs the PWM on all channels in serial, and the other in parallel. Who knew? Anyway, ArduPilot can handle either. If your radio does something weird like only letting you fly left, not right, edit this line in the config file:


#define RADIO_TYPE 0 // 0 = sequential PWM pulses(Fasst, Spektrums), 1 = simultaneous PWM pulses (Corona RP8D1)

--We flew the FunJet in RC mode (although it has an ArduPilot, we haven't set up elevon mixing yet). Amazing performance: fast, rock solid and incredibly maneuverable. Once we get it dialed in with the AP, we're going to be looking at sub 10 second Sparkfun runs ;-)

The Bad:

--We still don't have altitude hold working right. We finally got it to display the right altitude in the ground station, but for some reason it's not holding. Jason thinks this is just a matter of tweaking throttle and pitch gains, but for now I had to trim the pitch down manually for the T3 trial runs just to ensure the plane didn't get too high during the autonomous portion.

--We're getting different results with different sensors. I'm flying with FMA sensors, and Jason was flying with DIY Drones sensors. The calibration routines should mean that as long as you've got a matched pair it shouldn't matter where they come from. But for some reason it still does, and different sources require different gains in the code. We'll figure out a way to make that go away...

The Stupid:

--I almost crashed one time by launching with stabilization accidentally on, but not yet calibrated (it takes a few second to calibrate in the air). Also we found that if you happen to power on in stabilization mode, it messes up your waypoint settings (for some reason it thought it was starting on waypoint 7), so for now just don't do it until we can find and fix that bug.

--I also almost crashed launching downwind. In my defense, the wind shifted direction. But still!

--I nuked another Xbee by powering on with the signal line attached. I can rescue it, of course, but I CAN'T WAIT for ArduPilot Mega to make this problem go away with the dedicated serial lines.

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • Developer
    Jason, Good save, have you had land in the ocean yet?
    Sgt Ric, a COA would needed if I want to fly above 400' at the park, but AFA should have COA wavier or approval to fly to 1000' around AFA. and out to aux landing strip.
  • Developer
    On my last plane I uses carbon spars about twice as long as the regular spar. I thought I could get away with the stock spar for AP testing. I was very wrong. If I had let it spin one second longer the wing would have floated down separately.
  • Developer
    I will wait for this rev also,
    I'm so glad that you guys got good fight data to keep improving the code, It will be awesome when incorporated into ArduPilotMega with 8 channels: Flaps, PTZ gimbals, picture trigger, Uplink, OSD & more!
  • 3D Robotics
    @Doug: Excellent. I'll roll that out first on the SkyFun with the IMU, then wait for you and Jason to merge your code bases so I can use it on the FunJet (which uses thermopiles)
  • Developer
    @Chris - I have reworked the whole elevon thing from scratch in 2.5.1 and it is working well for me. I beleive I have it generic so it will work with any V tail or delta or flying wing or ... as long as you get the parameters in the header file right.
  • Developer
    I wouldn't like to see my Stryker wings fold in high g turn, I think its strong enough, but maybe not!
    I will find out soon enough...
  • Moderator
    why would you apply for a COA when your flights are recreational?
  • Moderator
    I'm not only using carbon spars in both my EZs, but in the second one I sharpened the rod ends and cut notches in them, so it worked like a drill bit to extend the holes for the spars another 6" into each wing tip.

    I had seen enough comments in rcgroups to worry about wing flex (and folding).
  • Developer
    I might try to get some help from AFA but, I may need to provide a COA first... They won't approve of my flight test range, I have crashed about 7 times using ArduIMU and IR sensors, but no waypoint or AUTO for Elevon setup, Stryker II will be air worthy tomorrow! Dr, Brant @ AFA is investigating "Robust Reliable UAV Platforms" maybe he would be interested in my efforts...
  • Developer
    If its any consolation, I bent my new EasyStar wing last night after a terrible spin. I was able to land it but from now on I'm using full carbon spars.
This reply was deleted.