Howto Install dump1090-fa on openSUSE x86_64

How to Install dump1090-fa on openSUSE x86_64

This method has been tested on openSUSE 15.1 - Leap

(1) Install build tools

sudo zypper install git-core gcc-c++ make cmake   

 

(2) Build & Install rtl-sdr from source code.

NOTE: The rtl-sdr package is available in openSUSE repository, but has something missing. As a result dump1090-fa fails to build. We will therefore build & install rtl-sdr package from source-code.

## Install dependency
sudo zypper install libusb-devel 

## Clone source code, build & install rtl-sdr
cd ~/  
git clone git://git.osmocom.org/rtl-sdr.git  
cd rtl-sdr  
sudo mkdir build && cd build 
sudo cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON  
sudo make  
sudo make install  
sudo ldconfig 

 

(3) Build dump1090-fa linux binary from source code.

## Install dependency
sudo zypper install ncurses-devel  

## Clone source code, and build dump1090-fa's Linux Binary
cd ~/
sudo git clone https://github.com/flightaware/dump1090.git dump1090-fa  
cd dump1090-fa  
sudo make BLADERF=no 

(4) Test the binary (dongle must be plugged into the computer)

NOTE: Press Ctrl and c keys together to break the continous flow of output.

abcd@linux-zi0u:~> cd dump1090-fa
abcd@linux-zi0u:~/dump1090-fa> sudo ./dump1090

Sun Mar  8 20:19:27 2020 EDT  dump1090-fa  starting up.
rtlsdr: using device #0: Generic RTL2832U (Realtek, RTL2832U, SN 00000101)
Detached kernel driver
Found Rafael Micro R820T tuner
rtlsdr: tuner gain set to 49.6 dB
*8dc05218e112a300000000c0efeb;
CRC: 000000
RSSI: -2.5 dBFS
Score: 1400
Time: 15314.75us
DF:17 AA:C05218 CA:5 ME:E112A300000000
 Extended Squitter Emergency/priority status (28/1) (reliable)
  ICAO Address:  C05218 (Mode S / ADS-B)
  Air/Ground:    airborne
  Squawk:        6514
  Emergency/priority:      no emergency
^C

 

(5) Configure & enable systemd for dump1090-fa by copying necessary files from cloned source code.

sudo cp ~/dump1090-fa/dump1090 /usr/bin/dump1090-fa   
sudo cp ~/dump1090-fa/debian/dump1090-fa.default /etc/default/dump1090-fa  
sudo cp ~/dump1090-fa/debian/dump1090-fa.service /usr/lib/systemd/system/dump1090-fa.service  
sudo mkdir -p /usr/share/dump1090-fa/  
sudo cp ~/dump1090-fa/debian/start-dump1090-fa /usr/share/dump1090-fa/start-dump1090-fa  
sudo cp -r ~/dump1090-fa/public_html /usr/share/dump1090-fa/html    

## Create user "dump1090" to run systemd service
## Create group "plugdev" and add usder "dump1090" to this group
sudo useradd --system dump1090 
sudo groupadd plugdev  
sudo usermod -a -G plugdev dump1090  

sudo systemctl enable dump1090-fa  

sudo reboot  
sudo systemctl status dump1090-fa  

 

(6) Install & Configure lighttpd web server

sudo zypper install lighttpd 
sudo systemctl enable lighttpd   
sudo systemctl start lighttpd   
sudo systemctl status lighttpd  

sudo chmod 777 /etc/lighttpd  
sudo cp ~/dump1090-fa/debian/lighttpd/89-dump1090-fa.conf /etc/lighttpd/conf.d/89-dump1090-fa.conf   
echo "server.modules += ( \"mod_alias\" )" >> /etc/lighttpd/lighttpd.conf   
echo "include \"/etc/lighttpd/conf.d/89-dump1090-fa.conf\"" >> /etc/lighttpd/lighttpd.conf   
sudo sed -i 's/server.use-ipv6 = "enable"/server.use-ipv6 = "disable"/' /etc/lighttpd/lighttpd.conf  
sudo chmod 755 /etc/lighttpd  

sudo systemctl restart lighttpd  

 

(7) Configure Firewall to permit display of SkyView from LAN/internet

sudo firewall-cmd --add-service=http
sudo firewall-cmd --runtime-to-permanent 
sudo firewall-cmd --reload

 

Map dispaly in browser of openSUSE at “localhost/dump1090-fa/”

 

Map display in browser of another computer on same LAN at “IP-of-openSUSE/dump1090-fa/”

How t Install Piaware Data Feeder on openSUSE

P L A C E H O L D E R

UPDATE: Current version openSUSE Tumbleweed :2022 08 28

(1) INSTALL, ENABLE, AND START SSH

sudo zypper install openssh
sudo systemctl enable sshd 
sudo systemctl start sshd

(2) OPEN PORT 22 (FOR SSH) IN FIREWALL

sudo firewall-cmd --zone=public --add-port=22/tcp --permanent   
sudo firewall-cmd --reload 

(3) ADD FIREWALL RULE (HTTPS/443 and HTTP/80):

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload

## Verify it:
sudo firewall-cmd --list-services
sudo firewall-cmd --list-services --permanent 

(4) INSTALL BUILD TOOLS & DEPENDENCIES

sudo zypper refresh

sudo zypper install -y git make gcc binutils glibc  
sudo zypper install -y fakeroot pkgconf ncurses-devel ncurses  
sudo zypper install -y rtl-sdr libusb-1_0-0 libusb-compat-devel    

