From 9b752f5d2abc391544f1c834d68283d72a3fe9bb Mon Sep 17 00:00:00 2001
From: Andrew Tridgell <tridge@samba.org>
Date: Sat, 4 May 2013 14:41:40 +1000
Subject: [PATCH] PX4: added in remaining example mixers

---
 mk/PX4/ROMFS/mixers/FMU_AERT.mix   | 64 ++++++++++++++++++++++++++++++
 mk/PX4/ROMFS/mixers/FMU_AET.mix    | 60 ++++++++++++++++++++++++++++
 mk/PX4/ROMFS/mixers/FMU_Q.mix      | 52 ++++++++++++++++++++++++
 mk/PX4/ROMFS/mixers/FMU_RET.mix    | 53 +++++++++++++++++++++++++
 mk/PX4/ROMFS/mixers/FMU_X5.mix     | 50 +++++++++++++++++++++++
 mk/PX4/ROMFS/mixers/FMU_delta.mix  | 50 +++++++++++++++++++++++
 mk/PX4/ROMFS/mixers/FMU_hex_+.mix  |  7 ++++
 mk/PX4/ROMFS/mixers/FMU_hex_x.mix  |  7 ++++
 mk/PX4/ROMFS/mixers/FMU_octo_+.mix |  7 ++++
 mk/PX4/ROMFS/mixers/FMU_octo_x.mix |  7 ++++
 mk/PX4/ROMFS/mixers/FMU_quad_+.mix |  7 ++++
 mk/PX4/ROMFS/mixers/FMU_quad_v.mix |  7 ++++
 mk/PX4/ROMFS/mixers/FMU_quad_x.mix |  7 ++++
 13 files changed, 378 insertions(+)
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_AERT.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_AET.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_Q.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_RET.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_X5.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_delta.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_hex_+.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_hex_x.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_octo_+.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_octo_x.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_quad_+.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_quad_v.mix
 create mode 100644 mk/PX4/ROMFS/mixers/FMU_quad_x.mix

