Jason is travelling this week, so I'll take the helm for the next software release post. 

UPDATE: the motor remapping thing was confusing everyone, so we took that out and returned to the regular motor mapping. That means that APM 2 users with Hexas and Octos should wait for the next version. APM 1 users should be fine with any frame.  

NOTE: Hexa and Octo users: there have been motor mapping changes that may affect you. Please don't upgrade until we can update the documentation to reflect the changes. This should happen by the end of the day today (Feb 1).

ArduCopter 2.3 is now available in the Mission Planner.  This is the next revision of the ArduCopter 2.2B6 code, which is perhaps the most tested code we've ever released (1288 comments in the thread!)  and certainly in my experience the best code, too. 

The default PIDs are optimized for a 3DR/Jdrones quad with 850 motors and 10" props. If you're using more powerful motors/props, start by turning down Rate Roll P (default is 0.14, so start by turning it down to 0.1. In general tune PIDs in 25% steps).

Now that we've got solid code out there, we can turn to collecting suggested gains for standard frames, and a better guide to how to tune PIDs for your unique setups. 

Here are Jason's note on the latest changes (mostly from 2.2B6)

A dampening term called STAB_D has been refined. A D term for all of the Rate based control loops has been added based on Igor's work. Landing for Baro and Sonar has been refined based on JLN's work. A slightly new approach to Loiter and Navigation is being used to try and linearize the pitch and roll for rate control. It tends to use lower gains, yet has a more assertive response in the air.

STAB_D : This is the gyro accretion dampener. This can remove small wobbles during sharp changes in angle commands. Making this too high can have a negative effect in performance and add a memory effect that can cause temporary loss in control. The in flight tuning is ranged so you are just below that effect.

If you haven't noticed before the control loops are in two stages. The first is a PI stage that converts some sort of position or angle error into a desired rate. These generally do not need to be tuned. They are more of a user preference on how fast you want the copter to perform a motion. 

The second stage is the actual PID loop that needs to be tuned for the copter. This converts the desired rate into a motor command of some sort. I added a D term based on Igor's recommendation to the PI's for each rate controller. These should show up soon in the mission planner for the release. I cannot give you a concrete answer for how to tune the D terms, because they each depend on their function such as alt hold or loiter, etc.

Still, the absolute most important term is always the Rate_P term for each loop. Start tuning here.

The default PIDs are in the what flies great for a stock jDrones/3DR Quad with the purple motors in X mode.

Note the Mission Planner does not yet highlight these D terms on the main tuning page (it will soon), but you can find them and modify them on in the Parameters list.

Autolanding should now work well (see video above) and the Tri servo issue is now resolved. 

The code should now compile with Arduino 1.0 (thank, Randy!), but remember that you need to use the "relaxpatch" version of Arduino in our downloads section

[Update: we've reverted the below. See update at the top of the post]

Important for Octo users:

We've changed some of the motor orders for some more exotic airframes. We'll be updating the docs on the Wiki in a day or two to reflect this. Pat Hickey explains:

As before, the hexa plus APM2 motor setup has changed from the ordering [1, 2, 3, 4, 5, 6] to [ 5, 6, 1, 2, 3, 4 ].

The Octa V layout for APM2 is:
6            4
  2        5
    8    1
      3 7
Motors 1 through 4 spin clockwise, and 5 through 8 spin counterclockwise.
Support for roll/tilt camera control on APM 2 should be coming in the next version. Traditional Heli will also be updating to this latest code as well once we track down a memory issue. 
As always, you can see a complete list of changes in the changelogs.

Views: 62504

Reply to This

Replies to This Discussion

Can someone please clarify.  According to above update "the motor remapping thing was confusing everyone, so we took that out and returned to the regular motor mapping. That means that APM 2 users with Hexas and Octos should wait for the next version. APM 1 users should be fine with any frame."

Is this still the case.  I see people talking about getting their Hex's in the air.  Is anyone doing this with APM2 right now?  Will the above update be updated when it is ready for Hex's on APM2?

Thank you.

Not when I was trying to positively observe that behaviour. At other times I did, and most of the time it did not take, so that seems inconsistent as well.

Hello Bill, I think there are good news for the Loiter, I testing with AeroSim the Loiter of the 2.3.1 that I think will come out soon, and has an accuracy of 1.2 meters of radius, with and without wind, I would say excellent.
I can not test it in flight for bad weather conditions, but someone in the dev team is already trying.
Reading your report it would seem that your gps has some wrong readings, check if your firmware is the latest (V1.6).
Stay tuned...

The question as always: I properly connected the esc/motors to APM?

there is some question about this, be patient, it will be clearer when it comes out the version 2.3.1 and will be updated the wiki.
The most obvious question is always: I properly connected the esc/motors?
And it's the same question I did it just now, when I wanted to make sure I had my well connected, and going to the "motor test" in the CLI there I understood almost nothing with my "X8".
To resolve this dilemma definitively I also proposed a new scheme for "motor test" of the CLI.
In the code that I have changed for "X8" frame just by looking at the quad to see if the motors are connected properly.
I've tested done on my "X8", where activating the test engines have the following logic rotation:

Front Left Up
Front Left Down
Front Right Up
Front Right Down
Bottom Right Up
Bottom Right Down
Bottom Left Up
Bottom Right Down

The firing order engine in my opinion should be done in a linear fashion, or you may not understand it.
In the case of configurations to "+" is taken as a first motor that in the top, and clockwise spin others.
In the case of configurations to "x" is taken as a first motor that in the top left, and clockwise spin others.
In the case of configurations like "X8" or "X6" is taken as a first motor that in the front left up, then front left bottom, and clockwise spin others with the same logical.
In the case of the V8 just declare a standard and put it in the wiki, that's all.

Each engine starts to idle for half a second, only to induce a little rotation of the propeller with a minimum of throttle, not at all dangerous.
There is a pause of 3 seconds between the engine and the other, and when you close the ride there is a pause of 5 seconds, so you realize what is the first engine of the chain.
In this way do not even need to look at a picture or wiki, instinctively and immediately understand the logic is if the link is correct, in less than one minute and finally.
I hope that the suggestion is taken into account, both for APM1 and APM2.
Easy, instinctive and immediate, and preventing take-offs associated with bad engines.
What do you think?


-=-- Marco -=--
(AC Dev Team)

Marco, I look forward to 2.3.1, however, I have a horrible feeling that this bug has been with us for a while as I think that it has been happening to me with the 2.2 releases as well, unless as you suggest that it is a problem with my GPS. How do I check the firmware on the GPS module, and how do I update it? I bought the kit in December, so it is pretty recent. Regards, Bill

I have not done that myself, but this is probably the place to start:


Do you have any trim set on the cyclic? I'm wondering if you end up with the 'loiter_override' flag set and not clearing, so it just keeps updating the loiter waypoint.

Do you have a log?

When to next afternoon, I will test loiter 2.3.1 again......... 

Sounds good Marco. I like simple and intuitive concepts.

Hi guys,

just got a chance to try out 2.3 on my APM 1 today and was well impressed. Only tried Alt hold but as you can see from the video it is rock solid and these are default settings, just some trimming and that was it. Sorry for the dark video in parts very dull here today. Hope to try Loiter and RTL soon.

3 mistakes ONLY applies to airplanes (IMO).  In airplanes, I totally agree.  
Especially when taking a plane for a maiden flight so you can trim without sweating it.  

All the trainers I have used for heli's get you to hover from all 4 perspectives just above the ground (1-3') then you are ready to get some altitude, because you can handle all beginner orientations..  I am a full newb to multicopters, but have flown r/c planes for years.. 

very nice flight

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service