A Date with Ms. Purple (APM2)

Some interesting videos of my morning flights with the latest firmware and APM2.

Dont forget to watch the last video ;)

1st loiter

Arducopter, now with REAL chicken sound effects...
Loiter worked quite well considering the drift issue...
It only started to drift after a while.
Seems like the more stick input you give, the worse the drift gets.]

2nd loiter It went better, I tried to stay away from using too much stick.

1st alt hold. Went beautifully, as good as the sonar! Still the drift issue in stabilize.

low level alt hold
Pool noodles rock!

Karlas first attempt
I suppose I should fix the drift issue before I let my GF fly it...
Fortunately I was controlling the throttle and trying to film.
Funny as hell! It landed on the roof...

Loiter and Alt Hold work fine. But the drift issue makes it un-flyable!
The only thing that fixes the drift issue is resetting the board.
Then it works for 20-30s and then cant fly it anymore.
Running the level command and in-flight leveling doesnt do sh*t.


E-mail me when people leave their comments –

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

Join diydrones


  • For me following things helped with drift. Drift happed for me with APM2 and version 2.4.

    1) addeded foam to reduce vibrations

    2) increased rate P in pitch and roll

    3) version2.5

    End result is that the board is very stable and no leaning. Please test at least the version 2.5.

  • Moderator

    That is interesting. Thanks for the paper.

  • Hi Ruwam, in fact the dev team is now prototyping an alternate kinematic system called MARG which uses the mag , accelerometer, and gyros in combination.  You can read more about the algorithm in this paper by Madgwick:


    Just as the gravity field is distorted by acceleration in the three axis, the magnetic field is also distorted by stray magnetic fields, which have to compensated for or else the sense of orientation is disrupted.  The spinning magnets, in the motors for smaller quads is a major source.  

  • Moderator

    Some how I bumped into this 2 month old thread, which is really informative. 


    I'm wondering (and learning :-)), how about using (fusing) the magnetometer readings to find gravity unit vector? given we already provided the magnetic inclination? 

  • Gareth, the gyros only read angular rotation, not acceleration. So, they can be used to help keep track of the angle.  For example, if they show a rotation so 4.5 deg/s for 10 seconds, then you should expect to see the accelerometers showing a tilt of 45°.  The two should agree with eachother.  The trouble is, both will have errors, and will disagree eventually, then what to do?

    Ellison: yeah, bringing the 3-axis magnetometer into the equation would probably help.  I think Bill Premerlani was working on something like this.

  • Yes, I think the solution will be to use all extra data from other sensors.  Unfortunately, the gyros only measure change in rotation on the axis, not absolute angle that's why we need the accelerometer to measure the actual angle, but again it has the limitation of only measuring relative to net acceleration.  I've been kicking around an idea of using the magnetometers, which is also 3 axis.  We currently only use the yaw axis.

  • Also if the sensor was accelerating at a 45 degree angle, i would imagine there would be x tilt as well as y tilt?

    Or not?

  • @Ellison:  Ahhhhhh!

  • @Ellison, could you not counteract the above using sensor data from the gyros. eg. cancel out accelerometer tilt if the gyros are reading tilt?

  • Robert, if the values are z=0.5, x=0, and y=0, how do you know the craft is not tilted to one side, but accelerating in the direction of the tilt, which cancels out the tilt for the accelerometer? ;-)

This reply was deleted.