#!nsh # # Vehicle configuration setup script. # # NOTE: Script variables are declared/initialized/unset in the rcS script. # # # Fixed wing setup. # if [ $VEHICLE_TYPE == fw ] then if [ $MIXER == none ] then # Set default mixer for fixed wing if not defined. set MIXER AERT fi if [ $MAV_TYPE == none ] then # Use MAV_TYPE = 1 (fixed wing) if not defined. set MAV_TYPE 1 fi param set MAV_TYPE ${MAV_TYPE} # Load mixer and configure outputs sh /etc/init.d/rc.interface # Start standard fixedwing apps sh /etc/init.d/rc.fw_apps fi # # Multicopter setup. # if [ $VEHICLE_TYPE == mc ] then if [ $MIXER == none ] then echo "Mixer undefined" fi if [ $MAV_TYPE == none ] then # Use mixer to detect vehicle type if [ $MIXER == quad_x -o $MIXER == quad_+ ] then set MAV_TYPE 2 fi if [ $MIXER == quad_w -o $MIXER == quad_dc ] then set MAV_TYPE 2 fi if [ $MIXER == quad_h ] then set MAV_TYPE 2 fi if [ $MIXER == tri_y_yaw- -o $MIXER == tri_y_yaw+ ] then set MAV_TYPE 15 fi if [ $MIXER == hexa_x -o $MIXER == hexa_+ ] then set MAV_TYPE 13 fi if [ $MIXER == hexa_cox ] then set MAV_TYPE 13 fi if [ $MIXER == octo_x -o $MIXER == octo_+ ] then set MAV_TYPE 14 fi if [ $MIXER == octo_cox -o $MIXER == octo_cox_w ] then set MAV_TYPE 14 fi if [ $MIXER == coax ] then set MAV_TYPE 3 fi fi # Still no MAV_TYPE found. if [ $MAV_TYPE == none ] then param set MAV_TYPE 2 else param set MAV_TYPE ${MAV_TYPE} fi # Load mixer and configure outputs. sh /etc/init.d/rc.interface # Start standard multicopter apps. sh /etc/init.d/rc.mc_apps fi # # VTOL setup. # if [ $VEHICLE_TYPE == vtol ] then if [ $MIXER == none ] then echo "VTOL mixer undefined" fi if [ $MAV_TYPE == none ] then # Use mixer to detect vehicle type. if [ $MIXER == caipirinha_vtol ] then set MAV_TYPE 19 fi if [ $MIXER == firefly6 ] then set MAV_TYPE 21 fi if [ $MIXER == quad_x_pusher_vtol ] then set MAV_TYPE 22 fi fi # Still no MAV_TYPE found. if [ $MAV_TYPE == none ] then echo "Unknown MAV_TYPE" param set MAV_TYPE 19 else param set MAV_TYPE ${MAV_TYPE} fi # Load mixer and configure outputs. sh /etc/init.d/rc.interface # Start standard vtol apps. sh /etc/init.d/rc.vtol_apps fi # # UGV setup # if [ $VEHICLE_TYPE == ugv ] then if [ $MIXER == none ] then # Set default mixer for UGV if not defined. set MIXER ugv_generic fi if [ $MAV_TYPE == none ] then # Use MAV_TYPE = 10 (UGV) if not defined. set MAV_TYPE 10 fi param set MAV_TYPE ${MAV_TYPE} # Load mixer and configure outputs. sh /etc/init.d/rc.interface # Start standard UGV apps. sh /etc/init.d/rc.ugv_apps fi # # Generic setup (autostart ID not found). # if [ $VEHICLE_TYPE == none ] then echo "No autostart ID found" ekf2 start fi