3D Robotics
We've had the ArduPilot 2.6 code in the repository for a while for alpha testers, but it now seems solid enough for wider testing. So it's now available in an easy-to-use zip file for everyone to download and try. Doug Weibel, the main author, has described many of the new features here, but here are some more highlights:

New Features of ArduPilot 2.6:
  • Supports IMU or thermopiles
  • All-new control laws. PI and D for all functions
  • Two fly-by-wire modes: A (with airspeed control) and B (without airspeed control)
  • Designed for ArduIMU code 1.7 if you're using the IMU (upgrade if you haven't already)
  • Support for absolute pressure sensor and magnetometer add-ons to IMU
  • Optional performance reporting; sends IMU quality data (gyro saturation, etc) to ground station
  • Experimental support for autonomous takeoff and landing!
Some of this is documented in the code and the configuration comments. I'm in the process of updating the manual to reflect all the 2.6 changes, so please be patient for the next few days until I'm done.
E-mail me when people leave their comments –

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

Join diydrones

Comments

  • thanks Doug for your help!

    I've removed foam I've added between IMU and the airframe and the problem has gone :)
    no more strange behaviour even with full throttle !!!

    greetings,
    cholo
  • Developer
    @Cholo - vibration can be a very big concern with the ArduIMU hardware. Try some ground tests if practical. Hold the plane with the engine running and watch the attitude telemetry. Slowly sweep through the throttle range and watch for the attitude to deviate from the actual attitude of the plane. I have seen deviations of 30 degrees due to a badly balanced prop on a small electric plane, so if you are using a gas or nitro engine you may have to work with getting the airframe as smooth as possible and then mounting the IMU in a suitable manner to dampen vibration.

    On the RTL issue if you can use the latest 2.6 code in the repository and set GCS_PROTOCOL 1 to get the alternate telemetry stream I would be happy to look at the data and help you debug.
  • > I've got some problems with the latest version (Ardu1.6 + Imu1.7).
    > 1. Stabilize and FlyByWire_A modes works ok but I've no manual throttle (engine is on but at about 20%).
    > 2. In RTL mode, it seems direction of servo moves are reversed (at least pitch) because plane goes down
    > just after I switch to RTL.

    after today's tests I have some new findings.
    problems exists with stabilize and flybyware either but only when I set too much throttle (or maybe plane is going too fast?).
    in that case plane is turning almost vertically to the ground or banks far more then HEAD_MAX.
    as I mentioned previously I was already flying with that setup but I have:
    - uploaded newest Adupilot/Imu code,
    - added baro and magneto to the imu (currently turn off with config),
    - inserted some foam beetwen imu and plane's frame.

    I'll perform more tests with roll and pitch displayed on the osd because it seems imu readings are distorted by vibrations from the engine ?
  • Developer
    Delete Comment Hey Doug,
    I flew 2.6 for the first time today and it went great. I haven't flown waypoints yet; just rtl, loiter, fly by wire A, and stabilize. Everything worked with the default gains. I did, however, make a mistake and forgot to disable the airspeed sensor which didn't have a pitot tube on it. When I went to RTL the plane went wild which I quickly diagnosed as the throttle going full on. Otherwise everything went great.

    Chris had some trouble because he was using a Z sensor. We disabled it and were able to fly normally. I think the sensor's scaler value isn't getting set properly. I will change the code to make that more reliable.

    Overall it worked great, so thanks!
  • Developer
    Sure, we can do that. I'll probably change IMU to match AP, since AP was first.

    Done - R128 of ArduIMU
  • Jason and Doug, is there any chance you could get the #define GPS_PROTOCOL numbers to match in ArduPilot and ArduIMU? I know it's not a high priority thing, but it's kinda confusing when NMEA = 0 on ArduPilot and NMEA = 3 on ArduIMU.
  • #define BUF_LEN 40 needs to be changed to #define BUF_LEN 56 or NAV_SOL will never pass the checksum in GPS_UBLOX.
  • Developer
    Sorry about that! It was some unfinished code that I was working on. I commented out the offending pieces. It shouldn't affect any current behavior which is why I forgot to compile before uploading.
  • Developer
    1067 is some changes Jason Short uploaded today. Looks like he didn't try compiling after merging his changes.... I'll go through it and clean it up when I can, but it won't be tonight...
  • I got compilation error that max_roll and stabilize AP() "was not declared in this scope" (main ArduPilot_2_6 sketch). This is for r1067 code
This reply was deleted.