Cleanup of fixedwing startup code

This commit is contained in:
Lorenz Meier 2013-09-07 12:17:27 +02:00
parent f721c6f7e0
commit fb9e98fb59
5 changed files with 198 additions and 67 deletions

View File

@ -1,6 +1,6 @@
#!nsh
echo "[init] Multiplex Easystar"
echo "[init] PX4FMU v1, v2 with or without IO on EasyStar"
#
# Load default params for this platform
@ -20,28 +20,31 @@ fi
#
param set MAV_TYPE 1
#
# Start MAVLink (depends on orb)
#
mavlink start -d /dev/ttyS1 -b 57600
usleep 5000
set EXIT_ON_END no
#
# Start and configure PX4IO interface
# Start and configure PX4IO or FMU interface
#
sh /etc/init.d/rc.io
if px4io detect
then
# Start MAVLink (depends on orb)
mavlink start
usleep 5000
#
# Set actuator limit to 100 Hz update (50 Hz PWM)
px4io limit 100
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
usleep 5000
fmu mode_pwm
param set BAT_V_SCALING 0.004593
set EXIT_ON_END yes
fi
#
# Start the commander
#
commander start
#
# Start the sensors
# Start the sensors and test them.
#
sh /etc/init.d/rc.sensors
@ -49,9 +52,14 @@ sh /etc/init.d/rc.sensors
# Start logging (depends on sensors)
#
sh /etc/init.d/rc.logging
#
# Start GPS interface
# Start the commander.
#
commander start
#
# Start GPS interface (depends on orb)
#
gps start
@ -65,4 +73,10 @@ att_pos_estimator_ekf start
#
mixer load /dev/pwm_output /etc/mixers/FMU_RET.mix
fw_att_control start
fw_pos_control_l1 start
# Not ready yet for prime-time
#fw_pos_control_l1 start
if [ $EXIT_ON_END == yes ]
then
exit
fi

View File

@ -0,0 +1,82 @@
#!nsh
echo "[init] PX4FMU v1, v2 with or without IO on HK Bixler"
#
# Load default params for this platform
#
if param compare SYS_AUTOCONFIG 1
then
# Set all params here, then disable autoconfig
# TODO
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
usleep 5000
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
usleep 5000
fmu mode_pwm
param set BAT_V_SCALING 0.004593
set EXIT_ON_END yes
fi
#
# Start the sensors and test them.
#
sh /etc/init.d/rc.sensors
#
# Start logging (depends on sensors)
#
sh /etc/init.d/rc.logging
#
# Start the commander.
#
commander start
#
# Start GPS interface (depends on orb)
#
gps start
#
# Start the attitude and position estimator
#
att_pos_estimator_ekf start
#
# Load mixer and start controllers (depends on px4io)
#
mixer load /dev/pwm_output /etc/mixers/FMU_AERT.mix
fw_att_control start
# Not ready yet for prime-time
#fw_pos_control_l1 start
if [ $EXIT_ON_END == yes ]
then
exit
fi

View File

@ -1,6 +1,6 @@
#!nsh
echo "[init] 30_io_camflyer: PX4FMU+PX4IO on Camflyer"
echo "[init] PX4FMU v1, v2 with or without IO on Camflyer"
#
# Load default params for this platform
@ -19,34 +19,32 @@ fi
# MAV_TYPE 1 = fixed wing
#
param set MAV_TYPE 1
#
# Start MAVLink (depends on orb)
#
mavlink start -d /dev/ttyS1 -b 57600
usleep 5000
#
# Start the commander (depends on orb, mavlink)
#
commander start
#
# Start PX4IO interface (depends on orb, commander)
#
px4io start
#
# Allow PX4IO to recover from midair restarts.
# this is very unlikely, but quite safe and robust.
px4io recovery
set EXIT_ON_END no
#
# Set actuator limit to 100 Hz update (50 Hz PWM)
px4io limit 100
# Start and configure PX4IO or FMU interface
#
if px4io detect
then
# Start MAVLink (depends on orb)
mavlink start
usleep 5000
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
usleep 5000
fmu mode_pwm
param set BAT_V_SCALING 0.004593
set EXIT_ON_END yes
fi
#
# Start the sensors (depends on orb, px4io)
# Start the sensors and test them.
#
sh /etc/init.d/rc.sensors
@ -54,7 +52,12 @@ sh /etc/init.d/rc.sensors
# Start logging (depends on sensors)
#
sh /etc/init.d/rc.logging
#
# Start the commander.
#
commander start
#
# Start GPS interface (depends on orb)
#
@ -70,4 +73,10 @@ att_pos_estimator_ekf start
#
mixer load /dev/pwm_output /etc/mixers/FMU_Q.mix
fw_att_control start
fw_pos_control_l1 start
# Not ready yet for prime-time
#fw_pos_control_l1 start
if [ $EXIT_ON_END == yes ]
then
exit
fi

View File

@ -1,6 +1,6 @@
#!nsh
echo "[init] 31_io_phantom: PX4FMU+PX4IO on Phantom"
echo "[init] PX4FMU v1, v2 with or without IO on Phantom FPV"
#
# Load default params for this platform
@ -20,28 +20,31 @@ fi
#
param set MAV_TYPE 1
#
# Start MAVLink (depends on orb)
#
mavlink start -d /dev/ttyS1 -b 57600
usleep 5000
set EXIT_ON_END no
#
# Start and configure PX4IO interface
# Start and configure PX4IO or FMU interface
#
sh /etc/init.d/rc.io
if px4io detect
then
# Start MAVLink (depends on orb)
mavlink start
usleep 5000
#
# Set actuator limit to 100 Hz update (50 Hz PWM)
px4io limit 100
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
usleep 5000
fmu mode_pwm
param set BAT_V_SCALING 0.004593
set EXIT_ON_END yes
fi
#
# Start the commander
#
commander start
#
# Start the sensors
# Start the sensors and test them.
#
sh /etc/init.d/rc.sensors
@ -49,9 +52,14 @@ sh /etc/init.d/rc.sensors
# Start logging (depends on sensors)
#
sh /etc/init.d/rc.logging
#
# Start GPS interface
# Start the commander.
#
commander start
#
# Start GPS interface (depends on orb)
#
gps start
@ -65,4 +73,10 @@ att_pos_estimator_ekf start
#
mixer load /dev/pwm_output /etc/mixers/FMU_Q.mix
fw_att_control start
fw_pos_control_l1 start
# Not ready yet for prime-time
#fw_pos_control_l1 start
if [ $EXIT_ON_END == yes ]
then
exit
fi

View File

@ -178,6 +178,18 @@ then
sh /etc/init.d/31_io_phantom
set MODE custom
fi
if param compare SYS_AUTOSTART 100
then
sh /etc/init.d/100_mpx_easystar
set MODE custom
fi
if param compare SYS_AUTOSTART 101
then
sh /etc/init.d/101_hk_bixler
set MODE custom
fi
# Start any custom extensions that might be missing
if [ -f /fs/microsd/etc/rc.local ]