Persistent yaw drift and large RCOU motor-pair bias on heavy quad — yaw torque imbalance

Hello everyone, I am working on a heavy quadcopter, around 12.4 kg AUW, and I am trying to diagnose a persistent yaw drift and yaw torque imbalance before making any blind mechanical changes.

I have not actually received the ArduPilot “Yaw Imbalance” warning. I first noticed the issue while reviewing the logs, especially the RCOU motor outputs, PID yaw terms, and later the ESC current/RPM data from the DataLink logs. The log pattern also looks similar to the yaw-imbalance case described in the ArduPilot documentation.

The vehicle is a symmetric quad frame with the CG checked near the center. I use T-MOTOR U8 Lite KV190, 6S / 24 V with T-MOTOR G28×9.2″ carbon fiber. QuickTune was used after some failed AutoTune attempts. Roll and pitch feel acceptable, but yaw has not tuned cleanly yet. Notch filters are already configured.

The copter can hover and fly in a stable-looking way, but during longer Auto missions I see a slow uncommanded yaw drift. Over around 3–4 minutes, the heading can drift by roughly 25–30 degrees with no yaw stick input. I corrected yaw manually a few times during the Auto mission. Later, when I stopped correcting it, the vehicle eventually lost stability and started oscilating, and it was recovered by switching to PosHold.

In the logs, I see a consistent motor-output pattern. Two motors are driven much harder than the other two. During the rectangular Auto mission, the approximate RCOU averages were:

  • RCOU C1: ~1682 PWM
  • RCOU C2: ~1703 PWM
  • RCOU C3: ~1483 PWM
  • RCOU C4: ~1508 PWM

So C1/C2 are roughly 190–200 PWM higher than C3/C4 for a significant part of the flight.

The DataLink ESC data also points in the same direction. It shows Motor 1 and Motor 2 drawing much more current and running at higher RPM than Motor 3 and Motor 4. For example, over the matched flight data:

  • M1: ~11.55 A average
  • M2: ~12.65 A average
  • M3: ~4.26 A average
  • M4: ~5.26 A average

The RPM data also separates in the same direction. The yaw controller also appears to be biased. RC yaw input looks centered, but the yaw I term / yaw output does not settle around zero. Even during parts of the flight where yaw P and D were effectively zero, the yaw I term remained biased.

So far I have checked the obvious hardware items:

  • Motor mounts were checked and leveled with a bubble level.
  • Props are balanced.
  • Motors spin freely.
  • No obvious bent arms or damaged props.
  • CG appears centered.
  • Frame is symmetric.
  • Motor/prop mounting was checked multiple times.

I have read the ArduPilot documentation about thrust loss and yaw imbalance. I understand that if this kind of imbalance is visible in hover, it usually points to a hardware / mechanical issue rather than something that should be hidden with tuning. The suggested mechanical fix in the arducopter documentation is to slightly tilt motors to counter the yaw bias, but I am reluctant to do that blindly before understanding the root cause. I am also worried about testing motor tilt on a 12.4 kg vehicle without being reasonably sure about the direction and magnitude.

What could bt the the most likely cause of this kind of persistent motor-pair bias and is motor tilting actually the right next step here, or should I first run other checks?

I will attach a drive link that contains First Part.BIN and Second Part.BIN with DataLink logs. I could not find the video, but the event should be visible in the logs. The first BIN file should be enough to inspect the main problem.

Any advice from people who have diagnosed yaw imbalance or persistent yaw torque bias on larger multicopters would be very helpful. I am especially interested in practical checks that can confirm the root cause before modifying the motor angles.

Drive Link: Yaw Problem - Google Drive

By the first look into the logs, this does look like a hardware yaw issue, further exaggerated by roll and pitch commands that, together with the imbalance, quite often clip motor outputs by MOT_SPIN_MIN, which results in yaw giving way to keep the machine otherwise stable.

To help finding the root cause, would you mind sharing few photos of the machine in question? This was helpful in the past to spot unexpected frame-related design flaws.

1 Like

Thanks for the quick reply, I have uploaded 9 photos of the vehicle to the same link: Yaw Problem - Google Drive

Please let me know if any specific view is missing or if you need closer photos. Thanks in advance.

So it’s a quite standard (probably stock) frame with round carbon fiber arms.

These are foldable by the looks of it, though, so it may make sense to check how much play there is in these joints.

Anyway, my impression is that the main source of the yaw imbalance is the deviation of motor axes from the vertical direction. It’s the most common thing with round arms. You claim that motors were levelled “with a bubble level”, but the imbalance is very noticeable.

One possible cause is that your alignment procedure may have some nuance that introduced the same slight deviation (0.5 to 1 degrees is enough) to the same direction for all motors. It could be, for instance, that you used the bubble level to set each motor horizontally, but the frame was not levelled. Trusting the landing legs is not good enough, and standing firmly on the ground is not good enough: your “ground” may not be level with respect to gravity, be it a table or something else, whereas you are aligning the motors using gravity.

In a sense (here I am not speaking from experience, however), tilting the motors on this scale is a bit safer than not tilting, because you may not have enough precision to level out the motors for the standard flat motor yaw control to be effective - whereas with motors tilted correctly alignment issues are less pronounced, because in this case you don’t only have yaw authority coming from the propeller inertia, but also from pure thrust. For example, if the installation precision is ± 0.5 degrees, and this is not enough for the conventional yaw to control, by tilting motors to 2 degrees (in correct directions) you will have the same ± 0.5 degrees of precision, but also an additional yaw force which is 4 times stronger than the forces coming from a misalignment.

It has a mechanical Yaw bias and it’s under powered/overweight.