boards: px4/fmu-v5 disable px4io in rc.board_defaults

- avoid keeping this kind of logic in the common rcS
This commit is contained in:
Daniel Agar 2020-12-28 12:40:45 -05:00 committed by Lorenz Meier
parent a444d2610a
commit d7b89ecc86
2 changed files with 53 additions and 54 deletions

View File

@ -271,57 +271,6 @@ else
param set SYS_AUTOCONFIG 0
fi
#
# Check if PX4IO present and update firmware if needed.
# Assumption IOFW set to firmware file and IO_PRESENT = no
#
if [ -f $IOFW ]
then
# Check for the mini using build with px4io fw file
# but not a px4IO
if ver hwtypecmp V540 V560
then
param set SYS_USE_IO 0
else
if px4io checkcrc ${IOFW}
then
set IO_PRESENT yes
else
# tune Program PX4IO
tune_control play -t 16 # tune 16 = PROG_PX4IO
if px4io start
then
# Try to safety px4 io so motor outputs don't go crazy.
if ! px4io safety_on
then
# px4io did not respond to the safety command.
px4io stop
fi
fi
if px4io forceupdate 14662 ${IOFW}
then
usleep 10000
tune_control stop
if px4io checkcrc ${IOFW}
then
echo "PX4IO CRC OK after updating"
tune_control play -t 17 # tune 17 = PROG_PX4IO_OK
set IO_PRESENT yes
fi
fi
if [ $IO_PRESENT = no ]
then
echo "PX4IO update failed"
tune_control play -t 18 # tune 18 = PROG_PX4IO_ERR
fi
fi
fi
fi
#
# Set USE_IO flag.
#
@ -330,10 +279,54 @@ else
set USE_IO yes
fi
if [ $USE_IO = yes -a $IO_PRESENT = no ]
#
# Check if PX4IO present and update firmware if needed.
# Assumption IOFW set to firmware file and IO_PRESENT = no
#
if [ -f $IOFW -a $USE_IO = yes ]
then
echo "PX4IO not found"
tune_control play error
if px4io checkcrc ${IOFW}
then
set IO_PRESENT yes
else
# tune Program PX4IO
tune_control play -t 16 # tune 16 = PROG_PX4IO
if px4io start
then
# Try to safety px4 io so motor outputs don't go crazy.
if ! px4io safety_on
then
# px4io did not respond to the safety command.
px4io stop
fi
fi
if px4io forceupdate 14662 ${IOFW}
then
usleep 10000
tune_control stop
if px4io checkcrc ${IOFW}
then
echo "PX4IO CRC OK after updating"
tune_control play -t 17 # tune 17 = PROG_PX4IO_OK
set IO_PRESENT yes
fi
fi
if [ $IO_PRESENT = no ]
then
echo "PX4IO update failed"
tune_control play -t 18 # tune 18 = PROG_PX4IO_ERR
fi
fi
if [ $USE_IO = yes -a $IO_PRESENT = no ]
then
echo "PX4IO not found"
tune_control play error
fi
fi
#

View File

@ -9,6 +9,12 @@ then
fi
# disable px4io on HolyBro mini (V540) and CUAV V5nano (V560)
if ver hwtypecmp V540 V560
then
param set SYS_USE_IO 0
fi
set LOGGER_BUF 64
rgbled_pwm start