TREX 800E Swash plate oscilating

Hi everyone, I managed to configure my TREX 450 perfectly. The major problem was ACCEL_Z_P (had to be around 0.150) and RC_SPEED (burned lots of servos). I found out these problems by asking you guys. Thank you for the support. It flies quite smoothly now. Now I decided to move on to TREX 800 E. I adjusted my RC_SPEED = 200 (digital servos) and ACCEL_Z_P = 0.130 before even taking off. I took off with loiter and noticed heavy oscilations so I took the copter down safely. Here is the flight:

Later on I decided to do some bench testing to see what is wrong. Before even starting/arming the copter I noticed that the swash plate was oscillating by itself in stabilize mode. After seeing that, we armed the copter and started the motors. It was still oscillating which is causing vibration. We did that bench testing in stabilize and also loiter, stabilize was worse. Here is our bench test:

I’m running APM copter 3.4.5 on a pixhawk. Here are my params and flight logs.

Flight log of that battery drop

39.BIN (756.5 KB)

Params that we were using:
trex800e.param (10.9 KB)

I would love to hear what you guys think.

Do you have 915mhz telemetry radio?

After your comment I unplugged every single peripheral on my pixhawk one by one. I had a 433mhz telemetry and a wifi telemetry. None of them were causing any interference (it was still oscilating after their removal). However when I unplugged the AR8000 rc receiver with PPM encoder it just stopped oscilating… I’m using an Orange rx615 with ppm encoder now. Servos still make some noise but now they dont oscilate. I will do another test flight to make sure.

However i’m using the same paremeters (PID and such) that my TREX 450 uses to fly. I feel that they should not have the same parameters… Will see. I will update my progress here so others who are playing with TREX 800 can also see.

So far the only settings that I changed from default values are ACCEL_Z_P = 0.130 and also RC_SPEED (according to my servos)


We managed to fix the problem! Feel free to PM if you guys want to know the details

Hi Kaan, I have a Trex 700 that I recently tuned, have it flying really well, but occasionally, I get the same type of nasty swash plate oscillation randomly, usually only in a hover but sometimes on the ground before the skids are off the ground, and it happens in both Stabilize mode and Position Hold mode. I’d be interested in what solution you found for this.


Are you able to explain here what the issue is?

This system is only available for all because so many have openly shared information.


I remember reading this a few months ago, and I had to refresh my memory by looking at the params again. The rate tuning on this helicopter were the defaults and the only two flight modes set up where Loiter and RTL. I suspect the rates would be the problem, and it is quite amazing it flew as good as it did in Loiter with the defaults.

Will post my solution here today! Im in class roght now.

Wylde, can you post your param files? we had couple of tweaks to solve our problem. Here are some steps that we followed:

First of all accel_z_p should not be 0.5 at all, by default it comes with 0.5. We are using 0.130, (this is also for other people reading this posts)

main thing that killed our oscillation was rate roll and rate pitch, we decreased the P values manually (from the full param list) till we had no oscillations, after decreasing it quite a bit we could fly without any oscillations. Also there are other parameters to make it even better such as ATC_RAT_RLL_VFF, but in order to talk about those, we need to take a look at your params. We also tweaked I values for everything (to make it perfect)

Also look at desired roll and desired pitch and actual pitch and actual roll (in the logs) , they need to be quite close to each other, if not your PID is still not perfect.

Also we noticed that our receiver had issues that was disturbing the autopilot and the servos, we also replaced that.

My 700 flies very well, but when I started troubleshooting the issue that started happening recently, I quickly found it was mostly due to the small cooling fan that comes with the ESC on the TREX 700X kit. The cooling fan was causing vibrations that would cause a very violent vertical oscillation or collective snapping with the swash plate that was also erratic, I just removed the fan and that problem is almost completely gone. It still happens but very seldom and only in a hover, and its just barely a twitch now, so much less severe, but its not completely gone.

I don’t have any pitch, roll, or yaw oscillation issues being I tuned this 700 with the new tuning method that was recently updated, but it does seem that there’s something causing swash plate sensitivity in the vertical plane(collective only), it could very well be the default accel_z_p rate you’ve mentioned is just too high, I’d be interested if Chris Olson could weigh in on this?

