Skip to content

Bebop 2 Wireless Network Configuration

Houman-HM edited this page Aug 29, 2019 · 8 revisions

Bebop 2 Wireless Network Configuration

Introduction

The Parrot Bebop Drone is one of the UAV's used in the TECHLAV test bed but is not compatible with ROS or any other network configurations besides its default configuration. In this technical report, the latter is addressed and in the following sections the steps to reconfigure the Bebop's network settings are presented. This procedure is necessary in order to connect multiple Bebop's to the same network accesses point. Each bebop has a default IP that will conflict with other Bebop's on the same network, thus the goal of these procedures is to allow the Bebop's IP to be reassigned and then connected to the desired network.

Procedure:

The out of the box firmware blocks certain networking capabilities that are standard in most Linux distributions. The author believes this is due to Parrot's SkyController, and the fact that these tools would allow the user to replicate the functionality of the SkyController without buying it. To fix this issue, you either follow a comprehensive guide at this link or follow the steps below for a quick configuration.

  1. Connect to the Bebop drone over usb using the android debug tool. Therefore, wait until the drone booted and connect the drone to your computer and press the on/off button 4 times. To see if you have a connection type ifconfig into your terminal, you should see a new network interface called: usb0.
  2. A good tool for file transfer is the android debugger (adb). Install adb with the command:

sudo apt-get install android-tools-adb

  1. Connect to the drone:

adb connect 192.168.43.1:9050

  1. Make the partionion writable:

adb shell mount –o remount,rw /

  1. Clone the multiple_bebops repository to your host computer:

git clone https://github.com/tnaegeli/multiple_bebops.git

  1. Modify the shortpress_3.sh file in the cloned repository folder and change the values for SSID, Password, and IP according to your settings.
  2. Before replacing the new files with the current files in the Bebop, you need to backup the 'longpress_0.sh' and 'shotpress_3.sh' files. So, use the command below to switch to the Bebop shell:

adb shell

  1. Navigate to 'onoffbutton' directory:

cd /bin/onoffbutton

  1. Take a backup of the 'longpress_0.sh' and 'shotpress_3.sh' files using the commands below:

cp longpress_0.sh longpress_0_backup.sh

cp shortpress_3.sh shortpress_3_backup.sh

  1. Now that you've backed up the files, you can safely replace the previous files with the new files in the cloned repository. For that, exit the Bebop shell, navigate to the cloned repository, and run copy_files.sh script for the files be copied to the Bebop:

exit

cd /multiple_bebops/

./copy_files.sh

  1. Now that the files are replaced, turned off and turn back on the drone.
  2. Press the button on the Bebop for 3 times for it to get connected to the router with SSID you set. Wait for three beeps. You should be able to ping the drone after 10-30 seconds from a device on the same network.