Developer

ArduCopter 2.8 / 2.8.1 released

Arducopter 2.8.1 is now in the mission planner and in the downloads area! Remember to do your MP configuration again after loading this code, since it erases your EEPROM and sets it to the new defaults. 

Note: Issues with APM1 user's level feature not working are now resolved.  If you installed 2.8 we highly recommend you upgrade to 2.8.1 as 430 extra bytes of RAM have been freed up which reduces the chance of memory corruption (although we haven't seen any cases of this on the APM2 at least) .

Note #2: this release has not gone out for Traditional Helicopters until they can be tested fully.  Flip and Toy mode have also not been fully tested.

Improvements over 2.7.3:

  • Improved ACRO mode (Leonard Hall)
  • Improved stability patch to reduce "climb-on-yaw" problem (Leonard, Rob Lefebvre, Randy)
  • Rate controller targets moved to body frames (yaw control now works properly when copter is inverted) (Leonard/Randy)
  • Less bouncy Stabilize yaw control (Leonard)
  • OpticalFlow sensor support for APM2.5 (Randy)
  • DMP works again by adding "#define DMP_ENABLED ENABLED" to APM_Config.h You can also log DMP vs DCM to the dataflash by adding "#define SECONDARY_DMP_ENABLED ENABLED" (Randy)
  • Watch dog added to shutdown motors if main loop feezes for 2 seconds (Randy)
  • Thrust curve added to linearize pwm->thrust. Removes deadzone found above 90% throttle in most ESC/motors (Randy)
  • More timing improvements (main loop is now tied to MPU6000s interrupt) (Randy)
  • GPS NMEA bug fix (Alexey Kozin)
  • Logging improvements (log I terms, dump all settings at head of dataflash log) (Jason)

 

Bug Fixes / Parameter changes:

  • fixed skipping of last waypoint (Jason)
  • resolved twitching when no GPS attached (Tridge)
  • fixed loss of altitude if alt hold is engaged before first GPS lock (Randy/Jason)
  • moved Roll-Pitch I terms from Stabilize controllers to Rate controllers
  • TILT_COMPENSATION param tuned for TradHeli (Rob)


Code Cleanup:

  • HAL changes for platform portability (Pat Hickey)
  • Removed INSTANT_PWM (Randy)


As per usual PIDs are optimised for the 3DR/jDrones quad with 850 motors and 10" props. If you're using more powerful motors/props and are seeing bad flight behaviour in stabilize, start by turning down Rate Roll P in 25% steps.

Please note that on this release we've moved the Roll and Pitch I terms from the Stabilize controller to the Rate controller. There's some evidence that says this can lead to flips on take-off if you move the roll or pitch sticks around as you take-off so we recommend you leave these sticks in the middle until you're in the air.

Please feel free to report issues you find in the discussion below and/or add them to the issues list.

Thanks and enjoy!

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

Join diydrones

Email me when people reply –

