Setup Raspberry Pi
The drone control computer no needs GUI, we will set up a headless Raspberry Pi. It can save the disk space and also the CPU load.
Download the Raspberry Pi OS Lite
If your RPi didn’t install the OS or you want to reinstall it, you can download the system image here.
Writing image to SD card
You can download and use the etcher to write the image to SD card.
Writing image to SD card (using Mac Terminal)
If you use etcher, you can skip this step. If you are using Mac and want to use Terminal to write the image, it is for you.
- insert the SD card to Mac (suggested minimum 8GB disk)
- look up the disk id:
- the screen-print will be something like below. The SD card id is disk2. (Your disk id may be difference, please find it carefully)
/dev/disk2 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *31.9 GB disk2 1: Windows_FAT_32 boot 268.4 MB disk2s1 2: Linux 7.8 GB disk2s2 3: Linux 23.9 GB disk2s3
- replace the "diskx" to your disk id then unmount the disk
diskutil unmountDisk /dev/diskx
- format the disk
sudo newfs_msdos -F 16 /dev/diskx
- replace the "/path/of/image/xxx.dmg" to the image file path then write the image to disk
sudo dd if=/path/of/image/xxx.dmg of=/dev/diskx bs=1m
Login default username and password
You can use the default username and password log in to the RPi.
Default user: pi Default password: raspberry
Expanding disk space
Even if you are using a larger card, but the system still using 4GB disk space. This is because writing the disk image to your microSD card creates a partition. The result is that the rest of the disk is unusable unless you expand the file system.
You can run the following command to expand it:
sudo raspi-config --expand-rootfs
Config the WiFi
You can use
ifconfig to check the wifi status. If it prints the
wwan0 information, means the wifi connection fine.
wwan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 169.254.xxx.xxx netmask 255.255.0.0 broadcast 169.254.255.255
You can try to ping a domain to test the connection to Internet.
ping google.com 64 bytes from 126.96.36.199: icmp_seq=1 ttl=58 time=13.067 ms
Note: In case you need to modify or check the WiFi config file directly, find here:
The document below provides detailed information to protect your RPi. You can choose to execute items that suitable for you, but at least change the default username and password.
If the everything fine, you can login to your RPi through SSH.
You can find the RPi IP using
Enabling Serial Console
The serial console lets Raspberry Pi communicates with the px4. You can check here for how to enable it.
If you found any mistake in the document or you have difficulty following the setups, please leave your comments to me. Your comments can help me to improve this article. Thank you!RC Bellergy