Reversed pitch, yaw, roll

Hi. I’m building a Hexacopter CW-X with Pixhawk 6X, M9N, T-Motor F45A (single), SunnySky X4110S, SIYI HM30, Jumper T-Pro v2 ELRS. Uploaded a fresh 4.5.0-beta3 firmware and configured using “First Time Setup” article. ESCs configured for DS600. All motors’ wires are soldered in the same order (I mean blue, red, black) but 3 of 6 motors are reversed via BLHeliSuite32 (Motor direction: reverse).

The first flight went well, no errors. But pitch, yaw, roll are reversed.

I checked motors direction in “Motor Test” section - they spin correctly as this picture says.

I checked “Radio Calibration” - when I move a stick to the right/left/up/down, it moves the same direction on the screen.

I checked the transmitter’s screen - the same behavior as above.

I could resolve this issue via reversing transmitter’s outputs but I would like to understand the source of the issue.

If all axes are reversed, check the orientation of your autopilot in the frame.

The AHRS_ORIENTATION parameter can be used to manually correct it, or you could re-accomplish the IMU calibration step to auto set it, if found to be incorrect.

Thanks. I’m using external M9N compass. After calibration it has Yaw270 orientation, the internal compass is disabled. AHRS_ORIENTATION = 0, COMPASS_ORIENT=6 (Yaw270).
M9N documentation (try Ctrl+F) says it should be so.
The compass and the flight controller placed towards drone’s front.
Tried to calibrate the compass several times.

Not compass orientation. Autopilot itself.

Follow the order of steps in the methodic tuning blog. That will prevent you from correcting it twice, an reduce the amount of iterations needed.

The new ArduPilot methodic configurator software can automate the configuration steps

2 Likes

It would fix the issue, but still - the flight controller is placed in a default position, the arrow looks towards the nose, in the middle of the frame. It should work properly without it. Just want to find the reason.

I think the source of the problem is the transmitter configuration.

Either correct it there, or use the RC*_REVERSED options.

1 Like

I agree with @amilcarlucas that the most likely issue is the transmitter.

If using MP’s RC calibration screen, the green bars should all move in the same direction as the sticks except for Pitch which should move in the opposite direction.

Just for reference this is the line in the RC Calibration wiki page.

Move the transmitter’s roll, pitch, throttle and yaw sticks and ensure the green bars move in the correct direction:
    - for roll, throttle and yaw channels, the green bars should move in the same direction as the transmitter’s physical sticks
    - for pitch, the green bar should move in the opposite direction to the transmitter’s physical stick
    - if one of the green bars moves in the incorrect direction reverse the channel in the transmitter itself. If it is not possible to reverse the channel in the transmitter you may reverse the channel in ArduPilot by checking the “Reversed” checkbox (Plane and Rover only). If the checkbox is not visible it is possible to reverse the channel by directly changing the RCx_REVERSED parameter (where “x” is the input channel from 1 to 4).
1 Like

Thank you. Didn’t know about pitch direction.
As I understand, the transmitter sends not inverted signal for all channels. So I should reverse the pitch channel, others look correct?

UPDATE: I’ve reversed the pitch in transmitter’s settings and it works good now. Was wrong about yaw/roll

2 Likes

That makes a lot more sense. All channels reversed on initial configuration would be very odd!

Default Copter pitch behavior is reversed from most expectations, and it often requires setting the reverse parameter or reversing on transmitter channel itself.

Glad you got it worked out.

2 Likes

Yes, the reversed Pitch is unfortunate and stems from the Futaba RC system that was dominant when AP was first developed. It’s very difficult to correct at this stage so we try to reduce problems by improving the documentation or the GCS calibration screen. QGC’s RC calibration is actually better than MP’s in this respect I think.

3 Likes

Is there a mission planner ticket. This is really not intuitive in mission planner.

Instead of passively catching the positive and negative limits, it should really be more of a wizard where it tells users to “pitch forward (nose down)” and error out if it’s flipped or just reverse it automatically.

Hi @rfriedman,

I agree. I don’t think there is an issue in the Mission Planner’s issues list.

1 Like

Here: RC Calibration Wizard Improvement · Issue #1849 · ArduPilot/MissionPlanner · GitHub

2 Likes