aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Wilks <sjwilks@gmail.com>2013-12-28 08:56:58 +0100
committerSimon Wilks <sjwilks@gmail.com>2013-12-28 08:56:58 +0100
commitd9f75a751b72c266ef68de4e1b7c56fafe1c8d5a (patch)
tree9615f74ff17f95354460281ac605e2c647a0ede1
parentd623c703ceafd3835064dd8466f49cc0409215db (diff)
downloadpx4-firmware-d9f75a751b72c266ef68de4e1b7c56fafe1c8d5a.tar.gz
px4-firmware-d9f75a751b72c266ef68de4e1b7c56fafe1c8d5a.tar.bz2
px4-firmware-d9f75a751b72c266ef68de4e1b7c56fafe1c8d5a.zip
Startup script for Wing Wing (Z-84)
-rw-r--r--ROMFS/px4fmu_common/init.d/33_io_wingwing91
-rw-r--r--ROMFS/px4fmu_common/init.d/rcS6
2 files changed, 97 insertions, 0 deletions
diff --git a/ROMFS/px4fmu_common/init.d/33_io_wingwing b/ROMFS/px4fmu_common/init.d/33_io_wingwing
new file mode 100644
index 000000000..fd709ec86
--- /dev/null
+++ b/ROMFS/px4fmu_common/init.d/33_io_wingwing
@@ -0,0 +1,91 @@
+#!nsh
+
+echo "[init] PX4FMU v1, v2 with or without IO on the Wing Wing (aka Z-84)"
+
+#
+# Load default params for this platform
+#
+if param compare SYS_AUTOCONFIG 1
+then
+ # Set all params here, then disable autoconfig
+ param set FW_AIRSPD_MIN 7
+ param set FW_AIRSPD_TRIM 9
+ param set FW_AIRSPD_MAX 14
+ param set FW_P_D 0
+ param set FW_P_I 0
+ param set FW_P_IMAX 15
+ param set FW_P_LIM_MAX 30
+ param set FW_P_LIM_MIN -20
+ param set FW_P_P 30
+ param set FW_P_RMAX_NEG 0
+ param set FW_P_RMAX_POS 0
+ param set FW_P_ROLLFF 2
+ param set FW_R_D 0
+ param set FW_R_I 5
+ param set FW_R_IMAX 20
+ param set FW_R_P 60
+ param set FW_R_RMAX 60
+ param set FW_THR_CRUISE 0.65
+ param set FW_THR_MAX 0.7
+ param set FW_THR_MIN 0
+ param set FW_T_SINK_MAX 5.0
+ param set FW_T_SINK_MIN 2.0
+ param set FW_T_TIME_CONST 4
+ param set FW_Y_ROLLFF 2.0
+ param set FW_L1_PERIOD 25.0
+ param set RC_SCALE_ROLL 1.0
+ param set RC_SCALE_PITCH 1.0
+
+ param set SYS_AUTOCONFIG 0
+ param save
+fi
+
+#
+# Force some key parameters to sane values
+# MAV_TYPE 1 = fixed wing
+#
+param set MAV_TYPE 1
+
+set EXIT_ON_END no
+
+#
+# Start and configure PX4IO or FMU interface
+#
+if px4io detect
+then
+ # Start MAVLink (depends on orb)
+ mavlink start
+
+ sh /etc/init.d/rc.io
+ # Limit to 100 Hz updates and (implicit) 50 Hz PWM
+ px4io limit 100
+else
+ # Start MAVLink (on UART1 / ttyS0)
+ mavlink start -d /dev/ttyS0
+
+ fmu mode_pwm
+ param set BAT_V_SCALING 0.004593
+ set EXIT_ON_END yes
+fi
+
+#
+# Load mixer and start controllers (depends on px4io)
+#
+if [ -f /fs/microsd/etc/mixers/FMU_Q.mix ]
+then
+ echo "Using /fs/microsd/etc/mixers/FMU_Q.mix"
+ mixer load /dev/pwm_output /fs/microsd/etc/mixers/FMU_Q.mix
+else
+ echo "Using /etc/mixers/FMU_Q.mix"
+ mixer load /dev/pwm_output /etc/mixers/FMU_Q.mix
+fi
+
+#
+# Start common fixedwing apps
+#
+sh /etc/init.d/rc.fixedwing
+
+if [ $EXIT_ON_END == yes ]
+then
+ exit
+fi \ No newline at end of file
diff --git a/ROMFS/px4fmu_common/init.d/rcS b/ROMFS/px4fmu_common/init.d/rcS
index 06102b707..3408b4ad5 100644
--- a/ROMFS/px4fmu_common/init.d/rcS
+++ b/ROMFS/px4fmu_common/init.d/rcS
@@ -321,6 +321,12 @@ then
set MODE custom
fi
+ if param compare SYS_AUTOSTART 33
+ then
+ sh /etc/init.d/32_io_wingwing
+ set MODE custom
+ fi
+
if param compare SYS_AUTOSTART 40
then
sh /etc/init.d/40_io_segway