2

我正在尝试通过 GNU Radio(使用 Ubuntu 20.04)使 RTL-SDR 接收 WBFM,使用此流程图:

GNU 无线电流程图

但是当我执行时,它给了我这个错误信息:

gr-osmosdr 0.2.0.0 (0.2.0) gnuradio 3.8.1.0
built-in source types: file osmosdr fcd rtl rtl_tcp uhd miri hackrf bladerf rfspace airspy airspyhf soapy redpitaya freesrp 
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Found Rafael Micro R820T tuner
[R82XX] PLL not locked!
Exact sample rate is: 2000000,052982 Hz
[R82XX] PLL not locked!
Traceback (most recent call last):
  File "rtl_sdr_receive.py", line 270, in <module>
    main()
  File "rtl_sdr_receive.py", line 246, in main
    tb = top_block_cls()
  File "rtl_sdr_receive.py", line 187, in __init__
    self.connect((self.rtlsdr_source_0, 0), (self.rational_resampler_xxx_0, 0))
  File "/usr/lib/python3/dist-packages/gnuradio/gr/hier_block2.py", line 37, in wrapped
    func(self, src, src_port, dst, dst_port)
  File "/usr/lib/python3/dist-packages/gnuradio/gr/hier_block2.py", line 100, in connect
    self.primitive_connect(*args)
TypeError: primitive_connect(): incompatible function arguments. The following argument types are supported:
    1. (self: gnuradio.gr.gr_python.hier_block2_pb, block: gnuradio.gr.gr_python.basic_block) -> None
    2. (self: gnuradio.gr.gr_python.hier_block2_pb, src: gnuradio.gr.gr_python.basic_block, src_port: int, dst: gnuradio.gr.gr_python.basic_block, dst_port: int) -> None

Invoked with: <gnuradio.gr.gr_python.top_block_pb object at 0x7fae1b571af0>, <Swig Object of type 'gr::basic_block_sptr *' at 0x7fae1740c9c0>, 0, <gnuradio.gr.gr_python.hier_block2_pb object at 0x7fae19809770>, 0
swig/python detected a memory leak of type 'gr::basic_block_sptr *', no destructor found.

我正在使用 GNU Radio 3.9 版本,因为它是唯一可以与 rpitx (使用 TCP 连接)一起使用的版本。但它似乎在处理 RTL-SDR 时遇到了麻烦。这是软件错误还是我配置错误?已经尝试从 PPA 和源代码安装 GNU Radio 3.9,最终结果相同。

4

1 回答 1

1

我正在使用GNU Radio 3.9

gr-osmosdr 0.2.0.0 (0.2.0) gnuradio 3.8.1.0

最可能的原因是 gr-osmosdr OOT 模块是为 gnuradio 3.8.1.0构建的,但您使用的是 gnuradio 3.9。你不能混合这样的版本。您需要安装为您的 gnuradio 版本构建的 gr-osmosdr 版本(或从源代码重建/重新安装)。

于 2022-01-08T11:00:14.820 回答