Как слушать радио с помощью RTL-SDR v4 в Fedora Linux 43
Как слушать радио с помощью программно определяемого USB радиоприёмника RTL-SDR v4 в Fedora Linux"
1080 Words
2024-02-18 16:22 +0300
Программно-определяемый радиоприёмник RTL SDR4 можно использовать для приёма радиопередач с помощью компьютера. Можно ловить как радиостанции FM диапазона, так же, при наличии правильный антенны (в моём случае это было около 300 метров недорогого медного одножильного провода, натянутого между елей), можно ловить длинноволновые и средневолновые радиостанции, включая полумифическую УВБ-76 из болот Ленинградской области. Кстати, её трансляции можно послушать в канале Телеграма - https://t.me/uvb76logs
Официально устройство можно купить через сайт, но, в моём случае я купил его через Ozon.

На момент написания статьи я использовал дистрибутив Fedora 40.
Если включить отладочный вывод ядра с помощью $ sudo dmesg -w, то при подключении
устройства к USB порту третьей версии (обычно - синий), то в лог пишеться такая информация:
[ 5217.819868] usb 1-3.1.1: new high-speed USB device number 17 using xhci_hcd
[ 5217.907841] usb 1-3.1.1: New USB device found, idVendor=0bda, idProduct=2838, bcdDevice= 1.00
[ 5217.907845] usb 1-3.1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 5217.907846] usb 1-3.1.1: Product: Blog V4
[ 5217.907846] usb 1-3.1.1: Manufacturer: RTLSDRBlog
[ 5217.907847] usb 1-3.1.1: SerialNumber: 00000001
[ 5273.611541] usb 1-3.1.1: USB disconnect, device number 17
[ 5278.637976] usb 1-1: new high-speed USB device number 18 using xhci_hcd
[ 5278.778039] usb 1-1: New USB device found, idVendor=0bda, idProduct=2838, bcdDevice= 1.00
[ 5278.778055] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 5278.778060] usb 1-1: Product: Blog V4
[ 5278.778063] usb 1-1: Manufacturer: RTLSDRBlog
[ 5278.778067] usb 1-1: SerialNumber: 00000001
[ 5352.391304] usb 1-1: USB disconnect, device number 18
С USB портами второй версии (чёрные) устройство у меня не заработало.
Далее, надо установить требуемое программное обеспечение:
$ sudo dnf install gqrx
В моём случае установило довольно много зависимостей:
Установка:
gqrx x86_64 2.17.5-1.fc40 updates 672 k
Установка зависимостей:
SoapySDR x86_64 0.8.1-11.fc40 fedora 161 k
airspyone_host x86_64 1.0.10-6.fc40 fedora 64 k
boost-chrono x86_64 1.83.0-5.fc40 updates 25 k
boost-program-options x86_64 1.83.0-5.fc40 updates 108 k
boost-serialization x86_64 1.83.0-5.fc40 updates 133 k
boost-thread x86_64 1.83.0-5.fc40 updates 61 k
flexiblas x86_64 3.4.5-1.fc40 updates 26 k
flexiblas-netlib x86_64 3.4.5-1.fc40 updates 3.3 M
flexiblas-openblas-openmp x86_64 3.4.5-1.fc40 updates 17 k
gnuradio x86_64 3.10.9.2-2.fc40 fedora 3.0 M
google-cpu_features x86_64 0.7.0-6.fc40 fedora 36 k
gr-funcube x86_64 1.0.0-28.20220130gitbf71b979.fc40 fedora 156 k
gr-iqbal x86_64 0.38.2-26.20210210gitfbee239a.fc40 fedora 107 k
gr-osmosdr x86_64 0.2.5-4.fc40 fedora 369 k
gsl x86_64 2.7.1-8.fc40 fedora 1.1 M
hackrf x86_64 2024.02.1-1.fc40 fedora 89 k
hidapi x86_64 0.14.0-4.fc40 fedora 46 k
libgfortran x86_64 14.2.1-3.fc40 updates 940 k
libosmo-dsp x86_64 0.3-22.fc40 fedora 25 k
libquadmath x86_64 14.2.1-3.fc40 updates 202 k
openblas x86_64 0.3.26-4.fc40 fedora 39 k
openblas-openmp x86_64 0.3.26-4.fc40 fedora 5.1 M
portaudio x86_64 19-43.fc40 fedora 93 k
python3-click-plugins noarch 1.1.1-19.fc40 fedora 17 k
python3-devel x86_64 3.12.8-2.fc40 updates 314 k
python3-gnuradio x86_64 3.10.9.2-2.fc40 fedora 3.6 M
python3-mako noarch 1.2.3-6.fc40 fedora 215 k
python3-numpy x86_64 1:1.26.4-3.fc40 updates 7.4 M
python3-numpy-f2py x86_64 1:1.26.4-3.fc40 updates 537 k
python3-paste noarch 3.7.1-3.fc40 fedora 643 k
python3-pooch noarch 1.8.2-2.fc40 updates 135 k
python3-pyOpenSSL noarch 23.2.0-3.fc40 fedora 126 k
python3-pyopengl x86_64 3.1.7-6.fc40 fedora 4.1 M
python3-pyqtgraph noarch 0.13.3-6.fc40 fedora 1.4 M
python3-pyzmq x86_64 25.1.2-1.fc40 updates 464 k
python3-scipy x86_64 1.11.3-11.fc40 updates 16 M
python3-tempita noarch 0.5.2-12.fc40 fedora 45 k
python3-thrift x86_64 0.15.0-4.fc40 fedora 189 k
python3-tkinter x86_64 3.12.8-2.fc40 updates 410 k
qwt-qt5 x86_64 6.2.0-5.fc40 fedora 577 k
rtl-sdr x86_64 0.6.0^20230921git1261fbb2-3.fc40 fedora 96 k
sdl12-compat x86_64 1.2.68-2.fc40 fedora 90 k
spdlog x86_64 1.12.0-4.fc40 updates 117 k
tk x86_64 1:8.6.13-3.fc40 fedora 1.6 M
uhd x86_64 4.6.0.0-3.fc40 fedora 5.4 M
volk x86_64 3.1.1-1.fc40 fedora 481 k
Установка слабых зависимостей:
hackrf-firmware noarch 2024.02.1-1.fc40 fedora 70 k
python3-beaker noarch 1.12.1-5.fc40 fedora 145 k
python3-crypto x86_64 2.6.1-50.fc40 fedora 564 k
python3-pip noarch 23.3.2-2.fc40 updates 3.2 M
Результат транзакции
================================================================================
Установка 51 Пакет
Объем загрузки: 64 M
Объем изменений: 278 M
Далее, после запуска GQRX вылезает окно настройки соединения с устройством.
В моём случае работали такие параметры:

