DroneEngage Installation

Preparing Raspberry

If you want to install Telemetry without Video then you can use RPI-Zero W. If you want to install Telemetry and Video streaming then you can use RPI-Zero W2 or and for multiple camera support please use RPI-4.

The following steps assume that you know how to install a raspberry-pi and have a raspberry-pi board up and running and accessible using SSH.


You need to execute this script also to install libcrypto_1.1 install_libcrypto_1.1.sh

Download Binaries

Binaries are available at Binaries Download and are ordered by date. There is a version for each application. i.e. de_comm may have a different version than de_mavlink as each one has its own fixed and updates.

$ ssh pi@raspberrypi.local
$ wget https://cloud.ardupilot.org/downloads/RPI/01__29Aug2022/Drone_Engage_29Aug_2022.zip
$ wget https://cloud.ardupilot.org/downloads/RPI/01__29Aug2022/Drone_Camera_29Aug_2022.zip

Now you can see two scripts:

  • install_droneengage.sh for telemetry.

  • install_droneengage_camera.sh for camera

make sure that these scripts are executable by running

chmod a+x ./install_droneengage.sh
chmod a+x ./install_droneengage_camera.sh

now execute scripts


after they finish you will a folder called drone_engage

  • /home/pi/drone_engage/de_comm Communicator Module.

  • /home/pi/drone_engage/de_mavlink Mavlink Module that communicates with FCB.

  • /home/pi/drone_engage/de_camera Camera Module that streams video and records video and images.

each folder contains config.module.json that you need to edit.

DE_COMM Configuration File

de_comm config.module.json Configuration File

You mainly need to enter two fields:

“userName” :”team@ardupilot.org”, “accessCode” :”1234”,

use your own account and access code from registration.

DE_CAMERA Configuration File

you mainly need to define cameras. bedefault there is a camera defined on /dev/video0 and given name “AI1”

"one_session_per_camera"    : true,
"camera_list": [
  "name": "AI1", "device_num": 0
  "name": "AnotherCAM", "device_num": 1 // you can add additional cameras
} // name should be unique across all cameras.

you can also choose to enumerate on video devices that exists in a given range. for example list all video devices from /dev/video0 to /dev/video10 :

"one_session_per_camera"    : true,
"camera_start_index"        :0,
"camera_end_index"          :10,

You can comment the unwanted option by adding // at the beginning if its line.

Other parameters exists but they are not mandatory to change and you can just leave them as a start.


you need to enable legacy camera suppot on camera devices that you are using, and remember to reboot. sudo raspi-config nonint do_legacy 0

The following video describes installation procedures. It may differ from version to another, but the video includes the main steps.