Replies

  • I really love Daves' - PID tuning videos!

    I still think that indoor or even backyard PIDs are of minor use for real flight. Yesterday i cruised my flyingfield at 40km/h (gps/minimosd readout) and did some sharp turns. On turning at this speed the copter was a little shaky and i had to reduce the rate P a lot. It would be optimal to have different rate_P for different speeds. In loiter the rate_P could be much higher than in fast forward flight. Perhaps some speedfactor(gps/throttle) in the Missionplanner would be nice for rate_P - or being able to define a rate_P range for throttle/speed. For example: rate_P for hovering 0.160 can be lowered down to 0.1 at 90%throttle. A rate_p - throttlecurve would be great but probably overkill. This could be an advanced feature turned off by default. Just an idea.

    BTW you already know this Pid tuning video?

    https://www.youtube.com/watch?v=YNzqTGEl2xQ&list=UU_Dnn29RQCZKUU...

    So long

    Kraut Rob

  • Got a nice day today so tried to see how Loiter is working with the new ESCs and tuning. Excuse the clumsy flying at first - I need a third hand or at least a neck strap.

    I am doing this on my own and don't have a lot to compare to, so if anyone sees anything obvious I should do, let me know. I am getting a fair amount of altitude drift (no sonar). Wandering position circle is about 5 meters at maximum. I am guessing this is just GPS inaccuracy, but again, if there is a way to attack it, let me know. This is on an X525 frame with 1050KV motors, 10x4.5 props, 20A SimonK ESCs, an APM2 with on-board GPS disabled and an external Mediatek GPS. Was getting 8 satellites and 1.2 HDOP during this test.

  • Developer

    @Dave: you can enable "inertial nav" in the APM_Config.h:

    // Inertia based contollers. disabled by default, work in progress
    //#define ACCEL_ALT_HOLD 0
    //#define INERTIAL_NAV ENABLED                 <- uncomment this line


    #if INERTIAL_NAV == ENABLED
    #define ALT_HOLD_P 3
    #define ALT_HOLD_I 0
    #define ALT_HOLD_IMAX 300

    // RATE control
    #define THROTTLE_P 5 //
    #define THROTTLE_I 0.4 //
    #define THROTTLE_D 0.0 //

    #define LOITER_P 0.50
    #define LOITER_I 0.0
    #define LOITER_RATE_P 5 //
    #define LOITER_RATE_I 0.1 // Wind control
    #define LOITER_RATE_D 0.0 // try 2 or 3 for LOITER_RATE 1
    #endif

    Be careful, it is very alpha... good luck! :-)

  • Flew a bunch of packs today on both quads and things worked really well. Not tuned up as tightly as some here, I am sure, but the auto-misions worked really well - looked like both were hitting the points on the money. Loiter was pretty good even in the breeze (on both types of GPS). RTL brought them back nicely. In one case landing about 3' from start point.

    One of the two quads seems to have some tendancy to rise in loiter, but I am sure I can deal with that once I sort out the alt hold PID.

    Thanks to all the coders and the folks helping with tuning. This is getting fun!

  • I am seeing a lot of unwanted Yaw when I am doing any hard maneuvering. I don't really know how to address it with the PIDs so thought I woul dask the experts. I am pretty sure it isn't the Mag getting messed up by the motors as readings in the MP look correct throughout. If I fly in Simple Mode, I see the same Yaw movement, but it never seems to lose orientation to me.

    Basically, if I do any sort of strong acceleration even just away from me and back, or if I thrash it around at all, the Yaw rotates clockwise. The rain jsut started in again, but if it stops, I'll do a video.

    Any thoughts?

  • Here's a quick, but really boring video of me trying to force my octo to flip on takeoff. It's really boring because nothing happens. ;) I tried to lift it up to one side on the ground as much as I could to ramp up the I-term. But the angle I could tilt at was limited because I have shorty landing gear on now and I didn't want to stick the props into the dirt.



    The only issue I can see is that on the landing at the end of the video, you see that it touches down slightly off level, which results in a strong response from thet attitude controller. It doesn't flip or bounce, but does demonstrates that the auto-landing code needs to be very positive on the final step. Get to whatever the final target height is, level up, and then just shut off the motors.

  • Hi

    I have a funny issue with mission planner; setting waypoints by clicking on the map is VERY unreliable; most of the time it just plain doesn't work. I can set 1-2 waypoints, and after that, waypoint-adding is mostly ignored. Other dialogue widgets work ok, (sometimes I need to repeat them, get them to "take"). Anyone else seeing this?

    The rest looks pretty good; thanks for the hard work guys!

    M

  • Moderator
    Had a near disaster today with an attempted fly-away with my APM2 Quad, still trying to figure out WHY!
    http://www.diydrones.com/forum/topics/my-apm2-quad-attempts-fly-awa...
  • Moderator
    @Steven, a single motor beep/twitch can't be sorted out with PID's. If you enable 'motors' in the logs (see the wiki) you might be able to see a twitch in the output to a motor but if it's something like wiring, connection or a faulty ESC then it won't show up in the 'motors' part of the log. The twitch though should show up in if 'raw' is enabled in the logs as a spike in the gyro or accellerometer logs.
  • Is anyone able to assist with a thread I commented on 2 weeks ago, I think it's been lost in the thread.

    http://www.diydrones.com/forum/topics/arducopter-2-8-released?xg_so...

    Every now and then the aircraft twitches and you hear a slight beep form one of the motor as it does so. It's a HexaCopter.

    I'm hoping it'll just be a PID adjustment that someone can suggest or if there is something obvious in the logs if the twitch can be seen.

    Any help would be appriciated as it does concern me a little when flying as this behaviour doesn't seem right.

    Many thanks,

    Steve
This reply was deleted.

Activity

Jose Araujo liked Jose Araujo's profile
Aug 29
spencer harvey liked spencer harvey's profile
Jul 9
More…