Интерфейс программы GQRX довольно простой - я разобрался, с Божией помощью, за пару часов методом научного тыка.

На частоте 144.800.800 (в модуляции Narrow Frequency Modulation - NFM) можно перехватить пакетную передачу данных в APRS формате.
21:31:01$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}R2DFR-15>APHFPG,TCPIP,R2BBS-3*:>HF Pager > APRS Gate MSK 7.175
21:31:46$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2AKT-13>APRX29,TCPIP,RW3DKE-1*:!5556.34N/03758.45E_c180s001g003t020r...p...P...h00b.....Weather in Shchyolkovo: Temperature => -6.8 C; Wind => 0.4 m/s, S; Gust => 1.2 m/s; Humidity => 0 %; Pressure => n/a mmHg
21:31:47$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2DFR-4>APWW10,TCPIP,RW3DKE-1*:@183140h5544.05N/[email protected] RADIOCULT.SU!W84!
21:32:20$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}RUA017>APWW27,TCPIP,R2BBS-3*:!5628.47N/03818.35E- +DIGITAL MODE
21:38:28$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2DFR-13>APRS,TCPIP,RW3DKE-1*:=5543.38N/03723.83EW WX_Kuntsevo=-4.9C1.0%744.62mmHg28.3C
21:38:29$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}R2DFR-13>APRS,TCPIP,R2BBS-3*:=5543.38N/03723.83EW WX_Kuntsevo=-4.9C1.0%744.62mmHg28.3C
21:39:00$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RR3AL>APMI01,TCPIP,RW3DKE-1*:=5528.30N/03717.74ErRepeater 145.700 MHz -0.600kHz FM/C4FM T94.8 H=60m P=50W, Admin R2AE, Troitsk, New Moscow
21:39:07$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
@181838z5552.66N/03732.47E#PHG5335800-LETIA MSK GM350 WX3in1Plus2,T=11.6C op.Anton [email protected]
21:44:58$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2AYZ-D>APDG03,TCPIP,RW3DKE-1*:!5545.59ND03744.30E&/A=00000070cm MMDVM Voice (DMR) 439.66000MHz -5.0000MHz, ARK Moscow
21:45:09$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}RK3FWA>APRS,TCPIP,R2BBS-3*:=5620.15N/03732.36ErRK3FWA FRN Node Regions | 145.775/145.175 #127.3 | More info: digital.hamcom.ru
21:45:37$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2DFR-12>APHFPG,TCPIP,RW3DKE-1*:/250949z5543.24N/03723.79ErHF Pager APRS Gate 7.175 USB
21:46:07$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}UB3FBR-15>APRS,TCPIP,R2BBS-3*:=5509.85N/03726.17E- op.Yuri, QSX:145.500, avr-eth->linux Node-RED
21:46:21$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RZ3DKH-D>APDG03,TCPIP,RW3DKE-1*:!5555.89N\03751.36E-/A=00000070cm MMDVM Voice (DMR) 438.80000MHz -5.0000MHz, APRS for DMRGateway
21:46:22$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RZ3DKH-D>APDG03,TCPIP,RW3DKE-1*:>Powered by WPSD (https://wpsd.radio)
21:47:51$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2DFR-4>APWW10,TCPIP,RW3DKE-1*:>KO85qr/y 145.650/ 145.050 DMR TX/RX
21:48:05$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}RC3C-17>APLX10,TCPIP,R2BBS-3*:=5528.31N/03718.10E?Server: Debian GNU/Linux 10 (buster) Linux 4.19.0-25-amd64 | 18.02.2025 21:48:01 up 32 days, 12:19, 1 user, load average: 0.09, 0.12, 0.16
21:48:29$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2DFR-13>APRS,TCPIP,RW3DKE-1*:=5543.38N/03723.83EW WX_Kuntsevo=-4.9C1.0%744.56mmHg28.6C
22:23:36$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}R2DFR-13>APRS,TCPIP,R2BBS-3*:=5543.38N/03723.83EW WX_Kuntsevo=-4.7C1.0%744.47mmHg29.0C
22:23:40$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2ATJ>APBM1S,TCPIP,RW3DKE-1*:@181923z5546.80N/03727.00EQPHG1000MMDVM MMDVM HS Hat 438.8800/438.8800 CC1
22:24:22$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}UB3IBX-1>APBM1S,TCPIP,RW3DKE-1*:@181924z5552.77N/03733.76EQPHG1000MMDVM DMO 144.8875/144.8875 CC1
22:24:22$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RK3FWD-A>APJI40,TCPIP,RW3DKE-1*:!5549.18ND03736.70E&RNG0002 1.2 Voice 1280
22:24:23$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RK3FWD-A>APJI40,TCPIP,RW3DKE-1*:<IGATE,MSG_CNT=0,LOC_CNT=0
22:24:24$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RK3FWD-S>APJIO4,TCPIP,RW3DKE-1*:;RK3FWD A *281003z5549.18ND03736.70EaRNG0002 1.2 Voice 1280
22:24:25$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}RZ3DKH-2>APBM1S,TCPIP,RW3DKE-1*:@181924z5555.89N/03751.37ErPHG1000MMDVM MMDVM HS Dual Hat 438.8000/433.8000 CC1
22:24:29$ fm R2BBS-3 to APMI06-0 via RW3DKE-1 UI PID=F0
}R2ADU-2>APBM1S,TCPIP,R2BBS-3*:@181924z5552.27N/03736.63ErPHG1300MMDVM MMDVM HS Dual Hat 145.5750/144.9750 CC1
22:25:03$ fm RW3DKE-1 to APU25N-0 via WIDE1-1 UI^ PID=F0
}R2AYZ-D>APDG03,TCPIP,RW3DKE-1*:!5545.59ND03744.30E&/A=00000070cm MMDVM Voice (DMR) 439.66000MHz -5.0000MHz, ARK Moscow
О ней подробнее написано у https://eax.me/sdr-aprs/
Как видно по повторяющимся позывным RW3DKE, я похоже поймал работу шлюза Михаила Абрашина, о котором написано тут
http://aprs.qrz.ru/art/rw3dke/01.php