Issue with Walking While Yawing

Hi all,

tagging @bresch for visibility.

We are building a very large quadcopter (500+lbs) and are using PX4 as the autopilot. We have been experiencing an issue while attempting to yaw in place that we “wander around” the setpoint while performing the yaw maneuver. Here are some screenshots of this very consistent behavior:

The shape is always this same rough pattern as well. We are a bit perplexed as to what might be causing this issue and were wondering if anyone might have suggestions or thoughts?

Some background info:

  • We are using PX4 V1.13 and are locked to it for the time being.
  • We do not use MPC_YAW_MODE as “yaw first.” We found it had odd behavior that endangered the craft.
  • Instead we use stacked waypoints and timers. We make a position waypoint followed by a co-located position waypoint with the desired pre-calculated yaw toward the next waypoint as well as the hold time to get to that yaw. I would be curious if our implementation for this is sensible if we should be attempting to better leverage “yaw first.”

Thanks all

Do you have the same behavior when you yaw while hovering in position mode? (just to understand if this is related to the mission mode or not)

Hello! Thanks for the reply again!

We do not currently think so. It appears to be a peculiarity of mission mode, but we are not certain.

Here is a screenshot of yaws in position mode:


As you can see it DOES drift while yawing, but not with the particular consistency of the shape we are seeing in the missions.

I have permission to share a ulog of both a mission doing this behavior and this rotation privately, just not publicly.

I have a few hypotheses:

  • Our tuning is poor. This is visible in the log reviews.
  • Given the size of our craft, we do not have the control authority required to maintain hold while yawing.
  • There’s a weirdness to using stacked waypoints given the acceptance radius?
    • Tracing the code though, the position controller should be locked in on the waypoint at that point… so I don’t think this one is likely.
  • This is simply expected behavior and the amount of drift is expected.

Any hypotheses are appreciated. If there is a way to privately share the ULogs, please let me know.