Skip to content

Building readsb from source

wiedehopf edited this page Nov 7, 2020 · 47 revisions

Install required packages:

sudo apt update
sudo apt install -y git build-essential debhelper libusb-1.0-0-dev
sudo apt install -y librtlsdr-dev librtlsdr0 pkg-config dh-systemd 
sudo apt install -y libncurses5-dev lighttpd zlib1g-dev zlib1g

Install the rtl-sdr udev rules

wget -O /tmp/rtl-sdr.rules https://raw.githubusercontent.com/wiedehopf/adsb-scripts/master/osmocom-rtl-sdr.rules
sudo cp /tmp/rtl-sdr.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules

Compile and install readsb (wiedehopf fork)

cd /tmp
rm /tmp/readsb -rf
git clone --depth 1 https://github.com/wiedehopf/readsb.git -b stale
cd readsb
sed -i -e 's/, libblade.*//' debian/control
rm -f ../readsb_*.deb
dpkg-buildpackage -b --build-profiles=rtlsdr --no-sign
sudo dpkg -i ../readsb_*.deb

Option 1: Use tar1090 as a webinterface

https://github.com/wiedehopf/tar1090#tar1090 Will be available at http://192.168.XX.YY/tar1090

Option 2: install the readsb webinterface (json)

cd /tmp
wget -O mic-readsb.zip https://github.com/Mictronics/readsb/archive/master.zip
rm -rf mic-readsb
unzip -d mic-readsb mic-readsb.zip
rm -rf /usr/share/readsb/html
mkdir -p /usr/share/readsb/html
cp -a mic-readsb/readsb-master/webapp/src/* /usr/share/readsb/html
    
rm -rf mic-readsb mic-readsb.zip

http://192.168.XX.YY/radar

In your browser, use the IP address of your Pi and add /radar at the end to view the webinterface.

configuration:

sudo nano /etc/default/readsb
# make changes, save with Ctrl-O and enter, exit with Ctrl-X
sudo systemctl restart readsb

example configuration for net-only mode:

Change the RECEIVER_OPTIONS line to this:

RECEIVER_OPTIONS="--net-only --net-connector 192.168.2.7,30005,beast_in"

The IP address / port is where your beast data source is.

net-only: fetch data from 192.168.2.8:20005 and send it to 192.168.2.7:30004

RECEIVER_OPTIONS="--net-only --net-connector 192.168.2.8,20005,beast_in --net-connector 192.168.2.7,30004,beast_reduce_out"

Mictronics readsb

Same packages required as before, then compile / install:

cd /tmp
rm /tmp/readsb -rf
git clone --depth 1 https://github.com/Mictronics/readsb.git -b dev
cd readsb
sed -i -e 's/, libblade.*//' debian/control
rm -f ../readsb_*.deb
dpkg-buildpackage -b --build-profiles=rtlsdr --no-sign
sudo dpkg -i ../readsb_*.deb

replacing the binary with my experimental version:

sudo apt install zlib1g-dev zlib1g
cd /tmp
rm /tmp/readsb -rf
git clone --depth 1 https://github.com/wiedehopf/readsb.git -b dev
cd readsb
make -j3 HISTORY=yes RTLSDR=yes
sudo rm /usr/bin/readsb
sudo cp readsb /usr/bin/readsb
sudo systemctl restart readsb

alpha alpha

sudo apt install -y zlib1g-dev zlib1g librtlsdr-dev librtlsdr0 git build-essential libusb-1.0-0-dev libncurses5-dev
cd /tmp
rm /tmp/readsb -rf
git clone --depth 1 https://github.com/wiedehopf/readsb.git --single-branch -b sid
cd readsb
make RTLSDR=yes
sudo mv /usr/bin/readsb /tmp/oldbin
sudo cp readsb /usr/bin/readsb
sudo systemctl restart readsb

readsb-protobuf

New development by Mictronics, uses protobuf instead of json, not compatible with tar1090. https://github.com/Mictronics/readsb-protobuf/

Compile / install, try this:

cd /tmp
rm /tmp/readsb -rf
git clone --depth 1 https://github.com/Mictronics/readsb-protobuf.git -b dev
cd readsb
sed -i -e 's/, libblade.*//' debian/control
rm -f ../readsb_*.deb
dpkg-buildpackage -b --build-profiles=rtlsdr --no-sign
sudo dpkg -i ../readsb_*.deb
Clone this wiki locally