Radio mixing

https://groups.google.com/group/uavdevboard-dev
=== Radio mixing ===
poster Daniel
One last, but very important point is that using F_HOVER in a waypoint list 
or logo program is horribly dangerous, since it does not actually control 
the throttle to maintain altitude. So it will point the nose up, and try 
to keep it that way, but depending on other settings of options, may fly up 
super high, or lose altitude and become very unstable. I strongly suggest 
removing HOVER from you flightplan, unless you're ready to babysit it and 
switch to manual mode if necessary to recover. 
---------------
7
We have put much thought into this topic already. Any airframe that uses 
both a differential opposing movement (aileron + differential) combined 
with a common mode movement (camber) will have problems. The autopilot 
needs to know about roll and camber commands, not left aileron and right 
aileron. Finding the roll signal from the pre-mixed servo signals is not 
easy. The solution is to move the mixing from your radio transmitter and 
put it after the autopilot. 
There are two different solutions that two of us have implemented. 
Ric has a very nice setup on his Proxima using an external mixer module 
called channelwizard by fpkiwi. 
https://bitbucket.org/fpvkiwi/channel-wizard/wiki/Home 
This module has a scripting language that is used to do the mixer setup. 
 It interfaces with the radio in PPM which keeps things tidy. 
Ric made some excellent documentation around this. I could not find it now 
but I hope that he can post a link to it. 
I am using a UDB4 based field programmable mixer called FlexiFunctions. 
 This has a multiplatform GUI for editing settings and storing them to 
eeprom. I have been using it to fly this 10 channel FH glider. 
https://picasaweb.google.com/101029894981212633965/BarkabyFlying29041... 
I am using a Hitec Aurora 9 channel radio. With this setup, I am only 
using 7 channels. Roll, flap,yaw,camber,brake,throttle,mode. There is no 
limitation on maximum number of input channels. 
You will find the open source FlexiFunctions firmware to replace the 
standard mixing in the branch here: 
http://code.google.com/p/gentlenav/source/browse/#svn%2Fbranches%2FMa... 
The GUI software and wiki can be found here: 
http://code.google.com/p/pyfedit/ 
http://code.google.com/p/pyfedit/wiki/HowToEdit 
Flexifunctions has some health warnings: 
1. It is quite experimental with only one user (me) but has had some 
reasonably long real and virtual flight testing. 
2. You must use mavlink. 
3. You need to use the eeprom drivers to do field programming. 
4. GUI installation is not simple on Windows but quite simple on linux. 
5. The GUI will take some getting used to. 
I have also been flying a MPX Cularis and the example project is available 
on the pyfedit repository. 
Regards Matt
=== trim levels ===
https://code.google.com/p/gentlenav/issues/detail?id=76 Issue submitted 
https://groups.google.com/forum/#!topic/uavdevboard/sorb9t8JPmU
Just a reminder to everyone: If you trim the plane during manual while flying, and then you switch to stabilized and Auto without landing and rebooting the auto-pilot you run a risk. What is the risk ?
The risk is that when you lose radio contact with the plane, the plane will not know the new trim levels. So right when you want the plane to Return to Landing, with good trim, it will not have the new trim levels from that flight.
MatrixPilot measures the trim levels for the PWM inputs during the calibration phase of the gyros right after booting up (i.e. in the first 10 seconds). It is these trim levels that will always be used during full Return to Landing.
If you are in waypoint mode, and the transmitter is in contact with the plane, it will still be mixing in the trim levels from the transmitter to the overall output of the UDB. That is because the transmitter controls always mix into the outputs of the UDB in manual, stabilized and auto modes. But in RTL mode, with the transmitter lost, there will be no mixing in from the transmitter. So the trim values have to be trims that were measured at the bootup stage by the UDB. 
In Paul's video, he trims the plane for a heavy camera at the start of the video. And then engages Auto. For a small amount of trim, this may not matter, when RTL eventually engages later in the video. Especially if the plane was just going to descend quite quickly. But if the trim was for either preventing a stall, or for roll, then the effect in RTL could have been more. Clearly in this video, everything was fine. It was a super flight.
Best wishes, Pete
-------
Paul, were you using FAILSAFE_HOLD ?
https://code.google.com/p/gentlenav/source/browse/branches/MatrixPilot_legacy/MatrixPilot/options.h#333
Any telemetry available from either flight ?
 
Hi Pete,
 
Yes FAILSAFE_HOLD = 1 but no telemetry.
 
-Paul
Category:Gentlenav