SERVO_AUTO_TRIM and Manual Flight Mode

I built a Nano Goblin and have been having a great time setting it all up and learning about the Ardupilot project. This is such a great combination of hobby electronics, RC flying, programming, etc. I’m loving it.

The Nano Goblin can be a bit twitchy, (both in sim and in real life). I followed the advice on the guide for the first flight and started in FBWA mode. My first few flights were spent evaluating the different modes, trying 2S vs. 3S, and noting parameters I want to experiment with.

I don’t yet have the confidence to use MANUAL mode in line-of-sight operation, so today during my first FPV flight I tried MANUAL mode (with ample altitude and the LOITER mode switch under my thumb to fall back on) and whilst it was twitchy, I noticed that I had to constantly input pitch commands to push the nose down when in MANUAL; this made it very sketchy to fly and I went back to FBWA mode.

After thinking on this for a bit, I wondered if my airframe may have too much positive deflection in the elevons. I’m thinking that FBWA mode automatically levels them, but in manual mode, perhaps the plane is pitching up too much because of this?

The plane flies GREAT otherwise though; should I be looking at SERVO_AUTO_TRIM? Automatic Trim — Plane documentation Or would it be smarter to try leveling the elevons first? My fear here is that there could be nothing wrong with the position of the elevons and I would be giving the autopilot more work to do, but in the other direction.

I would appreciate any thoughts or guidance on this.

It may be caused by aft CG, I would check if CG is where it is supposed to be.

1 Like

If the CG is right and the FC is leveled, I would activate SERVO_AUTO_TRIM and fly a few rounds in FBWA. After that you can switch to MANUAL and see if the trim is better for it now.


Thanks for the info @LupusTheCanine and @Target0815 . I believe the CG is correct; the wings have balance points under them and when I balance it to be ever so slightly nose-heavy it balances and the nose slowly droops.

@Target0815 you’ve mentioned something interesting though. The FC is currently leveled with the plane’s nose pointed slightly up. I saw someone else calibrating their plane in a YouTube video and they placed something small under the nose (like a pen) when leveling to give it some slight upwards pitch (I think). The way mine is leveled right now, the plane points to a few degrees below the horizon when placed on a flat table.

Thanks for the info. I’ll try enabling the SERVO_AUTO_TRIM for the next flight and see how it goes.

I take the bottom of a wing as an orientation point and then raise the nose so that the leading edge of the wing comes up 2-3 degrees. Similarly, the plane also lies in the air.

1 Like

For what it’s worth, I found that on my Nano Goblin when I had the CG on the marks the auto-trim resulted in the elevons being lined up pretty much exactly with the inner section of the wing. I.e they didn’t need any additional reflex.

And yes, you should have SERVO_AUTO_TRIM enabled so that switching to manual mode doesn’t result in sudden pitch changes. Note that you have to fly close to level for at least 10 sec for it to save the trim values.

I calibrated the accelerometer with the plane level, then set TRIM_PITCH_CD to 200 (i.e. 2 degrees). I figured this was more repeatable than trying to offset the pitch when calibrating.

1 Like

Thanks for the input! It seems I’ve skipped over the TRIM_PITCH_CD parameter; I’ll consider tweaking the setup like this so it’s more repeatable as you say; this makes sense.

From Ardupilot wiki:

Correct ground leveling is better than changing this parameter.

Take your mobile phone to the help, that can also measure degrees …

1 Like

And here wiki recommends the opposite :wink:

(Preferred) Add the desired degrees nose up(usually) or down to TRIM_PITCH_CD.

I think both methods are acceptable. Here you can read more about the correct leveling.
Tuning Cruise Configuration — Plane documentation (
And here:
Tuning Cruise Configuration — Plane documentation (

1 Like

I asked about this conflict previously and one of the devs suggested that calibrating flat and using TRIM_PITCH_CD was the current preferred option.

1 Like

Thanks all,
I’m using now using SERVO_AUTO_TRIM and I also switched over to using TRIM_PITCH_CD. Both are working perfectly and now manual flight is as expected.

Thanks again!

I don’t use SERVO_AUTO_TRIM, it’s better to use manual configuration using the

RCx_OPTION,155 set roll pitch and yaw trim to current servo and RC TRIM RC/SERVO Save.

After manual trimming, you need to switch the switch, usually I use the coach switch and the plane will fly straight.

Well done. Disregard the CG advice as there is a widespread misconception about how it will affect the pitch. Twitchy planes, like the Goblins, becomes a lot more manageble with Autotrim turned on and first flown in FWBA - just as you discovered :slight_smile:

As a pilot who is flying alot in MANUAL mode I had some trouble with SERVO_AUTO_TRIM = 1 in the past. Here is an example of the big differences of pitch trimming in this case, the blue markings shows the different values of the trim in one flight.

I think SERVO_AUTO_TRIM is a good method of trimming for the stabilized modes to function correctly in it’s optimal range around the middle point. But it is not good enough for manual flying in some cases.

Now in OpenTX I have set up a flight mode with independent trim that is only active in MANUAL mode. So I can trim in MANUAL and after a few flights I can take over the trim values into ardupilot manually.

1 Like

I appreciate you adding some additional info to the topic. I’m still an amateur RC pilot and details like these can help me troubleshoot as I move forward.