Neutral drift on servos
« on: December 15, 2016, 03:22:58 pm »
 I began using a CC3D atom two days ago, and at first all went well. I downloaded LibrePilot GCS and set up the board for a simple fixed wing, FrSky radio with FrSky module in a JR PCM9X. Stab 1 is all Manual so that I can turn it all off in emergency. Stab 2 is Rate, stab 3 is Rattitude, with throttle and rudder Manual on all three to keep it simple. The leveling was OK, and I always wait till the blue light settles down before giving any commands. It is not installed in a model yet, just driving a set of servos on the bench.

The result is perfect behaviour in stab 1, but anomalies in the others. In stabs 2 & 3 the roll and pitch servos reach full travel before the sticks do. In stab 3 the servos creep away from the neutral position though flicking the mode switch momentarily returns them to centre, but the creep starts again. I can reduce this to an acceptable minimum by applying trim, but I understand that this is not a recommended procedure. It happens to a lesser extent in stab 2. Also in stab 2 & 3 the servos return to widely different neutral positions depending on which way the stick was last moved. Other than that the performance is as I expected that it would be, as far as I can tell working the system on the bench. Flying tests will have to wait a little while.

I am sure I am doing something wrong but have no idea what. I have saved a .uav file and made a short video of the servo movements, though I do not yet know how to post either in this forum. I could upload them to my website for anyone to download. I am hoping for someone with experience to point me in the right direction.

f5soh

  • *****
  • 3922
    • LibrePilot
Re: Neutral drift on servos
« Reply #1 on: December 15, 2016, 07:22:06 pm »
Servos moving while switching to Rattitude/Attitude looks normal, the vehicle is rarely level when vehicle sit on ground.

You should not add trims in all cases, this can cause the vehicle rolling all time while switching to Rate stabilization and Integral term add error if vehicle do not move.

Maybe do a flight in Manual mode using trims and look the values you found in UAVOBrowser > ActuatorCommand after a successful flight
Note the values for every output and set those values as neutral in Output tab, next, return all input trims to 0.
Also you should set the min/max values according to acceptable mechanical limits, according to the servo mount (this should be done using Wizard and do something symmetrical for Ailerons)

Hope this helps.

Re: Neutral drift on servos
« Reply #2 on: December 16, 2016, 06:38:05 am »
I would avoid trying to use Rattitude on a Fixed Wing.  Maybe experiment later on...

When stabilization is active, neutral drift on servos is to be expected for the same reason that a quad's motors wind up when sitting on the ground, motors spinning slowly.  It is trying to stabilize it and the vehicle is not changing, so it tries harder and harder.  Get your neutral set in Manual mode, and when you switch to Attitude, you should be able to bank the board (all directions) and see the servos move (all directions).  The more banked the board is, the faster it drifts.  This is how it corrects for a warped wing when flying.

Put it in a plane and "hand fly" it.  If the aileron drifts left, bank it left and you will see the drift stop / reverse (depending on how much you bank it).  Elevator the same way.  This is also a good sanity check to make sure things are working correctly.

Re: Neutral drift on servos
« Reply #3 on: December 16, 2016, 09:27:40 pm »
Thanks to you both for the tips, this is day 4 since I began with the CC3D Atom. I may not have explained the situation well enough, but there is no chance of a test flight because I am not ready to put it in a model yet. I began by trying to make the board work on a bench, using a block of four servos connected as if in an aeroplane. It was fine at first, and then the anomalies began. There was no way I would commit a new piece of technology to flight until it was working reliably on the test rig.

Its last trick was to begin erratic servo movements, then to lose contact with the transmitter, then to lose its bootloader. I have delved into the net and found how to restore it, but at the last stage of the process it refuses to save the bootloader to the board.

I am using LibrePilot 16.09 throughout and the files insist the correct bootloader for V4 is bu_cc3d.opfw, but it’s not having it. Where to go? Has the board become permanently damaged?

f5soh

  • *****
  • 3922
    • LibrePilot
Re: Neutral drift on servos
« Reply #4 on: December 16, 2016, 09:36:28 pm »
Procedure is here:
https://librepilot.atlassian.net/wiki/display/LPDOC/Firmware+Tab#FirmwareTab-UpdateBootloaderandUpdatefirmware

After the Rescue you should see the bootloader version displayed (v4).
If you updated the bootloader, next step is manually update the firmware, this means click the "Upgrade&Erase" before connecting the board.


Re: Neutral drift on servos
« Reply #5 on: December 17, 2016, 10:33:54 pm »
The CC3D is clearly well regarded and widely used on quads so the problems I had with fixed wing must have been my own fault. I still have no idea what I did wrong to lose the bootloader, but hearty thanks to f5soh for pointing me in the right direction. It is all working correctly again. Earlier failures to complete the rescue were probably down to either missing out a step in the process, or being too hasty where I needed to wait. Forum help invaluable.