So I've been hooked on the idea of a tandem rotor helicopter lately, but all mixing boards for this purpose are out of production as far as I can tell. This left me pondering doing the mixing in the tx using the many virtual channels Deviation tx provides.
What follows is part of the .ini file for the model config I've created.
Features:
- mixing to 2x 3servo swashplates plus throttle (7ch)
- easy adjustment of mixing percentages and curves (virt channels)
- separate elevator and differential collective pitch (DCP) mixes for FF
- a fancy layout to display stick and mixer ouputs seperately
- sticky throttle hold (Virt1)
- Ch 1: throttle
- Ch 2, 3, 4: front swash (2 forward, 1 rear)
- Ch 5, 6, 7: rear swash (2 forward, 1 rear)
For now it is a proof of concept with no hardware to test it on. Given my success with this config I am moving to do a test platform, but it'll be a while before I have time and some pieces arrive in the mail.
I'd love to hear what the community thinks of the viability of this approach, and yes I know there will be no stabilization.
name=Tandem
mixermode=Advanced
[radio]
protocol=None
num_channels=7
fixed_id=123456
tx_power=150mW
[channel1]
safetysw=Virt1
safetyval=-100
max=100
min=-100
template=complex
[mixer]
src=THR
dest=Ch1
scalar=0
offset=50
usetrim=0
curvetype=expo
points=0,0
[mixer]
src=THR
dest=Ch1
switch=FMODE0
usetrim=0
curvetype=3point
points=-100,50,50
[channel2]
max=120
min=-120
template=complex
[mixer]
src=Ch2
dest=Ch2
scalar=0
usetrim=0
curvetype=fixed
[mixer]
src=!Virt2
dest=Ch2
usetrim=0
muxtype=add
[mixer]
src=!Virt4
dest=Ch2
usetrim=0
muxtype=add
[mixer]
src=!Virt5
dest=Ch2
usetrim=0
muxtype=add
[mixer]
src=Virt7
dest=Ch2
usetrim=0
muxtype=add
[mixer]
src=!Virt9
dest=Ch2
usetrim=0
muxtype=add
[channel3]
max=120
min=-120
template=complex
[mixer]
src=Ch3
dest=Ch3
scalar=0
curvetype=fixed
[mixer]
src=Virt2
dest=Ch3
usetrim=0
muxtype=add
[mixer]
src=!Virt4
dest=Ch3
usetrim=0
muxtype=add
[mixer]
src=!Virt5
dest=Ch3
usetrim=0
muxtype=add
[mixer]
src=Virt7
dest=Ch3
usetrim=0
muxtype=add
[mixer]
src=Virt9
dest=Ch3
usetrim=0
muxtype=add
[channel4]
max=120
min=-120
template=complex
[mixer]
src=Ch4
dest=Ch4
scalar=0
usetrim=0
curvetype=fixed
[mixer]
src=Virt4
dest=Ch4
usetrim=0
muxtype=add
[mixer]
src=!Virt5
dest=Ch4
usetrim=0
muxtype=add
[mixer]
src=Virt7
dest=Ch4
usetrim=0
muxtype=add
[channel5]
max=120
min=-120
template=complex
[mixer]
src=Ch5
dest=Ch5
scalar=0
usetrim=0
curvetype=fixed
[mixer]
src=!Virt2
dest=Ch5
usetrim=0
muxtype=add
[mixer]
src=!Virt4
dest=Ch5
usetrim=0
muxtype=add
[mixer]
src=Virt5
dest=Ch5
usetrim=0
muxtype=add
[mixer]
src=Virt7
dest=Ch5
usetrim=0
muxtype=add
[mixer]
src=Virt9
dest=Ch5
usetrim=0
muxtype=add
[channel6]
max=120
min=-120
template=complex
[mixer]
src=Ch6
dest=Ch6
scalar=0
curvetype=fixed
[mixer]
src=Virt2
dest=Ch6
usetrim=0
muxtype=add
[mixer]
src=!Virt4
dest=Ch6
usetrim=0
muxtype=add
[mixer]
src=Virt5
dest=Ch6
usetrim=0
muxtype=add
[mixer]
src=Virt7
dest=Ch6
usetrim=0
muxtype=add
[mixer]
src=!Virt9
dest=Ch6
usetrim=0
muxtype=add
[channel7]
max=120
min=-120
template=complex
[mixer]
src=Ch7
dest=Ch7
scalar=0
usetrim=0
curvetype=fixed
[mixer]
src=Virt4
dest=Ch7
usetrim=0
muxtype=add
[mixer]
src=Virt5
dest=Ch7
usetrim=0
muxtype=add
[mixer]
src=Virt7
dest=Ch7
usetrim=0
muxtype=add
[virtchan1]
name=Safety
template=complex
[mixer]
src=Virt1
dest=Virt1
usetrim=0
curvetype=min/max
points=0
[mixer]
src=THR
dest=Virt1
offset=-1
usetrim=0
muxtype=add
[mixer]
src=THR
dest=Virt1
switch=GEAR1
usetrim=0
curvetype=fixed
[virtchan2]
name=AIL mix
template=simple
[mixer]
src=Virt3
dest=Virt2
scalar=30
[virtchan3]
name=AIL d/r
template=expo_dr
[mixer]
src=AIL
dest=Virt3
scalar=50
curvetype=expo
points=0,0
[mixer]
src=AIL
dest=Virt3
switch=DR1
curvetype=expo
points=0,0
[virtchan4]
name=ELE mix
template=complex
[mixer]
src=Virt6
dest=Virt4
scalar=10
curvetype=5point
points=-100,-25,0,25,100
smooth=1
[virtchan5]
name=Diff CP
template=complex
[mixer]
src=Virt6
dest=Virt5
scalar=0
usetrim=0
curvetype=fixed
[mixer]
src=Virt6
dest=Virt5
scalar=20
muxtype=add
curvetype=5point
points=-25,-75,0,75,100
smooth=1
[virtchan6]
name=ELE d/r
template=expo_dr
[mixer]
src=ELE
dest=Virt6
scalar=50
curvetype=expo
points=0,0
[mixer]
src=ELE
dest=Virt6
switch=DR1
curvetype=expo
points=0,0
[virtchan7]
name=Pitch mix
template=simple
[mixer]
src=Virt8
dest=Virt7
scalar=40
[virtchan8]
name=Pitch
template=complex
[mixer]
src=THR
dest=Virt8
scalar=0
usetrim=0
curvetype=fixed
[mixer]
src=THR
dest=Virt8
switch=FMODE1
usetrim=0
muxtype=add
curvetype=3point
points=0,50,100
[mixer]
src=THR
dest=Virt8
switch=FMODE2
usetrim=0
muxtype=add
curvetype=3point
points=-20,50,100
[mixer]
src=THR
dest=Virt8
switch=Virt1
scalar=0
usetrim=0
curvetype=fixed
[virtchan9]
name=RUD mix
template=simple
[mixer]
src=Virt10
dest=Virt9
scalar=20
[virtchan10]
name=RUD d/r
template=expo_dr
[mixer]
src=RUD
dest=Virt10
scalar=50
curvetype=expo
points=0,0
[mixer]
src=RUD
dest=Virt10
switch=DR1
curvetype=expo
points=0,0