Madly Oscillating Motor Ouputs

Hi any idea what is driving the mad motor output oscillations?

This is the first flight of a new build, which is identical to my last build just some very minor frame changes. I didn’t have such an issue on the last build. All hardware has been reused from other builds (so known performance) The ESC is same make just a new part.

X-Vibes are a bit high - I believe this is due to the FC mount touching the frame, easy fix. But I don’t think this caused the problem as the vibes are less than my last build. Update this wasn’t the problem.

4.3.3 is available for my branch now so I will upgrade soon but only 1 change at a time :slight_smile: Thanks for you understanding.

Log: WeTransfer - Send Large Files & Share Photos Online - Up to 2GB Free
^2023-03-04 12-49-39.bin

I’d like to understand this one before trying to fly again as it was unstable.

Thanks in advance.

The X axis vibrations are definitely way too high. The Y and Z vibes are also in the “this can go either way” category.
I would fix the vibration issue then retest before trying to address tuning or whatever remains.
Set ATC_THR_MIX_MAN,0.1 until you are sure the vibration levels are all below 15, and use Stabilize mode at first, then AltHold
Later move on to Loiter mode when everything is confirmed working OK.
PosHold is outdated and Loiter has extra params to configure its behaviour if required.

There’s important fixes in 4.3.3 for control loops and timing, from 4.3 onwards anyway.

Also set all these below for a couple of general fix-ups and GPS
INS_ACCEL_FILTER,10
INS_LOG_BAT_OPT,4
Your GPS1 is working better than GPS0, I would set
GPS_PRIMARY,1
and these to limit the number of constellations
GPS_GNSS_MODE,5
GPS_GNSS_MODE2,5

So I’ve done a Stabilise flight, despite my reservations. In this case it worked ok until 4:00 when the motor outputs went haywire again.

It looks like vibe X is either a cause or symptom of the issue. You can see vibrations climb when the motor oscillations begin. Note they were ok before the motor oscillations began occurring so they may be a symptom.

I was loosing control of it when the oscillations kicked in and had to land it straight away.


Log: WeTransfer - Send Large Files & Share Photos Online - Up to 2GB Free

This looks more like a major fault and not a setting issue as these settings have done dozens of hours.

The vibrations climbing like that suggest to me a mechanical issue, like motor mount or prop nut coming loose. Do your props need spacers to stay on center of the shafts? If you’re using nylon lock nuts, do they still have enough drag friction if they’ve been on/off a few times? Is there anything else come loose?

Yes it looks like that. Motor fasteners are tight. Prop/motors are the holybro x500 10" kit type with M6 threads LH and RH threads. I’ve done a half dozen builds using these and haven’t had this issue.
I can’t see anything that could be causing the issue.

So holding it in my hand and running it sometimes it is smooth and sometimes it is rough. It will run good, go rough (you can feel the vibration), then it will go good again. I It doesn’t seem to relate to a particular throttle or motor speed. And doesn’t correlate with something coming loose as it would have to tighten itself :slight_smile:

I’m thinking the timing on the motors might be getting out of sync and then this kicks off the vibrations. Perhaps the new ESC is faulty. ??? Anyone had similar experience?

I did notice during the motor test the motors would kick backwards for a split second before moving forwards.

Try motors one by one (disconnecting two phases), without and with its propeller. A servo tester (if using PPM) may help.

Also check the ESC and motor temperatures. See if anything is warmer than the others.

What prompted the PSC Jerk parameters to be cranked up so high?
And you should set these based on MOT_THST_HOVER as per the tuning guide.
PSC_ACCZ_I,
PSC_ACCZ_P,

So as @Webillo suggested I disconnect 2 phases of all the motors and ran just 1 motor at a time in Stabilise and did this in turn for motors 3, 1, 4 and 2 respectively and surprisingly there was no vibration at all. I’ve connected all 4 motors and initially no vibration but then the vibration kicked in.

I’m a little puzzled.

The motors have never gotten above room temperature on previous builds and these motors only get warm to touch is there is vibration. Without vibrations they are cool to touch.

4x Individual motor tests and finally all 4 motors.

Log File: WeTransfer - Send Large Files & Share Photos Online - Up to 2GB Free

Update: I’ve done another test with the PSC_ACCZ parameters fixed but no change.

With some cabling, and if using PPM, secure the frame and connect all four ESC+motors to a single servo tester, with the same turning directions as in the real quad.

Also, vibration starts after the same timeout?

The closest thing I have to a servo tester is the motor test function in Mission planner. Using the test function I’ve run 4 motors up to 80% throttle with props on and the vibrations are not there. See charts below. It sounded very smooth too.

I’ve swapped the FC back into the old frame and no issues running in stabilise

Question is: why is the FC commanding the motor outputs to vary wildly? It looks like it is the outputs causing the vibration. The 2 front motors oscillate together and the 2 back motors oscillate together.

One difference between the 2 frames is the servo outputs cables are swapped Motor 1 <–> Motor 2 and Motor 3 <–> Motor 4 (and servo outputs swapped accordingly such that the setup is still correct). If it is using telemetry from the 4in1 ESC than perhaps that is confusing the FC?

image
A very useful tool for testing without FC. However, MP seems to exclude a mechanical problem. It could help to see if the vibration starts a fixed or random time after motors start.

Mission Planners Motor Test is essentially a passthrough.

So I believe the issue is the flight controller mount is too soft and is now excited by low frequencies within the control range and causes the oscillating outputs from the FC. @Webillo @Allister

I’m having trouble finding a mounting solution that works. The 3D printed frame is great for form/layout, strength, rigidity and weight but transmits high freq vibration well. With a stiff mount I have vibration in the high frequency 80/160 Hz which can be filtered out but risks overwhelming the vibe sensor. With a soft mount this results in oscillating outputs - not good.
I’m going to persist in finding a solution for the vibration without throwing out the frame. I’m going to try a combination of the Kyosho Zeal mounting gel and the 3D printed mount with rubbers.

Any advice for the redesign would be great.

image

I have yet to see a mount too soft but I suppose it’s possible… It doesn’t get much more compliant than an o-ring mount and those have worked pretty well for those that have used it.

I think your right a completely new mount didn’t remove the issues. The issue is only occurring at very low (below hover) throttle position / rpm.

Is there parameters/setup which might be contributing? i.e. is the high psc_jerk contributing?
The only option I can see is to increase the size of the arms to stop what looks like torsional vibration at this low rpm.

I think filtering down to such a low freq would cause problems for control?

Probably is. Easy enough to set it back to default and check it out. I have several very responsive quads and none are set that high.

Reducing to PSCJerk_XY and _Z to 5 from 20 does improve. Vibration at low rpm is still there but much less noticeable. What do you use on your responsive drones?

A larger cross-section of the frame arm will no doubt reduce the vibration at low rpm (reducing the arm size was a change I made at the last frame iteration which is when this started occurring).

This is the recommendation re pscjerk settings:

in the 7-10 range. I wouldn’t say 20 is a reasonable setting for a mid-size drone. Unless Midsize is is 5" or so. But I have never tried to tune any craft with a Jerk value that high.