OpenWebRX+

Notes:

Monitor log:

hw@rapi4:~ $ journalctl -u openwebrx -f
Dec 17 21:37:32 rapi4 openwebrx[1315]: 2024-12-17 21:37:32,312 - owrx.aircraft - INFO - Following aircraft have become stale: ['7C0C69', 'RSCU55', '7C146A']
Dec 17 21:38:00 rapi4 openwebrx[1315]: 2024-12-17 21:38:00,831 - owrx.aircraft - INFO - Adding 7C6B35
Dec 17 21:41:59 rapi4 openwebrx[1315]: 2024-12-17 21:41:59,133 - owrx.aircraft - INFO - Linking JST680 to 7C6B35
Dec 17 21:42:32 rapi4 openwebrx[1315]: 2024-12-17 21:42:32,315 - owrx.aircraft - INFO - Following aircraft have become stale: ['7C47A8', 'JST044']
Dec 17 21:42:39 rapi4 openwebrx[1315]: 2024-12-17 21:42:39,474 - owrx.aircraft - INFO - Adding 7C146D
Dec 17 21:44:52 rapi4 openwebrx[1315]: 2024-12-17 21:44:52,349 - owrx.aircraft - INFO - Linking JST678 to 7C7CCE
Dec 17 21:48:03 rapi4 openwebrx[1315]: 2024-12-17 21:48:03,583 - owrx.aircraft - INFO - Linking QFA655 to 7C146D
Dec 17 21:49:32 rapi4 openwebrx[1315]: 2024-12-17 21:49:32,319 - owrx.aircraft - INFO - Following aircraft have become stale: ['7C7A47', 'VOZ697']
Dec 17 21:50:08 rapi4 openwebrx[1315]: 2024-12-17 21:50:08,731 - owrx.aircraft - INFO - Adding 7C7AB4
Dec 17 21:53:01 rapi4 openwebrx[1315]: 2024-12-17 21:53:01,995 - owrx.aircraft - INFO - Linking VOZ442 to 7C7AB4
Dec 17 21:57:32 rapi4 openwebrx[1315]: 2024-12-17 21:57:32,321 - owrx.aircraft - INFO - Following aircraft have become stale: ['7C6D30', 'VOZ1404']
Dec 17 21:58:44 rapi4 openwebrx[1315]: 2024-12-17 21:58:44,316 - owrx.aircraft - INFO - Adding 7C68D4

Test RTL Dongle:

hw@rapi4:~ $ rtl_test
Found 2 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000002 <--- make sure that each new dongle has a unique serial number
  1:  Realtek, RTL2838UHIDIR, SN: 00000001
Using device 0: Generic RTL2832U OEM
usb_claim_interface error -6
Failed to open rtlsdr device #0.

hw@rapi4:~ $ lsusb | grep DVB-T
Bus 001 Device 006: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 004: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T


Check Soapy SDR (SDRPlay)

hw@rapi4:~ $ SoapySDRUtil --info
######################################################
##     Soapy SDR -- the SDR abstraction library     ##
######################################################

Lib Version: v0.8.1-3
API Version: v0.8.0
ABI Version: v0.8
Install root: /usr
Search path:  /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8
Search path:  /usr/local/lib/aarch64-linux-gnu/SoapySDR/modules0.8                (missing)
Search path:  /usr/local/lib/SoapySDR/modules0.8
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libHackRFSupport.so  (0.3.3)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libLMS7Support.so    (22.09.1)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libRedPitaya.so      (0.1.1)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libairspySupport.so  (0.2.0)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libaudioSupport.so   (0.1.1)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libbladeRFSupport.so (0.4.1)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libosmosdrSupport.so (0.2.5)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libremoteSupport.so  (0.5.2)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/librfspaceSupport.so (0.2.5)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/librtlsdrSupport.so  (0.3.3)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libsdrPlaySupport.so (0.8.10-cc14358)
Module found: /usr/lib/aarch64-linux-gnu/SoapySDR/modules0.8/libuhdSupport.so     (0.4.1)
Module found: /usr/local/lib/SoapySDR/modules0.8/libFCDPPSupport.so               (0.2.0-f7858c8)
Module found: /usr/local/lib/SoapySDR/modules0.8/libPlutoSDRSupport.so            (0.2.2-9733269)
Module found: /usr/local/lib/SoapySDR/modules0.8/libSoapyRadioberrySDR.so
Module found: /usr/local/lib/SoapySDR/modules0.8/libafedriDevice.so               (86d152c)
Module found: /usr/local/lib/SoapySDR/modules0.8/libairspyhfSupport.so            (0.2.0-a2fd6cf)
Module found: /usr/local/lib/SoapySDR/modules0.8/libsoapyMiriSupport.so           (ae106fa)
Available factories... afedri, airspy, airspyhf, audio, bladerf, fcdpp, hackrf, lime, osmosdr, plutosdr, radioberry, redpitaya, remote, rfspace, rtlsdr, sdrplay, soapyMiri, uhd
Available converters...
 -  CF32 -> [CF32, CS16, CS8, CU16, CU8]
 -  CS16 -> [CF32, CS16, CS8, CU16, CU8]
 -  CS32 -> [CS32]
 -   CS8 -> [CF32, CS16, CS8, CU16, CU8]
 -  CU16 -> [CF32, CS16, CS8]
 -   CU8 -> [CF32, CS16, CS8]
 -   F32 -> [F32, S16, S8, U16, U8]
 -   S16 -> [F32, S16, S8, U16, U8]
 -   S32 -> [S32]
 -    S8 -> [F32, S16, S8, U16, U8]
 -   U16 -> [F32, S16, S8]
 -    U8 -> [F32, S16, S8]

