USRP 2954(X310)在ubuntu系统下版本不兼容的问题

一、问题:运行Gnuradio时报错

RuntimeError: RuntimeError: Expected FPGA compatibility number 38, but got 39:
The FPGA image on your device is not compatible with this host code build.
Download the appropriate FPGA images for this version of UHD.
Please run:

 "/lib/x86_64-linux-gnu/uhd/utils/uhd_images_downloader.py"

这是由于FPGA版本不兼容,2954(x310)系列比较烦人的是内部有一个linux系统,也要配置环境。 如果内部系统用的FPGA版本和外部控制电脑不一致,虽然UHD驱动仍然可以找到设备,调试的时候就会报错。所以就需要给2954烧录镜像。

二、解决办法:参考USRP X310使用的准备工作--Linux进行FPGA image烧录_心雨如雾的博客-优快云博客

        1、我采用的是方法一,如果你已经安装好了UHD,那么就只需要从第三步开始,下载镜像并烧录。下载镜像文件有两种方法,第一种就是参考里面的方法,在网址files.ettus.com:/binaries/uhd_stable/latest_release/

        当中选择所需要的版本,如果你是uhd4.1.0,那就选择4.1.0即可。解压下载好的压缩文件,打开文件夹下的目录/host/utils,然后右键选择在终端中打开,输入ls即可看到所有文件,再输入

sudo uhd_images_downloader 即可下载USRP的镜像bit,然后进行镜像的烧录.

默认目录会在终端当中有提示,我的在/usr/local/share/uhd,如果是安装在默认位置,就运行以下命令进行烧录:

uhd_image_loader --args="type=x300,addr=192.168.10.3,fpga=HG"

注意在运行之前,先输入uhd_find_devices查看2954的ip地址;

如果没有在默认位置,就运行:

uhd_image_loader --args="type=x300,addr=192.168.10.2" --fpga-path="<path_to_images>/usrp_x310_fpga_HG.bit"

其中<path_to_images>就是路径。

        2、另一种下载镜像的办法,https://files.ettus.com/binaries/cache/x3xx/,在这个网站里面选择对应版本的FPGA镜像,直接下载,解压后采用非默认位置的烧录命令进行烧录,不过这种方法我还不知道怎么判断所需版本,我是试了两个就可以了。

        注意:烧录完之后需要重启2954再运行gnuradio。

### 配置LabVIEW与USRP-2954R在Linux系统的兼容性 #### 安装必要驱动程序 为了使LabVIEW能够在Linux系统上正常工作并支持USRP-2954R设备,首先需要确保已经正确安装了UHD(Universal Hardware Driver)。这可以通过官方提供的指南完成,特别是针对特定型号如USRP-2950/2952/2953/2954/2955的入门指导文档[^1]。 对于USRP-2954R,在安装过程中需要注意的是要选择适合于所使用的操作系统版本的UHD驱动包,并遵循其附带的说明文件来进行操作。通常情况下,可以从Ettus Research官方网站下载最新的稳定版UHD源码或预编译二进制文件进行安装。 #### LabVIEW环境配置 一旦完成了UHD驱动的成功部署,则可以继续设置LabVIEW环境: 1. **确认依赖项** 确认已安装所有必需的库和支持工具链,比如GNU Radio框架及其插件集合,这些组件有助于简化通过LabVIEW控制USRP的操作流程[^3]。 2. **获取NI-USRP模块** 下载适用于Linux平台上的最新版本NI-USRP LabVIEW模块。此模块包含了用于定义USRP硬件参数以及执行收发任务所需的功能节点集。 3. **集成至LabVIEW项目** 将上述获得的NI-USRP VI(虚拟仪器)加入到个人的工作空间里;利用它们构建自定义的应用程序逻辑结构图,从而实现对实际物理层面上的数据交互管理功能。 4. **验证连接状态** 使用`NI-USRP Configuration Utility`应用程序来检验当前环境下能否识别出连接着的USRP装置。当一切顺利的话,应该可以在界面上看到有关目标板卡的信息显示出来[^2]。 ```bash # 更新软件仓库索引 sudo apt-get update # 安装必要的依赖关系 sudo apt-get install build-essential cmake git libboost-all-dev \ python-numpy swig doxygen python-matplotlib python-scipy \ gnuradio gr-osmosdr # 获取UHD源代码 git clone https://github.com/EttusResearch/uhd.git cd uhd/host mkdir build && cd build # 编译并安装UHD cmake .. make -j$(nproc) sudo make install sudo ldconfig ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值