description |
---|
How to build a working DroneBridge image for Raspberry Pi |
It is highly recommended to modify the provided images since they already come with patched drivers and some other optimizations.
The image for DroneBridge v0.6 is based on Raspbian Jessy Light with an updated/custom Kernel, bootcode and drivers to support the Raspberry Pi 3B+.
With the following steps you should be able to produce a working image yourself.
The list may be incomplete
-
Get the latest Raspbian Lite ISO image and write it to a SD card.
-
Compile a custom Kernel and add it to your image in order to get higher output power etc. Skip this step if you do not know what you are doing! Your system might send with too much power afterwards! (check EIRP)
-
Create a new partition named "DroneBridge" & format it with exFAT. Add the new partition to fstab
-
Adjust the resize scripts inside /etc/init.d/
-
Add
/lib/udev/rules.d/51-android.rules
to enable USBBridge (already part of custom Kernel) -
Install the following python packages:
apt install python3.7 python3-pip ntp python3-psutil python3-serial python3-sysv-ipc python3-netifaces python3-rpi.gpio python3-evdev joystick hostapd
-
sudo pip3 install pyric pycryptodomex
-
Install the following packages/libs:
cmake wiringPi udhcpd
openvg
libusb-1.0-0.dev libpcap-dev exfat-fuse exfat-utils dos2unix pump
-
Compile Raspberry Pi media libs
cd /opt/vc/src/hello_pi/ make
-
Deactivate the cron service and all other services that you do not need
-
Add following lines to
/etc/dhcpcd.conf
to make the hotpot work. For the hotspot we use udhcpddenyinterfaces wifihotspot0 denyinterfaces wlan0
-
Clone the DroneBridge for Raspberry Pi git to
/home/pi
-
Compile the DroneBridge modules using
cmake . && make
-
Copy the
start_db
file to/etc/init.d/
sudo cp /home/pi/DroneBridge/start_db /etc/init.d/start_db sudo update-rc.d -f start_db remove sudo update-rc.d start_db defaults
-
Edit log rotation to manage
DroneBridge/log/db_modules.log
-
Copy the
DroneBridgeConfig.ini
,osdconfig.txt
,apconfig.txt
and plugins folder to/DroneBridge
-
Create a folder named
/DroneBridge/osdfonts
and place the fonts you want to use for osd inside it. Do not forget about theosdicons.ttf
-
Create a symbolic link from
/DroneBridge/osdconfig.txt
to/home/pi/DroneBridge/osd/osdconfig.h
-
Add a line to
init.d/raspbi-config
to start the DroneBridge splash screen/home/pi/dronebridge/splash
-
Connect the WiFi adapters and check the EIRP of your system.