Does ArduPilot Mega 2 (APM 2) Gyro function work?

I have an Align 450 Pro v2 FBL that used to connected with a Skookum SK720 tuned to close to perfection with extremely low vibes.  Now I removed the SK720 and trying to get the APM 2 to work on it.  Finally got all the trims, limits, zero pitch center, servo directions, and the APM auto level correction moving to the correct direction today.  I've noticed the tail behave very strangely.  


When I do not have the Gyro Enable box checked, the tail seems to try to counter the external movement for a split second and return back to the center.  When I use the rudder control, the tail servo hardly ever move.


When I have the Gyro Enable box checked, the rudder control works perfectly.  The tail also works like in HH mode.  To test it, I held the heli in my hand without the main blade and spin the motor up.  When I twist the heli, the tail correct the tail perfectly.  I twist it more, the rudder move more to counter the movement until I let it twist back to the original position.


According to the wiki and some other write up, that checkbox suppose to be for external Gyro.  I think that info is for the older APM.  The APM 2 seems to have the Gyro working internally when I have that box checked.


Now the weird part, while it is in HH and countering the external force, if I move the rudder control from my remote, it doesn't matter which direction, it immediately set the rudder back to the center.  I even tested it with the main blade on.  At first, when I spin it up, the gyro kicked it to counter the movement. As soon as I touch the rudder control, the rudder servo immediately back to the center and let the heli spin wildly.  Quite scary to see.  Could anyone give me some hint on what I can do to get the tail working?



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

Join diydrones

Email me when people reply –


  • Hi Wesley,

    Will you share your latest parameters once you got it hover? I will put my second APM2 on my HK 450 pro heli next week, so your parameter will greatly help me tune mine. :)



  • Houston, we have lift off!  :D


    I thought the tail was tuned very well while it sat on the chair.  When I had it sit freely on the ground, at about 30-40% throttle, the tail shaked violently.  But I was determined to lift off and see how well the default PID work, so I continue to spool it up slowly and controlling all the pitch and roll carefully before it left the ground. (Don't worry.  I'm very good at flying un-tune and demage heli.  :D )  After it's off the ground, the tail still continue to shake, but other than that, it seems to hold very well. So I hover it around and shake the tail a little more using the rudder control.  After I do that, the tail calmed down.  The entire heli flew very smoothly.  I'm very impressed!

  • I kind of understand what the PID numbers do but what is the Stablize Yaw numbers versus the Rate Yaw numbers are for?  I find myself randomly change one or both area without understanding what these 2 area mean.

  • Oh, and about the mounting, very interesting, you did just what I was planning to do.  I've just ordered an HK450GT FBL yesterday.

    I am going to machine an aluminum mount.  If it works, I think that it would be a great candidate for a 3D printed plastic part.

    It sure makes for a nice clean installation.

  • Wesley, what are your tail PID?

    You should not be using it in external gyro mode when you don't have an external gyro attached.  I think you just don't have the PID's correctly set up.  Most people have this difficulty, but usually get past it with the right PID settings.  I've posted them a few times, but I can't remember off the top of my head right now...

    I think I have Stab_Yaw_P = 2, or something like that.  Stab_Yaw_I = 0.   Rate_Yaw_P = 0.350, and I is... I can't remember at all.  I also have a bit of D I've been playing with.  0.04 or something.

    As for the returning to center when you feed a command, yeah, I've seen that as well and I can't figure it out.  In flight, I think it's not as bad as you would think.  I find the nose will just twitch left just a tiny bit before then following the command.  When you are holding it in your hand, the error looks bigger.  When really flying, it seems like the rate portion of the yaw control system catches it very fast.

    Edit: Oh, I see your PID values now.  Stab_P of .7 is way too low.  You need at least 2, and I've even gone as high as 3 without issue.  The Rate_P of 0.135 is probably also too low.  Increase both of these similar to mine, and it should look a lot better.

    You WILL need Rate_I , but Stab_I should probably be zero.

  • Developer


         A very clean looking helicopter.  Interesting to see where you mounted the APM2.  I've always used the mounting plates (although they're sold out at the moment) but it will be very interesting to see if your set-up works.  It would be good if it does because:

    • it keeps the mag away from the motor
    • no need for an external gps because it's out from under the heli (assuming the main blades don't cause any troubles)

         I can imagine that we would make that the standard if it works.


         I suspect your yaw problems are largely just down to PID tuning.  If the external gyro is enabled only the top PID contoller is used.  If no external gyro then both the upper angle rate controller and lower rate controllers are used.  It's important to get the rate controller right you can enable PID logging in the logs and then use the channel 6 tuning function for CH6_YAW_RATE_KP (see right lower side of configuration screen of AP MissionPlanner).


This reply was deleted.


DIY Robocars via Twitter
May 15
DIY Robocars via Twitter
May 14
DIY Robocars via Twitter
May 13
DIY Robocars via Twitter
RT @f1tenth: Say hi to our newest #F1TENTH creation for @ieee_ras_icra next week in Philly. It’s going to be huge! 😎 🔥 @AutowareFdn @PennEn…
May 13
DIY Robocars via Twitter
May 11
DIY Robocars via Twitter
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Noticed my car zigzagged in last run. It turned out to be the grass stuck in the wheel and made the odometry less accura…
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Test my car. RTK GPS worked great. Thanks @emlid for their support.
May 8
DIY Drones via Twitter
RT @chr1sa: @kane That's @diydrones circa 2009. Still have a box of those Canon cameras that we used to strap into planes, just like this.…
May 3
DIY Robocars via Twitter
RT @chr1sa: Our next @diyrobocars race is going to be outside at a real RC racetrack in Fremont on May 28. Fully autonomous racing, head-to…
Apr 30
DIY Robocars via Twitter
RT @f1tenth: Our Spring 2022 F1TENTH course @PennEngineers is coming to an end with a head-to-head race as a big finale. So proud of our st…
Apr 26
DIY Robocars via Twitter
RT @DanielChiaJH: I wrote a thing! Throughout the development of my @diyrobocars car I've been using @foxglovedev Studio to visualize and d…
Apr 23
DIY Robocars via Twitter
RT @SmallpixelCar: My new car for high speed. Low body, everything ( @NVIDIAEmbedded Jetson Xavier NX, @emlid RTK GPS, IMC) under the deck…
Apr 23
DIY Robocars via Twitter
Apr 21
DIY Robocars via Twitter
RT @f1tenth: F1TENTH Race training setup @PennEngineers for our upcoming ICRA2022 @ieee_ras_icra competition. @OpenRoboticsOrg @IndyAChalle…
Apr 21
DIY Robocars via Twitter
RT @fatcatFABLAB: Proud to be hosting a restarted DIY Robocars NYC Meetup April 26. Come by if you want to talk about and race self-driving…
Apr 17