Failsafe->RTL->spiral out of control

Hi all,

I successfully used RTL in the past by manually switching it on. This time I wanted to test my failsafe and see if it would activate RTL correctly.

I hovered the copter about 25m away and …gasp… turned my radio off.
I was rather happy for the 1st couple of seconds, as I saw the copter gain altitude and start heading back to the place where I had armed it. But it quickly started drifting in a circular motion, at which point I turned my radio back on, but it felt as though I had no input whatsoever on the copter’s attitude.

It crashed a few seconds later while going quite fast, but thankfully nothing major broke (got to love David Windestal’s all zip-tie design).

I’ve looked through the logs, and from my limited understanding, it seems that it indeed correctly went to RTL upon getting the RC input at zero, and I believe I see it registering my inputs once the RC link is back up but it does not seem to have been taking it into account. Was it stuck in RTL ?

Any help would be appreciated.

Specs:
Tricopter frame
APM 2.5
ArduCopter v3.1.2
GPS
external Mag
Power sensor

Note: I’m a new on the APM so please feel free to yell at me if you feel I’m missing something important :slight_smile:
I did not have Mag or IMU logging on, so the I might be missing some crucial information.
However I get about 1% interference with compassmot and manual vibration tests gives very reasonable values (within +/- 3m/s2)
Lastly there was almost no wind.

Cheers,
Murphy.
P.S. Not all crashes are bad, as I got to me a cute girl that helped me look for the parts that flown off (well and her boyfriend too, but I have a very selective memory :slight_smile: )

Vibration or compass. No compass logging or IMU logging enabled…

COMPASS_ORIENT 14.000000
COMPASS_EXTERNAL 0.000000

There’s your problem. Orient should be zero or external should be 1 and if you’re going to use a strange orientation with an external you should quadruple check orient by graphing heading and making sure it makes sense in every orientation.

I set COMPASS_EXTERNAL to 1 and double checked my custom orientation.

I’ve since re-flown with RTL and everything went perfectly.

Thanks a lot !

Murphy