I don’t have any RF interference with my servos, they are completely motionless and silent with the PID armed, so I know that’s not the cause.

Here’s all my current ACCEL parameters:

I submitted a PR not too long ago to change the default ACCEL_Z_P for helicopters to 0.3. It was merged to master but is not yet in the stable releases. 0.5 is for multi’s and is bit too sensitive for heli’s.

Ok, I just did another test flight today, and the erratic snapping on the collective is still there at times, but only when in a hover, once I have some forward speed it goes away, so if I adjust ACCEL_Z_P down to 0.3, and that’s still not enough, would there be any risks in adjusting lower than 0.3?

Just read through your comments Chris and that answered my question, thanks again for your feedback, and for all you do man!

1 Like

No, if it takes 0.2, that’s fine. It’s whatever it takes to stop the collective pitch oscillation. Heli’s respond way faster on collective than multi’s do throttling motors. So the default of 0.5 does not work for heli’s all that well.

Ok, just got back from another test flight, it still does it at 0.2, so I think I’ll have to go lower yet, but the oscillation does seem softer, so I think its getting there. Umbcorp stated he went down to 0.13 with an 800, so I may end up at a similar value. Had to stop being it started to snow pretty hard, will finish testing this tomorrow and post my results back here.

I assume the faster your servos are, and if using the outer most ball link position on the servo arm, the lower this value will need to be.

Yes, if the servos are quite fast and mechanical linkage rate is quite fast too, it may take lower than 0.2. Your roll, pitch and yaw accels are quite high for a 800. Typically, to get a bigger heli to handle and act more like a full-size one I’ll be down around 36000 - 52000 on roll and pitch and 16000-20000 on yaw. That is not affecting your collective oscillation. Just an observation. Some pilots like a helicopter that can achiever higher angular accelerations, and if you like it that way don’t change it. But if it seems to “snappy” you can tame it down by lowering those accel values.

Ok, yes I haven’t tried to adjust the other accels yet, and really appreciate your feedback, just trying to eliminate all oscillations at this point, and yes I agree, it does feel much too sensitive in pitch and roll, would like to reduce both more once I get this collective oscillation resolved.

Just hoping I can get this collective oscillation resolved, hopefully reducing the ACCEL_Z_P further will take care of it.

Headspeed makes a difference on this too. The 700X is a quite responsive helicopter and if you are running 1600+ rpm headspeed at low disc loading and hovering at 5 degrees or less of collective pitch it will handle more like a sport heli instead of a UAV. Getting the headspeed down so it hovers at 5.5-7.0 degrees of collective pitch really slows down the response so it’s not quite so sensitive to collective (and cyclic) pitch changes. I like a blade tip speed of 375-400 fps for a UAV heli, which on your Trex 700X would be 1,400-1,470 rpm.

Align made it difficult to change gearing for a UAV application in their X models because the motor mount is not adjustable to accommodate different pinion gear. And the stock kit comes set up to run the head at 2,000 rpm. So it’s difficult to get it down to UAV headspeeds unless you switch to a 400 Kv motor with the stock 8.46 gears, and even then may have to drop the voltage to 10S.

Yes, that may be part of the problem too, I’m currently running at 1,550, and I can definitely go lower, I’m using the Elf governor mode with asymmetrical Spin Blades 710s, and with H_RSC_MODE = 2, so I just need to lower the setpoint for a lower headspeed, will do that first before lowering the ACCEL_Z_P value further.

Ok, with the Spins that’s a different deal again. I hovered those at 4-4.5 degrees pitch on my 700 gas and they can run a little slower around 1,350. At full gross weight full of fuel at 21 lbs I ran the head at 1,550. They actually create more tip drag than symmetric blades at the same tip speed (albeit more lift). So it’s necessary to run them a bit slower to take advantage of what they can do.

The other thing with Spins is that it takes less pitch change for a corresponding change in lift vs symmetric. So that is part (if not most) of your collective pitch sensitivity. I eventually went to Rail 716’s instead of the Spins, as the Rails are more power efficient and predictable in the wind. I no longer have the 700 gas - went to a 766 (Synergy) with Rails on it.