- Bookworm (Debian 12): 64bit
- Bookworm (Debian 12): 32bit
- Bullseye (Debian 11): 32bit
- for older RasPiOS versions please consider a manual update as described below, you can find out your platform version and architecture with
getconf LONG_BIT(shows the Debian version) andlsb_release -r -s(32bit or 64bit)
- standard script:
install-pi34.sh - alternative script (1):
install-pi34-adsb.sh- requires a second SDR
- installs https://github.com/VirusPilot/dump1090 in addition to feed Open Glider Network with ADS-B
- ADS-B SDR adaptive gain and adaptive burst mode enabled (to prefer local traffic)
- alternative script (2):
install-pi34-ogn2dump1090.sh- requires a second SDR
- installs https://github.com/b3nn0/ogn2dump1090
- feeds Open Glider Network with ADS-B
- inject Open Glider Network Traffic for display on a unified local tar1090 map
- Pi Zero 2W, Pi3, Pi4 or Pi5 are supported
- Raspberry Pi Imager (https://www.raspberrypi.com/software/) is recommended
- latest 0.3.2 version enables SDR autogain to avoid crossmodulation
- latest 0.3.2 version supports the following protocols:
- ADS-B (requires
dump1090-faruning on the same receiver but on a second SDR) - FLARM
- OGN
- SafeSky
- PilotAware
- SPOT
- Garmin InReach
- Skymaster
- FANET (paragliders)
- Spidertracks
- ADS-L
- ...
- ADS-B (requires
- https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-arm64-0.3.2_Bullseye.tgz (64-bit ARM aarch64)
- https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-ARM-0.3.2_Jessie.tgz (32-bit ARM)
- https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-ARM-0.3.2_Jessie_JPEG.tgz (32-bit ARM)
- https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-RPI-GPU-0.3.2_Jessie.tgz (32-bit ARM)
- https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-RPI-GPU-0.3.2_Jessie_JPEG.tgz (32-bit ARM)
- https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-x86-0.3.2_Buster.tgz (32-bit Intel 80386)
- flash latest RasPiOS Lite Image (32bit or 64bit), using latest Raspberry Pi Imager with the following settings:
- select appropriate hostname
- enable ssh
- enable user pi with password
- configure WiFi (particularly important for Pi Zero 2W)
- boot and wait until your Pi is connected to your LAN or WiFi
During the setup process you will be automatically asked to edit Template.conf and potentially dump1090-fa for which you should have the following credentials at hand:
- SDR index numbers or SDR serial numbers (SN) for both the OGN and ADS-B SDRs
- SDR ppm calibration (only required for non-TCXO SDRs), this can also be measured and modified accordingly post install if unknown
- OGN station name, e.g. your local airport ICAO code (max. 9 characters), please refer to http://wiki.glidernet.org/receiver-naming-convention
- station coordinates and altitude for both the OGN and ADS-B configuration file
SDR selection and ppm correction:
RF:
{
Device = 0; # device selection based on SDR index number, please doublecheck post-install using "rtl_test"
#DeviceSerial = "868"; # alternative device selection based on SDR serial number (SN), please doublecheck post-install using "rtl_test"
FreqCorr = 0; # [ppm] SDR correction factor, newer sticks have a TCXO so no correction required
SampleRate = 2.0; # [MHz] 1.0 or 2.0MHz, 2MHz is required to captue PilotAware
BiasTee = 0; # just a safeguard
};
In case your OGN station is in an area with no GSM stations then the automatic gsm_scan should be deactivated by changing to GSM.CenterFreq=0 (as an alternative you can ommit the entire GSM section for SDRs with TCXO):
GSM: # for frequency calibration based on GSM signals
{ # you can ommit the whole GSM section for sticks with TCXO
CenterFreq = 0; # [MHz] you may enter the GSM frequency that you found with gsm_scan but ONLY if you have GSM stations nearby
Gain = 25.0; # [dB] RF input gain (beware that GSM signals are very strong)
};
GPS coordinates and altitude for your OGN station:
Position:
{
Latitude = +48.0000; # [deg] please put in the appropriate latitude for your OGN station antenna
Longitude = +10.0000; # [deg] please put in the appropriate longitude for your OGN station antenna
Altitude = 500; # [m] altitude AMSL, please put in the appropriate altitude for your OGN station antenna
};
Required configuration for feeding Open Glider Network with ADS-B traffic:
ADSB: # feeding Open Glider Network with ADS-B traffic
{
AVR = "localhost:30002"; # disable this line if you DO NOT WANT to feed Open Glider Network with ADS-B traffic
MaxAlt = 18000; # [ft] default maximum altitude, feel free to increase but this will potentially increase your internet traffic
};
Replace with your actual APRS callsign, please refer to http://wiki.glidernet.org/receiver-naming-convention:
APRS:
{
#Call = "NewOGNrx"; # enable this line and replace <NewOGNrx> with your actual APRS callsign, e.g. your local airport ICAO code (max. 9 characters)
# please refer to http://wiki.glidernet.org/receiver-naming-convention
};
In case you plan to combine the OGN station with a dump1090-fa feeder (like in the alternative install script below), the following section is required:
HTTP: # this section is required to be able to monitor the different status pages of your receiver
{ # e.g. http://raspberrypi:8080 for monitoring ADS-B traffic
Port = 8082; # e.g. http://raspberrypi:8082 for monitoring the RTLSDR OGN RF processor status page
}; # e.g. http://raspberrypi:8083 for monitoring the RTLSDR OGN demodulator and decoder status page
- plug your SD card into the Pi, connect your Pi3, Pi4 or Pi5 to LAN via Ethernet cable and boot (in case of Pi Zero 2W you may need to wait and check for successful WiFi connection)
- connect to your pi using ssh
sudo apt update
sudo apt full-upgrade -y
sudo apt install git -y
git clone https://github.com/VirusPilot/ogn-pi34.git
./ogn-pi34/install-pi34.sh
sudo apt update
sudo apt full-upgrade -y
sudo apt install git -y
git clone https://github.com/VirusPilot/ogn-pi34.git
./ogn-pi34/install-pi34-adsb.sh
sudo apt update
sudo apt full-upgrade -y
sudo apt install git -y
git clone https://github.com/VirusPilot/ogn-pi34.git
./ogn-pi34/install-pi34-ogn2dump1090.sh
ogn-rf and ogn-decode need to be replaced, here are the required steps:
mkdir tempcd temp- find out whether you are running 32bit or 64bit with
getconf LONG_BIT - to update a 64bit RasPiOS Bullseye receiver:
wget https://github.com/VirusPilot/ogn-pi34/raw/master/rtlsdr-ogn-bin-arm64-0.3.2_Bullseye.tgz
- to update a 32bit RasPiOS Bullseye receiver:
wget http://download.glidernet.org/arm/rtlsdr-ogn-bin-ARM-0.3.2.tgz
tar xvf *.tgzcp -f rtlsdr-ogn/ogn-* <your_current_rtlsdr-ogn_folder>- if you have a dump1090-fa instance already running and want to feed OGN with ADS-B traffic, you need to add the following section to your OGN configuration file:
ADSB: { AVR = "localhost:30002"; MaxAlt = 18000; }; cd <your_current_rtlsdr-ogn_folder>sudo chown root gsm_scan ogn-rf rtlsdr-ognsudo chmod a+s gsm_scan ogn-rf rtlsdr-ogn- 'sudo mknod gpu_dev c 100 0` (only required for GPU version)
sudo service rtlsdr-ogn restartorsudo rebootsudo service rtlsdr-ogn status(to verify that the new version is running)
- please note that an accurate Raspberry Pi system time is required for a proper decoding of traffic, e.g. synchronized via systemd-timesyncd (default) or ntp
- it might be necessary to remove the Raspberry Pi3 or Pi4 USB power supply limitation by adding
max_usb_current=1to/boot/config.txt(/boot/firmware/config.txtin case of Bookworm) - it might be necessary to remove the Raspberry Pi5 USB power supply limitation by adding
usb_max_current_enable=1to/boot/config.txt(/boot/firmware/config.txtin case of Bookworm)
- the following steps are required:
sudo service rtlsdr-ogn stop(on a running OGN receiver station)cd rtlsdr-ogn./gsm_scan --device 0 --gain 25(in case OGN is using SDR #0)./gsm_scan --serial 868 --gain 25(in case OGN is using the SDR with serial #868)- identify the GSM frequency with the highest level (e.g. +20.0dB)
- you may have to adjust the gain value such that this highest level clearly sticks out of all other levels
- enter this frequency (e.g. 935.8) to
CenterFreqin the GSM section ofTemplate.conf - enter the final gain value to
Gainin the GSM section ofTemplate.conf - if nothing can be measured at all you may not have a GSM station nearby (in USA/Canada you need to add
--gsm-850) sudo service rtlsdr-ogn start- monitor the ogn-rf page on port 8082 how
Fine calib. FreqCorrautomatically adjusts over time - if the
Fine calib. FreqCorrvalue increases to a very high value (more than +/- 10.0 ppm) then your SDR may not have a TCXO; in such case you should change theFreqCorrvalue in the RF section ofTemplate.confaccording to the prior section, followed by asudo service rtlsdr-ogn restart
- execute the following:
sudo crontab -ethen add0 1 * * * /sbin/rebootand save
- execute the following:
sudo crontab -ethen add0 5 * * 1 /usr/bin/wget -O ogn2dump1090/ddb.json http://ddb.glidernet.org/download/?j=1and save
- the following steps are required:
sudo apt updatesudo apt install watchdogsudo nano /etc/watchdog.confand add the following lines:ping = 192.168.1.1ping-count = 5
sudo systemctl enable watchdogsudo systemctl start watchdogjournalctl --list-bootslists all reboots
sudo systemctl disable dphys-swapfilesudo apt purge dphys-swapfile -ysudo apt autoremove -y
sudo raspi-config- -> 4 Performance Options / P2 Overlay File System -> yes (not required for the boot partition)