diff --git a/mk/PX4/ROMFS/mixers/FMU_AERT.mix b/mk/PX4/ROMFS/mixers/FMU_AERT.mix
new file mode 100644
index 000000000..75e82bb00
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_AERT.mix
@@ -0,0 +1,64 @@
+Aileron/rudder/elevator/throttle mixer for PX4FMU
+==================================================
+
+This file defines mixers suitable for controlling a fixed wing aircraft with
+aileron, rudder, elevator and throttle controls using PX4FMU. The configuration
+assumes the aileron servo(s) are connected to PX4FMU servo output 0, the
+elevator to output 1, the rudder to output 2 and the throttle to output 3.
+
+Inputs to the mixer come from channel group 0 (vehicle attitude), channels 0
+(roll), 1 (pitch) and 3 (thrust).
+
+Aileron mixer
+-------------
+Two scalers total (output, roll).
+
+This mixer assumes that the aileron servos are set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+As there is only one output, if using two servos adjustments to compensate for
+differences between the servos must be made mechanically.  To obtain the correct
+motion using a Y  cable, the servos can be positioned reversed from one another.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 0  10000  10000      0 -10000  10000
+
+Elevator mixer
+------------
+Two scalers total (output, roll).
+
+This mixer assumes that the elevator servo is set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+M: 1
+O:       10000   10000      0 -10000  10000
+S: 0 1  -10000  -10000      0 -10000  10000
+
+Rudder mixer
+------------
+Two scalers total (output, yaw).
+
+This mixer assumes that the rudder servo is set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 2  10000  10000      0 -10000  10000
+
+Motor speed mixer
+-----------------
+Two scalers total (output, thrust).
+
+This mixer generates a full-range output (-1 to 1) from an input in the (0 - 1)
+range.  Inputs below zero are treated as zero.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 3      0  20000 -10000 -10000  10000
diff --git a/mk/PX4/ROMFS/mixers/FMU_AET.mix b/mk/PX4/ROMFS/mixers/FMU_AET.mix
new file mode 100644
index 000000000..20cb88b91
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_AET.mix
@@ -0,0 +1,60 @@
+Aileron/elevator/throttle mixer for PX4FMU
+==================================================
+
+This file defines mixers suitable for controlling a fixed wing aircraft with
+aileron, elevator and throttle controls using PX4FMU. The configuration  assumes
+the aileron servo(s) are connected to PX4FMU servo output 0, the elevator to
+output 1 and the throttle to output 3.
+
+Inputs to the mixer come from channel group 0 (vehicle attitude), channels 0
+(roll), 1 (pitch) and 3 (thrust).
+
+Aileron mixer
+-------------
+Two scalers total (output, roll).
+
+This mixer assumes that the aileron servos are set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+As there is only one output, if using two servos adjustments to compensate for
+differences between the servos must be made mechanically.  To obtain the correct
+motion using a Y  cable, the servos can be positioned reversed from one another.
+
+Alternatively, output 2 could be used as a second aileron servo output with
+separate mixing.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 0  10000  10000      0 -10000  10000
+
+Elevator mixer
+------------
+Two scalers total (output, roll).
+
+This mixer assumes that the elevator servo is set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+M: 1
+O:       10000   10000      0 -10000  10000
+S: 0 1  -10000  -10000      0 -10000  10000
+
+Output 2
+--------
+This mixer is empty.
+
+Z:
+
+Motor speed mixer
+-----------------
+Two scalers total (output, thrust).
+
+This mixer generates a full-range output (-1 to 1) from an input in the (0 - 1)
+range.  Inputs below zero are treated as zero.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 3      0  20000 -10000 -10000  10000
diff --git a/mk/PX4/ROMFS/mixers/FMU_Q.mix b/mk/PX4/ROMFS/mixers/FMU_Q.mix
new file mode 100644
index 000000000..ebcb66b24
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_Q.mix
@@ -0,0 +1,52 @@
+Delta-wing mixer for PX4FMU
+===========================
+
+Designed for Bormatec Camflyer Q
+
+This file defines mixers suitable for controlling a delta wing aircraft using
+PX4FMU. The configuration assumes the elevon servos are connected to PX4FMU
+servo outputs 0 and 1 and the motor speed control to output 3. Output 2 is
+assumed to be unused.
+
+Inputs to the mixer come from channel group 0 (vehicle attitude), channels 0
+(roll), 1 (pitch) and 3 (thrust).
+
+See the README for more information on the scaler format.
+
+Elevon mixers
+-------------
+Three scalers total (output, roll, pitch).
+
+On the assumption that the two elevon servos are physically reversed, the pitch
+input is inverted between the two servos.
+
+The scaling factor for roll inputs is adjusted to implement differential travel
+for the elevons.
+
+M: 2
+O:      10000  10000      0 -10000  10000
+S: 0 0  -5000  -8000      0 -10000  10000
+S: 0 1   8000   8000      0 -10000  10000
+
+M: 2
+O:      10000  10000      0 -10000  10000
+S: 0 0  -8000  -5000      0 -10000  10000
+S: 0 1  -8000  -8000      0 -10000  10000
+
+Output 2
+--------
+This mixer is empty.
+
+Z:
+
+Motor speed mixer
+-----------------
+Two scalers total (output, thrust).
+
+This mixer generates a full-range output (-1 to 1) from an input in the (0 - 1)
+range.  Inputs below zero are treated as zero.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 3      0  20000 -10000 -10000  10000
+
diff --git a/mk/PX4/ROMFS/mixers/FMU_RET.mix b/mk/PX4/ROMFS/mixers/FMU_RET.mix
new file mode 100644
index 000000000..95beb8927
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_RET.mix
@@ -0,0 +1,53 @@
+Rudder/elevator/throttle mixer for PX4FMU
+=========================================
+
+This file defines mixers suitable for controlling a fixed wing aircraft with
+rudder, elevator and throttle controls using PX4FMU. The configuration assumes
+the rudder servo is connected to PX4FMU servo output 0, the elevator to output 1
+and the throttle to output 3.
+
+Inputs to the mixer come from channel group 0 (vehicle attitude), channels 0
+(roll), 1 (pitch) and 3 (thrust).
+
+Rudder mixer
+------------
+Two scalers total (output, roll).
+
+This mixer assumes that the rudder servo is set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 0  10000  10000      0 -10000  10000
+
+Elevator mixer
+------------
+Two scalers total (output, roll).
+
+This mixer assumes that the elevator servo is set up correctly mechanically;
+depending on the actual configuration it may be necessary to reverse the scaling
+factors (to reverse the servo movement) and adjust the offset, scaling and
+endpoints to suit.
+
+M: 1
+O:       10000   10000      0 -10000  10000
+S: 0 1  -10000  -10000      0 -10000  10000
+
+Output 2
+--------
+This mixer is empty.
+
+Z:
+
+Motor speed mixer
+-----------------
+Two scalers total (output, thrust).
+
+This mixer generates a full-range output (-1 to 1) from an input in the (0 - 1)
+range.  Inputs below zero are treated as zero.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 3      0  20000 -10000 -10000  10000
diff --git a/mk/PX4/ROMFS/mixers/FMU_X5.mix b/mk/PX4/ROMFS/mixers/FMU_X5.mix
new file mode 100644
index 000000000..9f81e1dc3
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_X5.mix
@@ -0,0 +1,50 @@
+Delta-wing mixer for PX4FMU
+===========================
+
+This file defines mixers suitable for controlling a delta wing aircraft using
+PX4FMU. The configuration assumes the elevon servos are connected to PX4FMU
+servo outputs 0 and 1 and the motor speed control to output 3. Output 2 is
+assumed to be unused.
+
+Inputs to the mixer come from channel group 0 (vehicle attitude), channels 0
+(roll), 1 (pitch) and 3 (thrust).
+
+See the README for more information on the scaler format.
+
+Elevon mixers
+-------------
+Three scalers total (output, roll, pitch).
+
+On the assumption that the two elevon servos are physically reversed, the pitch
+input is inverted between the two servos.
+
+The scaling factor for roll inputs is adjusted to implement differential travel
+for the elevons.
+
+M: 2
+O:      10000  10000      0 -10000  10000
+S: 0 0  -3000  -5000      0 -10000  10000
+S: 0 1  -5000  -5000      0 -10000  10000
+
+M: 2
+O:      10000  10000      0 -10000  10000
+S: 0 0  -5000  -3000      0 -10000  10000
+S: 0 1   5000   5000      0 -10000  10000
+
+Output 2
+--------
+This mixer is empty.
+
+Z:
+
+Motor speed mixer
+-----------------
+Two scalers total (output, thrust).
+
+This mixer generates a full-range output (-1 to 1) from an input in the (0 - 1)
+range.  Inputs below zero are treated as zero.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 3      0  20000 -10000 -10000  10000
+
diff --git a/mk/PX4/ROMFS/mixers/FMU_delta.mix b/mk/PX4/ROMFS/mixers/FMU_delta.mix
new file mode 100644
index 000000000..981466704
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_delta.mix
@@ -0,0 +1,50 @@
+Delta-wing mixer for PX4FMU
+===========================
+
+This file defines mixers suitable for controlling a delta wing aircraft using
+PX4FMU. The configuration assumes the elevon servos are connected to PX4FMU
+servo outputs 0 and 1 and the motor speed control to output 3. Output 2 is
+assumed to be unused.
+
+Inputs to the mixer come from channel group 0 (vehicle attitude), channels 0
+(roll), 1 (pitch) and 3 (thrust).
+
+See the README for more information on the scaler format.
+
+Elevon mixers
+-------------
+Three scalers total (output, roll, pitch).
+
+On the assumption that the two elevon servos are physically reversed, the pitch
+input is inverted between the two servos.
+
+The scaling factor for roll inputs is adjusted to implement differential travel
+for the elevons.
+
+M: 2
+O:      10000  10000      0 -10000  10000
+S: 0 0   3000   5000      0 -10000  10000
+S: 0 1   5000   5000      0 -10000  10000
+
+M: 2
+O:      10000  10000      0 -10000  10000
+S: 0 0   5000   3000      0 -10000  10000
+S: 0 1  -5000  -5000      0 -10000  10000
+
+Output 2
+--------
+This mixer is empty.
+
+Z:
+
+Motor speed mixer
+-----------------
+Two scalers total (output, thrust).
+
+This mixer generates a full-range output (-1 to 1) from an input in the (0 - 1)
+range.  Inputs below zero are treated as zero.
+
+M: 1
+O:      10000  10000      0 -10000  10000
+S: 0 3      0  20000 -10000 -10000  10000
+
diff --git a/mk/PX4/ROMFS/mixers/FMU_hex_+.mix b/mk/PX4/ROMFS/mixers/FMU_hex_+.mix
new file mode 100644
index 000000000..b5e38ce9e
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_hex_+.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a hexacopter in the + configuration. All controls
+are mixed 100%.
+
+R: 6+ 10000 10000 10000 0
diff --git a/mk/PX4/ROMFS/mixers/FMU_hex_x.mix b/mk/PX4/ROMFS/mixers/FMU_hex_x.mix
new file mode 100644
index 000000000..8e8d122ad
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_hex_x.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a hexacopter in the X configuration.  All controls
+are mixed 100%.
+
+R: 6x 10000 10000 10000 0
diff --git a/mk/PX4/ROMFS/mixers/FMU_octo_+.mix b/mk/PX4/ROMFS/mixers/FMU_octo_+.mix
new file mode 100644
index 000000000..2cb70e814
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_octo_+.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a octocopter in the + configuration. All controls
+are mixed 100%.
+
+R: 8+ 10000 10000 10000 0
diff --git a/mk/PX4/ROMFS/mixers/FMU_octo_x.mix b/mk/PX4/ROMFS/mixers/FMU_octo_x.mix
new file mode 100644
index 000000000..edc71f013
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_octo_x.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a octocopter in the X configuration.  All controls
+are mixed 100%.
+
+R: 8x 10000 10000 10000 0
diff --git a/mk/PX4/ROMFS/mixers/FMU_quad_+.mix b/mk/PX4/ROMFS/mixers/FMU_quad_+.mix
new file mode 100644
index 000000000..dfdf1d58e
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_quad_+.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a quadrotor in the + configuration. All controls
+are mixed 100%.
+
+R: 4+ 10000 10000 10000 0
diff --git a/mk/PX4/ROMFS/mixers/FMU_quad_v.mix b/mk/PX4/ROMFS/mixers/FMU_quad_v.mix
new file mode 100644
index 000000000..2a4a0f341
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_quad_v.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a quadrotor in the V configuration.  All controls
+are mixed 100%.
+
+R: 4v 10000 10000 10000 0
diff --git a/mk/PX4/ROMFS/mixers/FMU_quad_x.mix b/mk/PX4/ROMFS/mixers/FMU_quad_x.mix
new file mode 100644
index 000000000..12a3bee20
--- /dev/null
+++ b/mk/PX4/ROMFS/mixers/FMU_quad_x.mix
@@ -0,0 +1,7 @@
+Multirotor mixer for PX4FMU
+===========================
+
+This file defines a single mixer for a quadrotor in the X configuration.  All controls
+are mixed 100%.
+
+R: 4x 10000 10000 10000 0
-- 
GitLab