【问题标题】:Running a GNU Radio Custom Out of Tree (OOT) Module on a USRP Device在 USRP 设备上运行 GNU Radio Custom Out of Tree (OOT) 模块
【发布时间】:2019-11-12 04:13:38
【问题描述】:

我创建了一个包含自定义 OOT 模块的 GRC 流程图。流程图已编译,生成的 .py 文件已复制到我的 USRP 设备。

当我尝试在 USRP 上运行此文件时,我收到一个错误:没有名为“my_custom_blocks”的模块

这完全有道理!

我的问题:如何将我的自定义 OOT 模块集成到 USRP 设备上,以便我的文件能够正确运行?我是否需要在我的 USRP 设备上使用 gr_modtool(然后将我的代码复制进去?)有没有更简单的方法?

感谢您的帮助

【问题讨论】:

    标签: gnuradio gnuradio-companion


    【解决方案1】:

    您需要在您的 E 系列 USRP 上安装该模块(您可以您的 USRP 上执行代码的事实表明它是 E 系列)。

    这意味着:

    1. 如果您的 OOT 模块仅支持 Python,您可以复制您的 gr-my_custom_blocks,然后是mkdir build; cd build; cmake -DCMAKE_INSTALL_PREFIX=/usr ..; make; sudo make install
    2. 一般来说,如果您的模块中有 C++ 代码,那么更清洁(即使对于纯 Python 模块)和唯一明智的方法是

      • 在您的 PC 上设置交叉编译工具链,
      • 交叉编译你的模块和
      • 最后安装到正确的目录结构中
      • 将由此生成的文件系统树复制到您的设备

    Ettus Knowledge Base Application Notes AN-311 和 AN-315(您的模块就像 gr-ettus)会有所帮助。

    【讨论】:

    • 嗨马库斯,感谢您的回复。 1. 在我们的设备 (E312) 上,我使用 gr_modtool 创建了一个相同的 OOT 模块和块(与我本地 PC 上的 OOT 具有相同的名称)。然后我复制了我的本地 .py 以替换生成的。我使用了您提供的构建命令,这些命令似乎可以工作(尽管有警告:找不到 DOXYGEN)。但是,当我在设备上运行 grc python 文件时,我收到以下消息: - RuntimeError: e300: failed to open /dev/axi_fpga 这些过程是否有在线教程/文档(对于 py 和 cpp)?再次感谢。
    • 完全不相关的错误。另外,不要在设备上使用gr_modtool;如前所述,只需复制整个模块目录即可。
    猜你喜欢
    • 2020-01-09
    • 2016-06-17
    • 2021-07-29
    • 2021-01-02
    • 1970-01-01
    • 2021-08-26
    • 2021-01-11
    • 2021-09-06
    • 2018-01-01
    相关资源
    最近更新 更多