sudo zypper addrepo https://download.opensuse.org/repositories/home:virtuallyNick:piaware/openSUSE_Tumbleweed/home:virtuallyNick:piaware.repo   
sudo zypper refresh  
sudo zypper install  librtlsdr-devel  

## After installing librtlsdr-devel package, remove above repository
## as it has dump1090-mutability ver 1.15, dump1090-fa ver 3.8.1, and
## piaware ver 3.8.1, and you may by mistake install these old packages.
sudo zypper removerepo home_virtuallyNick_piaware  
sudo zypper refresh 

sudo zypper install lighttpd   
sudo systemctl enable lighttpd 
sudo systemctl start lighttpd 

 

(5) BUILD DUMP1090

#Go to home directory
cd  

#Clone source code
git clone https://github.com/flightaware/dump1090  

cd dump1090  
git fetch --all  
git reset --hard origin/master  

## Make dump1090
make RTLSDR=yes DUMP1090_VERSION=$(git describe --tags | sed 's/-.*//')   

 

(6) INSTALL DUMP1090-FA

cd dump1090  
sudo useradd --system dump1090   
sudo usermod -a -G rtlsdr dump1090 

sudo cp dump1090  /usr/bin/dump1090-fa  
sudo cp view1090  /usr/bin/view1090  
  
sudo mkdir -p /usr/share/skyaware/html  
sudo cp -r public_html/*  /usr/share/skyaware/html  
  
sudo mkdir -p /usr/share/dump1090-fa  
sudo cp -r debian/start-dump1090-fa /usr/share/dump1090-fa/  
sudo cp -r debian/generate-wisdom /usr/share/dump1090-fa/  

sudo mkdir -p /etc/default  
sudo cp debian/dump1090-fa.default  /etc/default/dump1090-fa  

sudo mkdir -p /usr/lib/dump1090-fa  
sudo cp -r starch-benchmark  /usr/lib/dump1090-fa/  

sudo cp -r debian/lighttpd/* /etc/lighttpd/conf.d  
  
sudo mkdir -p /usr/lib/systemd/system  
sudo cp debian/dump1090-fa.service /usr/lib/systemd/system/dump1090-fa.service  

(7) CONFIGURE WEB-SERVER LIGHTTPD

## Switch to root
sudo -i 

## As root issue following commands
echo "server.modules += ( \"mod_alias\" )" >> /etc/lighttpd/lighttpd.conf   
echo "include \"/etc/lighttpd/conf.d/89-skyaware.conf\"" >> /etc/lighttpd/lighttpd.conf   
sed -i 's/server.use-ipv6 = "enable"/server.use-ipv6 = "disable"/' /etc/lighttpd/lighttpd.conf 

systemctl restart lighttpd  

## Switch back to normal user

 

(8) ENABLE dump1090-FA & REBOOT

sudo systemctl enable dump1090-fa   
sudo reboot    

 

 

 

 

 

abcd@opensuse-tumbleweeed:~> sudo systemctl status dump1090-fa

● dump1090-fa.service - dump1090 ADS-B receiver (FlightAware customization)
     Loaded: loaded (/usr/lib/systemd/system/dump1090-fa.service; enabled; preset: disabled)
     Active: active (running) since Tue 2022-08-30 05:59:49 EDT; 20min ago
       Docs: https://flightaware.com/adsb/piaware/
   Main PID: 801 (dump1090-fa)
      Tasks: 3 (limit: 4669)
        CPU: 1min 5.375s
     CGroup: /system.slice/dump1090-fa.service
             └─801 /usr/bin/dump1090-fa --quiet --device-type rtlsdr --gain 60 --adaptive-range --fix --max-range 360 --net-ro-port 30002 --net-sbs-port>

Aug 30 06:01:20 opensuse-tumbleweeed dump1090-fa[801]: rtlsdr: failed to disable tuner AGC
Aug 30 06:01:21 opensuse-tumbleweeed dump1090-fa[801]: adaptive: available dynamic range (26.3dB) < required dynamic range (30.0dB), continuing downward>
Aug 30 06:01:21 opensuse-tumbleweeed dump1090-fa[801]: adaptive: changing gain from 58.6dB (step 29) to 49.6dB (step 28) because: probing dynamic range >
Aug 30 06:01:21 opensuse-tumbleweeed dump1090-fa[801]: rtlsdr_demod_write_reg failed with -9
Aug 30 06:01:21 opensuse-tumbleweeed dump1090-fa[801]: r82xx_write: i2c wr failed=-9 reg=05 len=1
Aug 30 06:01:21 opensuse-tumbleweeed dump1090-fa[801]: rtlsdr: failed to disable tuner AGC
Aug 30 06:01:22 opensuse-tumbleweeed dump1090-fa[801]: adaptive: available dynamic range (26.4dB) < required dynamic range (30.0dB), continuing downward>
Aug 30 06:01:22 opensuse-tumbleweeed dump1090-fa[801]: adaptive: changing gain from 58.6dB (step 29) to 49.6dB (step 28) because: probing dynamic range >
Aug 30 06:01:22 opensuse-tumbleweeed dump1090-fa[801]: rtlsdr: tuner gain set to 49.6 dB (gain step 28)
Aug 30 06:01:33 opensuse-tumbleweeed dump1090-fa[801]: adaptive: available dynamic range (37.1dB) >= required dynamic range (30.0dB), stopping downwards>