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 42 58 13 7Motors 1 through 4 spin clockwise, and 5 through 8 spin counterclockwise.
Great, thanks for that! I notice you have gone for default setup and really softened the rate_***_P's. That's how i got my best results with this setup. I found it almost impossible to get any rate_D in. If you get the chance could you see if say 0.004 up to 0.012 rate_D (and no stab_D) causes the quad to 'twitch' in flight. If not, I'm rebuilding mine this week.
You also have massive props for that frame, i'm surprised they don't touch!
@ Dave - yup you can hear the quad go quiet once everything is balanced.
One more great trick, after you've balanced motors and props assemble everything. Then just arm one motor (with prop) at a time and spin it up holding the frame down. This way you see how that arm is contributing to any vibration. If it's shaky (and you are sure the shaft and prop are straight - by looking at them from above when spinning) try a bit of tape on one ond of the prop. Does the shaking get better or worse? Better? - a bit more tape till it starts getting worse again. Worse? Peel the tape off and stick it on the other end of the prop. This way you are balancing the prop, the adaptor and the motor as one unit. It gives you that extra bit of accuracy in the final setup. This will of course be part of my soon to be completed tuning guide ;)
JLN I'll add your setup to the params thread when I've finished my guide.
good for using as loctite for nuts and screws to.
@JLN: wooble at start are linked to the use of RATE_D terms, that I see that you don´t use.
JL, update your software with the latest GIT, the problems of "wobbling in takeoff" and during flight (if you put the throttle stick to zero) is solved with my report of yesterday in the dev list.
I see much instability in your video because RATE/D is not tuned (i think).
Honestly if my quad fly with this wobbling I would not be very happy.
And when I talk about "no wobbling" I intend to have results like these or similar with zero wind, see this fullhd video of the summer 2011 that I made to test the stability of the little Sony HX9v and my very small MK Octo (the video is not stabilized with software):
With this video I think you can understand that I'm personally used to other standards of "no wobbling"... ;-)
And that I expect soon with AC.
Thats EXACTLY what I'm trying to achieve, only mine has to be able to fly fast through trees FPV too...
I did discover that if you want to just stick a gopro to your quad the best damping material appears to be cigarette filters... They elimate the 'Gelo' effect that's so hard to get rid of...
Dave's right, but believe me you'll make it very difficult to archieve these results, however it costs nothing to try... and good luck! :P
But I'll give you a tip again if you want: use a system of rubber bands to suspend the cam!
As you see I believe I have already reached optimum levels, with the Warp Stabilizer filter in After Effects V5.5 believe me when I say that it seems that video shot by a stedycam... :-)
another thing I found very useful with the gopro on my multiwii setup(which is my main AP working setup) is to use moon gel...this stuff is made to dampen mid to high frequency sounds and works quite well with 8"-10" props. For my main setups with the multiwii and the hoverpro I also super balance my props both statically on a prop balancer and dynamically with the motor like Dave described before. To me on the more manual setups of the multiwii and hoverpro, I spend most of the time on the mechanical balancing rather than the software tuning.
This video was shot with a gopro attached directly to the frame with no post stabilization...the grain is because of the gopro's behavior in the dark. No gello because of properly balanced props and motors.
Nice results Ihab! I really like this...
Hi D, gimbal totally DIY in the little MK Octo, in the heavy Octo Droidworks i use AV200 three axis, like this one:
Nice Marco.. Im just wondering though is the jerky panning coming from the servo panning or is it just a low frame rate of the video format here?