I have only been introduced to stall prevention and the STAB_PITCH_DOWN parameter since building a new plane, so a brand new install of AP on a new Matek FC resulted in this being switched on in the default settings applied. For anyone new to this, it applies the value 2 to this parameter meaning a 2deg nose down attitude is applied at zero throttle, and the pitch adjustment then reduces as throttle is increased, where at TRIM_THROTTLE this has no effect. What led me to find this parameter was during following the wiki procedure described here: https://ardupilot.org/plane/docs/starting-up-and-calibrating-arduplane.html#level-adjustment
This page describes how both traces in FBWA should show zero on the graph, and I couldn’t figure why my pitch axis was showing -2. I then located the STAB_PITCH_DOWN parameter, described in the wiki as “Degrees of down pitch added when throttle is below TRIM_THROTTLE in FBWA and AUTOTUNE modes”.
In my testing however, I found that this not only effective in FBWA and AUTOTUNE modes, but it also applies in Manual mode too with a caveat!
If you are in FBWA, then drop the throttle to zero so that the nose down attitude is applied (NAV_PITCH goes to -2 in graph, as expected), then switch to Manual flight mode, the pitch change remains at the value that it was prior to the mode change, and it stays there irrespective of the throttle position - at least this is what is witnessed in the Tuning graph in MP for pitch target (nav_pitch). Is this intentional? Perhaps it is and the wiki needs to be updated to describe this? Certainly the wiki page I linked above needs to have this mentioned in the level adjustment section.
NavPitch is not calculated in MANUAL mode. That’s why value is remaining constant. Attitude controlled modes calculate NavPitch and will change the value based on the input to the attitude controller.