You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

71 lines
1.8 KiB

#!/bin/bash
BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
SRC_DIR="$BASEDIR/../../../../"
if [ -z ${BEBOP_IP+x} ]; then
ip=192.168.42.1
echo "\$BEBOP_IP is not set (use default: $ip)"
else
ip=$BEBOP_IP
echo "\$BEBOP_IP is set to $ip"
fi
port=9050
echo "Connecting to bebop: $ip:$port"
# adb returns also 0 as exit status if the connection fails
adb_return=$(adb connect $ip:$port)
adb_status=$(echo $adb_return | cut -f 1 -d " ")
if [[ $adb_status == "unable" ]]; then
echo ""
echo "Connection with Parrot Bebop could not be established:"
echo " Make sure you are connected with the Bebop's WiFi and"
echo " enable access to the board by pressing the power button 4 times."
echo ""
exit 50
fi
echo "Connection successfully established"
sleep 1
adb shell mount -o remount,rw /
adb shell touch /home/root/parameters
adb shell mkdir -p /data/ftp/internal_000/fs/microsd
# kill PX4 if it is already running from autostart
restart_px4=false
adb_return=$(adb shell killall -KILL px4)
if [[ $adb_return == "" ]]; then
echo "Killed running PX4 process"
restart_px4=true
fi
# upload PX4
$BASEDIR/adb_upload.sh $@
# upload mixer and config files
echo "Uploading mixer and config files to /home/root"
adb push $SRC_DIR/ROMFS/px4fmu_common/mixers/bebop.main.mix /home/root
adb push $SRC_DIR/posix-configs/bebop/px4.config /home/root
# restart the process after uploading
if [ "$restart_px4" = true ]; then
echo "Restarting PX4 process"
adb shell /etc/init.d/rcS_mode_default 2>/dev/null 1>/dev/null &
fi
# make sure all buffered blocks are written to disk
echo "Syncing FS..."
adb shell sync
echo "Disconnecting from Bebop"
adb disconnect
echo ""
echo "To start PX4, run the following command on the Bebop:"
echo "/data/ftp/internal_000/px4/px4 -s /home/root/px4.config /data/ftp/internal_000/px4/"