aboutsummaryrefslogblamecommitdiff
path: root/ROMFS/px4fmu_common/init.d/rc.boarddetect
blob: f233e51df49324505a0ee48fbd015f03e98e07c2 (plain) (tree)

































































                                                                                
#!nsh
#
# If we are still in flight mode, work out what airframe 
# configuration we have and start up accordingly.
#
if [ $MODE != autostart ]
then
	echo "[init] automatic startup cancelled by user script"
else
	echo "[init] detecting attached hardware..."

	#
	# Assume that we are PX4FMU in standalone mode
	#
	set BOARD PX4FMU

	#
	# Are we attached to a PX4IOAR (AR.Drone carrier board)?
	#
	if boardinfo test name PX4IOAR
	then
		set BOARD PX4IOAR
		if [ -f /etc/init.d/rc.PX4IOAR ]
		then
			echo "[init] reading /etc/init.d/rc.PX4IOAR"
			usleep 500
			sh /etc/init.d/rc.PX4IOAR
		fi
	else
		echo "[init] PX4IOAR not detected"
	fi

	#
	# Are we attached to a PX4IO?
	#
	if boardinfo test name PX4IO
	then
		set BOARD PX4IO
		if [ -f /etc/init.d/rc.PX4IO ]
		then
			echo "[init] reading /etc/init.d/rc.PX4IO"
			usleep 500
			sh /etc/init.d/rc.PX4IO
		fi
	else
		echo "[init] PX4IO not detected"
	fi

	#
	# Looks like we are stand-alone
	#
	if [ $BOARD == PX4FMU ]
	then
		echo "[init] no expansion board detected"
		if [ -f /etc/init.d/rc.standalone ]
		then
			echo "[init] reading /etc/init.d/rc.standalone"
			sh /etc/init.d/rc.standalone
		fi
	fi

	#
	# We may not reach here if the airframe-specific script exits the shell.
	#
	echo "[init] startup done."
fi