Check SDRPlay

NOTE: only works if the radio is not in use!

hw@rapi4:~ $ SoapySDRUtil --probe="driver=sdrplay"
######################################################
##     Soapy SDR -- the SDR abstraction library     ##
######################################################

Probe device driver=sdrplay
[INFO] devIdx: 0
[INFO] SerNo: 210500B445
[INFO] hwVer: 4
[INFO] rspDuoMode: 0
[INFO] tuner: 1
[INFO] rspDuoSampleFreq: 0.000000

----------------------------------------------------
-- Device identification
----------------------------------------------------
  driver=SDRplay
  hardware=RSPdx
  sdrplay_api_api_version=3.150000
  sdrplay_api_hw_version=4

----------------------------------------------------
-- Peripheral summary
----------------------------------------------------
  Channels: 1 Rx, 0 Tx
  Timestamps: NO
  Other Settings:
     * RF Gain Select - RF Gain Select
       [key=rfgain_sel, default=4, type=string, options=(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)]
     * IQ Correction - IQ Correction Control
       [key=iqcorr_ctrl, default=true, type=bool]
     * AGC Setpoint - AGC Setpoint (dBfs)
       [key=agc_setpoint, default=-30, type=int, range=[-60, 0]]
     * BiasT Enable - BiasT Control
       [key=biasT_ctrl, default=true, type=bool]
     * RfNotch Enable - RF Notch Filter Control
       [key=rfnotch_ctrl, default=true, type=bool]
     * DabNotch Enable - DAB Notch Filter Control
       [key=dabnotch_ctrl, default=true, type=bool]
     * HDR Enable - RSPdx HDR Control
       [key=hdr_ctrl, default=true, type=bool]

----------------------------------------------------
-- RX Channel 0
----------------------------------------------------
  Full-duplex: NO
  Supports AGC: YES
  Stream formats: CS16, CF32
  Native format: CS16 [full-scale=32767]
  Antennas: Antenna A, Antenna B, Antenna C
  Corrections: DC removal
  Full gain range: [20, 59] dB 
    IFGR gain range: [20, 59] dB
    RFGR gain range: [0, 27] dB
  Full freq range: [0.001, 2000] MHz
    RF freq range: [0.001, 2000] MHz
    CORR freq range:  MHz
  Sample rates: 0.0625, 0.096, 0.125, 0.192, 0.25, ..., 6, 7, 8, 9, 10 MSps
  Filter bandwidths: 0.2, 0.3, 0.6, 1.536, 5, 6, 7, 8 MHz

And if the SDR is in use the command will respond with the below:

hw@rapi4:~ $ SoapySDRUtil --probe="driver=sdrplay"
######################################################
##     Soapy SDR -- the SDR abstraction library     ##
######################################################

Probe device driver=sdrplay
Error probing device: no available RSP devices found

hw@rapi4:~ $ ps -ef | grep sdrplay_api | grep -v grep
root         813       1 23 Dec15 ?        11:20:30 /opt/sdrplay_api/sdrplay_apiService

