Changed naming of the mixers to get rid of umbiguity as outputs are actually going to be driven by io, not fmu

Implemented automatic lookup for the .aux.mix file if it exists
This commit is contained in:
Anton Matosov
2015-01-07 00:25:06 +02:00
parent 74b63d08e1
commit 08062e6546
56 changed files with 81 additions and 54 deletions
@@ -7,4 +7,4 @@
sh /etc/init.d/rc.fw_defaults
set HIL yes
set MIXER FMU_AERT
set MIXER AERT
@@ -24,7 +24,7 @@ then
param set MC_YAWRATE_D 0.0
fi
set MIXER FMU_quad_w
set MIXER quad_w
set PWM_OUT 1234
set PWM_MIN 1200
+1 -1
View File
@@ -27,7 +27,7 @@ then
param set BAT_C_SCALING 0.0124
fi
set MIXER FMU_quad_w
set MIXER quad_w
set PWM_OUT 1234
@@ -26,7 +26,7 @@ then
param set BAT_N_CELLS 4
fi
set MIXER FMU_quad_w
set MIXER quad_w
set PWM_MIN 1210
set PWM_MAX 2100
@@ -25,7 +25,7 @@ then
param set MC_YAWRATE_D 0.0
fi
set MIXER FMU_quad_w
set MIXER quad_w
set PWM_OUTPUTS 1234
set PWM_MIN 1200
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_quad_x
set MIXER quad_x
set HIL yes
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_quad_+
set MIXER quad_+
set HIL yes
@@ -9,4 +9,4 @@ sh /etc/init.d/rc.fw_defaults
set HIL yes
set MIXER FMU_AERT
set MIXER AERT
@@ -35,4 +35,4 @@ fi
set HIL yes
# Set the AERT mixer for HIL (even if the malolo is a flying wing)
set MIXER FMU_AERT
set MIXER AERT
+1 -1
View File
@@ -7,7 +7,7 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_hexa_cox
set MIXER hexa_cox
# Need to set all 8 channels
set PWM_OUT 12345678
+1 -1
View File
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_octo_cox
set MIXER octo_cox
set PWM_OUT 12345678
@@ -7,7 +7,7 @@
sh /etc/init.d/rc.vtol_defaults
set MIXER FMU_caipirinha_vtol
set MIXER caipirinha_vtol
set PWM_OUT 12
set PWM_MAX 2000
+1 -2
View File
@@ -7,8 +7,7 @@
sh /etc/init.d/rc.vtol_defaults
set MIXER FMU_firefly6_rotors
set MIXER_SEC FMU_firefly6_elevons
set MIXER firefly6
set PWM_OUT 12345678
param set VT_MOT_COUNT 6
+1 -1
View File
@@ -2,4 +2,4 @@
sh /etc/init.d/rc.fw_defaults
set MIXER FMU_AERT
set MIXER AERT
@@ -2,4 +2,4 @@
sh /etc/init.d/rc.fw_defaults
set MIXER FMU_AET
set MIXER AET
+1 -1
View File
@@ -2,7 +2,7 @@
sh /etc/init.d/rc.fw_defaults
set MIXER FMU_Q
set MIXER Q
# Provide ESC a constant 1000 us pulse while disarmed
set PWM_OUT 4
set PWM_DISARMED 1000
+1 -1
View File
@@ -28,4 +28,4 @@ then
param set FW_R_RMAX 0
fi
set MIXER FMU_X5
set MIXER X5
+1 -1
View File
@@ -7,4 +7,4 @@
sh /etc/init.d/rc.fw_defaults
set MIXER FMU_FX79
set MIXER FX79
@@ -31,4 +31,4 @@ then
param set FW_R_RMAX 0
fi
set MIXER FMU_Q
set MIXER Q
+1 -1
View File
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_quad_x
set MIXER quad_x
set PWM_OUT 1234
+1 -1
View File
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_quad_+
set MIXER quad_+
set PWM_OUT 1234
+1 -1
View File
@@ -7,7 +7,7 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_hexa_x
set MIXER hexa_x
# Need to set all 8 channels
set PWM_OUT 12345678
+1 -1
View File
@@ -7,7 +7,7 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_hexa_+
set MIXER hexa_+
# Need to set all 8 channels
set PWM_OUT 12345678
+1 -1
View File
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_octo_x
set MIXER octo_x
set PWM_OUT 12345678
+1 -1
View File
@@ -7,6 +7,6 @@
sh /etc/init.d/rc.mc_defaults
set MIXER FMU_octo_+
set MIXER octo_+
set PWM_OUT 12345678
+43 -15
View File
@@ -3,19 +3,30 @@
# Script to configure control interface
#
set SDCARD_MIXERS_PATH /fs/microsd/etc/mixers
if [ $MIXER != none -a $MIXER != skip ]
then
#
# Load mixer
# Load main mixer
#
if [ $MIXER_AUX == none ]
then
MIXER_AUX = $MIXER.aux
fi
# Use the mixer file from the SD-card if it exists
if [ -f /fs/microsd/etc/mixers/$MIXER.mix ]
if [ -f $SDCARD_MIXERS_PATH/$MIXER.main.mix ]
then
set MIXER_FILE /fs/microsd/etc/mixers/$MIXER.mix
else
set MIXER_FILE /etc/mixers/$MIXER.mix
fi
set MIXER_FILE $SDCARD_MIXERS_PATH/$MIXER.main.mix
# Try out the old convention, for backward compatibility
elif [ -f $SDCARD_MIXERS_PATH/$MIXER.mix ]
then
set MIXER_FILE $SDCARD_MIXERS_PATH/$MIXER.mix
else
set MIXER_FILE /etc/mixers/$MIXER.main.mix
fi
if [ $OUTPUT_MODE == mkblctrl ]
then
@@ -80,14 +91,31 @@ then
pwm failsafe -d $OUTPUT_DEV $FAILSAFE
fi
fi
# check if should load secondary mixer
if [ $MIXER_SEC != none ]
if [ $MIXER_AUX != none ]
then
if fmu mode_pwm
then
mixer load /dev/pwm_output1 /etc/mixers/$MIXER_SEC.mix
else
tone_alarm $TUNE_ERR
fi
fi
#
# Load aux mixer
#
set MIXER_AUX_FILE none
if [ -f $SDCARD_MIXERS_PATH/$MIXER_AUX.mix ]
then
set MIXER_AUX_FILE $SDCARD_MIXERS_PATH/$MIXER_AUX.mix
elif [ -f /etc/mixers/$MIXER_AUX.mix ]
then
set MIXER_AUX_FILE /etc/mixers/$MIXER_AUX.mix
fi
if [ $MIXER_AUX_FILE != none -a $FMU_MODE == pwm ]
then
if fmu mode_pwm
then
mixer load /dev/pwm_output1 $MIXER_AUX_FILE
else
tone_alarm $TUNE_ERR
fi
fi
fi
+10 -10
View File
@@ -116,7 +116,7 @@ then
set HIL no
set VEHICLE_TYPE none
set MIXER none
set MIXER_SEC none
set MIXER_AUX none
set OUTPUT_MODE none
set PWM_OUT none
set PWM_RATE none
@@ -482,7 +482,7 @@ then
if [ $MIXER == none ]
then
# Set default mixer for fixed wing if not defined
set MIXER FMU_AERT
set MIXER AERT
fi
if [ $MAV_TYPE == none ]
@@ -518,27 +518,27 @@ then
if [ $MAV_TYPE == none ]
then
# Use mixer to detect vehicle type
if [ $MIXER == FMU_quad_x -o $MIXER == FMU_quad_+ ]
if [ $MIXER == quad_x -o $MIXER == quad_+ ]
then
set MAV_TYPE 2
fi
if [ $MIXER == FMU_quad_w ]
if [ $MIXER == quad_w ]
then
set MAV_TYPE 2
fi
if [ $MIXER == FMU_hexa_x -o $MIXER == FMU_hexa_+ ]
if [ $MIXER == hexa_x -o $MIXER == hexa_+ ]
then
set MAV_TYPE 13
fi
if [ $MIXER == FMU_hexa_cox ]
if [ $MIXER == hexa_cox ]
then
set MAV_TYPE 13
fi
if [ $MIXER == FMU_octo_x -o $MIXER == FMU_octo_+ ]
if [ $MIXER == octo_x -o $MIXER == octo_+ ]
then
set MAV_TYPE 14
fi
if [ $MIXER == FMU_octo_cox ]
if [ $MIXER == octo_cox ]
then
set MAV_TYPE 14
fi
@@ -577,11 +577,11 @@ then
if [ $MAV_TYPE == none ]
then
# Use mixer to detect vehicle type
if [ $MIXER == FMU_caipirinha_vtol ]
if [ $MIXER == caipirinha_vtol ]
then
set MAV_TYPE 19
fi
if [ $MIXER == FMU_firefly6_rotors ]
if [ $MIXER == firefly6_rotors ]
then
set MAV_TYPE 21
fi
+1 -1
View File
@@ -343,7 +343,7 @@ int test_mixer(int argc, char *argv[])
if (argc > 2)
filename = argv[2];
else
filename = "/etc/mixers/FMU_quad_w.mix";
filename = "/etc/mixers/quad_w.main.mix";
load_mixer_file(filename, &buf[0], sizeof(buf));
loaded = strlen(buf);
+1 -1
View File
@@ -4,6 +4,6 @@
#include "gtest/gtest.h"
TEST(ConversionTest, FMU_quad_w) {
TEST(ConversionTest, quad_w_main) {
ASSERT_EQ(test_conv(0, NULL), 0) << "Conversion test failed";
}
+1 -1
View File
@@ -6,6 +6,6 @@
TEST(MixerTest, Mixer) {
char* args[] = {"empty", "../ROMFS/px4fmu_common/mixers/IO_pass.mix", "../ROMFS/px4fmu_common/mixers/FMU_quad_w.mix"};
char* args[] = {"empty", "../ROMFS/px4fmu_common/mixers/IO_pass.mix", "../ROMFS/px4fmu_common/mixers/quad_w.main.mix"};
ASSERT_EQ(test_mixer(3, args), 0) << "IO_pass.mix failed";
}