The images are stored on the two Raspberry Pi Zeros. The Image download station provides image download via two parallel Wifi links from the drone. The image download station is based on two GL-AR750 access points. The datatransfer itself is handled by rsync via its rsync protocoll which doesnt rely on SSH. SSH is not used as the pi zero is not fast enough to encrypt the huge data we want to transfer for each flight.


This is the main router which provides DHCP service.

Router IP:

WAN Port is Lan Port

2.4 GHz SSID: SW-AP1 Channel 1 TX Power: 10 dBm 300 MBit

5 GHz SSID: SW-AP1-5G Channel 36 TX Power: 20 dbm


This router is connected with the WAN port to a LAN port of AP1.

Router IP:

WAN Port is Lan Port

2.4 GHz SSID: SW-AP2 Channel 11 TX Power: 10 dBm

5 GHz SSID: SW-AP2-5G Channel: 44 433MBit TX Power: 20 dbm

General setup for eduroam access, crrcsim e.t.c. is in the Laptop description.

Configure datastorage with rsync in /etc/rsyncd.conf on ship laptop.

Each flight should have a unique named folder and needs two subfolders to be configured. e.g.

hosts allow = *
list = true
uid = root
gid = root
read only = false

hosts allow = *
list = true
uid = root
gid = root
read only = false

IMPORTANT You have to name your folders cam-r and cam-l as this encoding is needed for the searchwing-gui to work in correct manner IMPORTANT

start rsync daemon on ship laptop

sudo systemctl start rsync

transfer images

run datatransfer task on each pi ( later triggered via script @ groundcontrol pc): e.g.

rsync -auv --progress /data/bilder/ rsync://GROUNDSTATIONIP/ringo-05032020_0915h-cam-r
  • Don't use the -z option which compresses the data. The images are already compressed and the CPU load will result in 1 MB/s transfer rate compared to 3-4 MB/s without the -z option. (Beck, 23.2.20)
  • If you like to transfer and delete the images from the pi, use the –remove-source-files option.


rsync error: error starting client-server protocol (code 5) at main.c(1675) [sender=3.1.3]

Check if folder on receiverside exists.

To get an idea whats the cause of the error - checkout rsync service status on receiverside (laptop):

sudo systemctl status rsync

To install and use the GUI please read the UPTODATE README in https://gitlab.com/searchwing/development/searchwing-gui or on the local repo on the laptop.


  • Set your flight image data folder in /backend/config.js : datadir: '/absolute/path/to/data/dir'
  • Set your camera left and right prefix folder names in /backend/config.js : left: 'cam-l', right: 'cam-r'

Import Data

  • For each flight create a folder with a reasonable name : e.g. /datadir/ringo-05032020_0915h
  • For each flight create subfolders for the data from each camera : e.g. /datadir/ringo-05032020_0915h/cam-l & /datadir/ringo-05032020_0915h/cam-r
  • Copy / RSYNC your image data to these folders by using the procedure described in the section RSYNC

visualize images

* Run backend

cd backend
npm install
node index.js

* Run frontend

cd frontend
npm install
npm start

A tool to manage the pi cameras in multiple drones. It serves as a easy GUI for preflight system check. It uses SSH connections to gather the infos and visulizes it via a qt gui.

To install and it please read the UPTODATE README in https://gitlab.com/searchwing/development/searchwing-pi-manager or on the local repo on the laptop.

  • image-download-station.txt
  • Last modified: 2020/03/06 15:34
  • by wf68spef