After some hiatus just enjoying my 7" ardupilot and other betaflight builds, I decided to try building a 5" ardupilot freestyle/long-range quad. Since I took some notes and I had a ton of experience from my 7", getting my 5" up and running didn’t take too long.
But I realized that for someone new to this, it’s actually fairly difficult to come up with a decent acrobatic tune. So I thought I’d brain-dump my experience for anyone building a similar 6S setup.
Some of this may be contradictory to conventional wisdom, but whatever I figured out through some throught, trial, and error has worked very well for me. This is not intended to replace/supe-cede advice from the devs/experts. If your setup is significantly different, YMMV. Always apply first principles.
- setting motor_thrust_expo to a low value (like 0.1, 0.2) with a high motor_min is better than a lower motor_min with a higher thrust_expo. On my 5" 6S 1750kv build I run motor_min of 0.08 and expo of 0.1.
1b. The reason I ended up here is I found lower motor_min and higher expo (like 0.4~0.6) caused very hot motors at low throttle. Could never get rid of it.
#2. if I fly acro with air mode, dropping to zero throttle causes motors to spin down eventually, even though mix_man is set to 4. This causes quad to lose authority during hang-time. I worked around this by adding a small offset to my Radio’s throttle output when ACRO switch is down, so throttle never hits absolute zero. Make sure you account for throttle channel deadzone (mine is set to zero).
#3. Auto-tune gets me to a place where the quad won’t go out of control, but in terms of acrobatic flight performance it only got me like 60% of the way to a good tune. Apply PID tuning principles from UAVTech to tune the PID (like taking care of PD balance, and finding limits of D).
3b. I can increase gyro_filter to 100hz (even pushed 140hz on my 7").
3c. Be very aware that the ATC parameters like ATC_P and rate slows down responses before the PID loop. Conventional wisdom is that if the quad to drop ATC_P/rate if quad is not behaving well, but that’s just masking a bad underlying PID tune and filtering. So work on fixing your underlying PID tune and filter, then pushing your ATC_P upwards. My ‘aha’ moment was when I could push my ATC_P from 18 to 30 to fix some lagginess and unexpected drift when throttling out of a dive. This then revealed some bounceback, which meant I could further improve my PID tuning.
3d. my latest PIDs for my 1300mAh 6S 1750kV 5" Diatone Roma running HQ 5x4.3x3 v1S is around P/I/D = 0.7/1/0.02 for ROLL, Pitch. And 0.4/0.5/0 for yaw. It is not perfect, but it serves as a reference for you.
3e. I found the PID tuning is not forgiving if you drop the quad’s weight by a decent amount (ie. drop in a smaller battery and shed 150gram)
aim to set up notch filters.
After getting a good acro tune, I found the loiter PSC’s controller default tuning causes wobbling in loiter. The quad’s just too responsive. You can tune the PSC controller down to fix that.