Autotune gives poor tuning values on roll axis and causing vibration on arms

Hello to all, We build a 850mm x 850mm frame with t-motor 7005 230kv and hobbywing xrotor 60a 4 in 1 esc along with 2480 inch foldable propeller. In defualt PIDS when testing in althold mode it was flying good with no vibration in all three axes. But once changed to loiter mode arms start vibrating. Reduced PID values 20% and eliminated vibration on loiter mode.
Later applied hormonic notch filters and run a lua script of quick tune. on pitch axis PIDs are tightly tuning but where as on roll axis PID values are sluggish and observing again the vibration in arms.
then manually reduced pids of roll and did autotune, after autotune was done for roll and pitch axes. pitch tuned tightly but the roll axis is sluggish. After autotune was done. again we run quicktune for roll and pitch axes found the same result. PID in roll axis is less or loose compared to pitch. And flown one auto mission to see the behaviour of flight as the pitch is tightly tuned.
May i know what is the reason for it as if tried to increase the pids manually observing vibratiion in arms.

If you don’t get good tunes then almost certainly vibration is the cause rather than the symptom

@andyp1per Thank you for the reply. As there is no vibration in any axes. only the PID values making the arm to vibrate. But vibration on all the 3 axes is less than 15m/s/s.

Then you probably do not have a working notch filter.

Did you tuned this properly using the ArduPilot methodic configurator software? If yes post the files.

If no… you now know the cause of your problems :smirk:

Hi @amilcarlucas I didn’t use configurator software but instead configured all param using mission planner and yes I followed every steps of tuning process. Today I applied filters and did a flight test. then run a quicktune. After which one auto mission. please have a look into my logs.

Pre and post filtering log

Post filtering log

Auto mission log.

No. The instructions on the blog post are not fully detailed. Some details are only in the software.
That is why the blog post explicitly says that you must use the software.

I do not have a PC right now and can not look at the logs.

Change these:

ATC_ACCEL_R_MAX,50000
INS_HNTCH_FREQ,31
INS_HNTCH_REF,0.12
INS_HNTCH_OPTS,0
INS_LOG_BAT_MASK,1
INS_LOG_BAT_OPT,4
LOG_BITMASK,180222

There’s always some significant difference between one motor output and the rest. Check very carefully for a COG/balance issue, or if all motor mounts are perfectly level and not twisted at all.
Check that folding props can easily fold and some are not a bit too tight.

Now do a test flight JUST with AltHold and Loiter modes, do plenty of movements and altitude changes.

What exact battery pack to you have? A couple of you voltage-related settings dont seem correct.

Hello @xfacta thank you for the reply. we are using 16800mah lion battery with 11c discharge rate. May be the folding props are tight at one end. I will loose it after which I apply the above params and will do a test flight and post the log.
Are attitudes are following good? are need to be improved a bit? Also I have a doubt as I did 3 to 4 times flight test with filters on but all the time center notch frequency was 33.46hz, how come are you saying 31hz and reference I see as 0.15 but in your case 0.12. May i know it please.

when using throttle-based harmonic notch filter, the correct value for REF is:

INS_HNTCH_REF = hover_thrust x SQRT(min_freq / hover_freq)

and usually a “close-enough” values is:

INS_HNTCH_REF = hover_thrust x 0.6 or 0.7

and I got your value of 0.12 by putting your prop size and hover thrust values into my spreadsheet to get quite a close estimate.
Then I checked that it (and the INS_HNTCH_FREQ) worked correctly in the filter review tool.

You have some noise that doesnt perfectly align with the motor RPM - maybe it’s related to the folding props doing something strange or something else going on with your frame and things vibrating.
I was prepared to set that extra noise to one side for now till we see a test flight with just AltHold and Loiter.

Maybe attach a couple of photos of the flight controller and wiring.

In the ESC BLHELI_32 settings make sure you have these, even if using PWM

  • Low RPM Power Protect = OFF
  • Low Voltage Protection = OFF (rely on the flight controller battery settings)
  • Temperature Protection = 90
  • Motor Timing = Auto

Any reason why you are using PWM instead DSHOT? You could actually load the bidirectional DSHOT firmware and get the RPM data back too, for use with the filter. There would be no physical connection changes.

These are the values you should use for battery-related settings, your are mostly correct, and there’s nothing wrong with being conservative with the BATT_LOW_VOLT value to give plenty of time for RTL

BATT_ARM_VOLT,19.10
BATT_CRT_VOLT,18.00
BATT_LOW_VOLT,18.60
MOT_BAT_VOLT_MAX,24.60
MOT_BAT_VOLT_MIN,16.80

Thank you @xfacta. On what basis we have to decide the temperature protection value for ESC_BLHELI_32.

As the ESC is Dshot 1200, if it is Dshot 600 we would have used thinking that only the signal speed varies we have selected PWM. If it makes more difference please tell me, so that i will go with it.

The photos of FC and wiring have been attached below and please suggest if it causes any disturbance to the performance.

In couple of days I will attach the test flight logs with your suggested parameters.

Attach also the .json and .param files from the vehicle configuration directory created by the ArduPilot methodic configurator software.

The ESC should handle DSHOT down to DS300. DS300 is perfectly OK for use even with small quads.
Those that think DS1200 is required for full responsiveness could be deceiving themselves.
You can safely use DS300 or DS600.

I use that temperature setting because
a) the little MCU running the ESC goes silent at about 120 degrees
b) the firmware starts limiting output slightly as the temperature goes over this value
c) use the default value (or higher than 90) wont give the firmware any chance to save itself before the MCU or something gets too hot

Hi @xfacta, as per your suggestion I have configured ESC to Dshot600 and set those recommended params above as well as temperature 90 degree. Today I did a flight test in alt hold and loiter mode giving roll, pitch and yaw input. Please verify the logs and as Physically observing one of the motors rotates slow after you release the command inputs. So please have a look and let me know how is the attitude following.

@xfacta I advise you to do that after @Prashanth011 posts the MC files. It is easier to review them by opening them in the methodic configurator software. And if you have some parameter change recomwndations you can do that in the software itself, and send the modified files back to @Prashanth011

@amilcarlucas sorry for the delay. @xfacta Here I am attaching the file below, please have a look and let me know any changes to be made for improvements in the UAV.

@amilcarlucas is there any changes should I do in the parameters or should i go with a quick tune process for further improvement in the flying? @xfacta please have a look and let me know any changes to be made.