hw@rapi4:~ $ lsusb | grep SDRplay
Bus 001 Device 009: ID 1df7:3030 SDRplay RSPdx

hw@rapi4:~ $ dmesg | grep 1df7
[    4.053575] usb 1-1.1.4.4: New USB device found, idVendor=1df7, idProduct=3030, bcdDevice= 2.07


Stopping,Starting and Restarting OpenWebRX

NOTE: stopping/restarting OpenWebRX will take some time depending on background services running. 

hw@rapi4:~ $ time  sudo systemctl stop openwebrx

real    1m30.118s <-- it sure takes a while
user    0m0.006s
sys     0m0.010s

hw@rapi4:~ $ time  sudo systemctl start openwebrx

real    0m0.096s
user    0m0.016s
sys     0m0.012s

hw@rapi4:~ $ sudo systemctl restart openwebrx


Files can be found here:

root@rapi4:~# find / -name openwebrx\*
/var/lib/dpkg/info/openwebrx.templates
/var/lib/dpkg/info/openwebrx.config
/var/lib/dpkg/info/openwebrx.postrm
/var/lib/dpkg/info/openwebrx.postinst
/var/lib/dpkg/info/openwebrx.conffiles
/var/lib/dpkg/info/openwebrx.prerm
/var/lib/dpkg/info/openwebrx.md5sums
/var/lib/dpkg/info/openwebrx.list
/var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openwebrx.service
/var/lib/systemd/deb-systemd-helper-enabled/openwebrx.service.dsh-also
/var/lib/openwebrx
/tmp/openwebrx
/tmp/openwebrx/openwebrx-audiochopper-master-546548057680-241217_125800.wav
/tmp/openwebrx/openwebrx-audiochopper-master-546548056272-241217_125800.wav
/tmp/openwebrx/openwebrx-audiochopper-master-546548056144-241217_125800.wav
/tmp/openwebrx/openwebrx-audiochopper-master-546548090960-241217_125800.wav
/tmp/openwebrx/openwebrx-audiochopper-master-546548055952-241217_125830.wav
/tmp/openwebrx/openwebrx-audiochopper-master-546548059984-241217_125845.wav
/sys/fs/cgroup/system.slice/openwebrx.service
/etc/modprobe.d/openwebrx.conf
/etc/systemd/system/multi-user.target.wants/openwebrx.service
/etc/apt/sources.list.d/openwebrx-plus.list
/etc/apt/sources.list.d/openwebrx.list
/etc/apt/trusted.gpg.d/openwebrx-plus.gpg
/etc/openwebrx
/etc/openwebrx/openwebrx.conf
/etc/openwebrx/openwebrx.conf.d
/etc/nginx/sites-available/openwebrx
/etc/nginx/sites-enabled/openwebrx
/usr/lib/systemd/system/openwebrx.service
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-groupcall.svg
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-background-cool-blue.png
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-directcall.svg
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-scale-background.png
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-avatar.png
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-top-photo.jpg
/usr/lib/python3/dist-packages/htdocs/gfx/openwebrx-background-cool-blue.webp
/usr/lib/python3/dist-packages/htdocs/openwebrx.js
/usr/lib/python3/dist-packages/htdocs/css/openwebrx.css
/usr/lib/python3/dist-packages/htdocs/css/openwebrx-header.css
/usr/lib/python3/dist-packages/htdocs/css/openwebrx-globals.css
/usr/share/icons/hicolor/scalable/apps/openwebrx.svg
/usr/share/doc/openwebrx
/usr/share/keyrings/openwebrx.gpg
/usr/share/applications/openwebrx.desktop
/usr/bin/openwebrx

Configuration

hw@rapi4:~ $ cat /etc/openwebrx/openwebrx.conf
[core]
data_directory = /var/lib/openwebrx
temporary_directory = /tmp
log_level = INFO

[web]
port = 8073 <-- change this if running more than one instance (remote access -- port-forwarding)
ipv6 = true <-- but why? (changed 20241227 to false)
# Uncomment bind_address to bind OpenWebRX to a specific IP-address.
# By default, OpenWebRX will bind to all interfaces.
# Use ::1 for localhost only, or any other configured address to bind to that address only.
#bind_address = ::1

[aprs]
# path to the aprs symbols repository (get it here: https://github.com/hessu/aprs-symbols)
symbols_path = /usr/share/aprs-symbols/png

Port-Forwarding Config