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