一、说明

本文使用Ubuntu 20.04系统。采用二进制包的方式安装UHD与GNU Radio。
为防止出现问题,要先安装UHD,再安装GNU Radio。

二、更换国内下载源

如果网速不好,会出现类似于Failed to fetchConnection failed的错误,导致安装失败。
1、打开Ubuntu系统的Software & Updates应用:

2、在Download from:下拉框中选择Other

3、找到China,选择合适的下载源,例如mirror.bjtu.edu.cn,这是北京交通大学的下载源。

4、关闭Software & Updates应用后,点击Reload

三、安装UHD

官方安装教程:https://files.ettus.com/manual/page_install.html

1、查找所需的UHD版本

Ettus Research官网:https://www.ettus.com/
打开如下网址,可以查找UHD历史发行版本:https://files.ettus.com/binaries/uhd_stable/

打开latest_stable文件夹,可以看到当前最新稳定版是4.1.0.5。

在UHD的GitHub分支中查看哪些版本是长期支持(LTS)的:
https://github.com/EttusResearch/uhd

2、使用Ubuntu PPA安装UHD

在Ubuntu终端中输入以下命令:

sudo add-apt-repository ppa:ettusresearch/uhd
sudo apt-get update
sudo apt-get install libuhd-dev libuhd4.1.0 uhd-host

其中第3行的libuhd的版本可以根据需要更改,如改为libuhd3.15.0,这里我安装4.1.0版本。

install命令执行结束:

3、安装UHD FPGA镜像

参考官方文档:https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Downloading_the_UHD_FPGA_Images
在Ubuntu终端中输入以下命令:

sudo uhd_images_downloader


可以选择自行指定其他镜像,参考:https://files.ettus.com/manual/page_usrp_b200.html

如果在运行UHD命令或GNU Radio的时候遇到FPGA固件版本冲突的问题,可以去如下网址下载其他版本的固件,然后在下载好的固件所在的文件夹路径中打开Ubuntu终端,重新运行UHD命令或运行gnuradio-companion
UHD FPGA固件下载:https://files.ettus.com/binaries/images/

4、设置UHD镜像环境变量

初次使用USRP时,需要在Ubuntu中设置环境变量UHD_IMAGES_DIR。如果不设置,则当执行uhd_find_devicesuhd_usrp_probe命令后,出现下图中的错误,提示找不到UHD镜像的路径,并且让我们正确地设置环境变量UHD_IMAGES_DIR或下载镜像包。在已经下载好镜像包的情况下,只需要设置环境变量UHD_IMAGES_DIR

/etc/profile文件是系统默认的bash shell的第一启动文件。其中就涉及到了系统环境变量的读取文件。所以,可以直接打开/etc/profile文件,使用export命令在文件中添加系统环境变量。
这个文件的特点是:系统中所有用户登录时都会执行这个启动文件。所以,里面添加的所有环境变量对系统中的所有用户有效。
使用以下命令打开/etc/profile文件:

sudo gedit /etc/profile

打开后在文件最后面添加以下语句:

export UHD_IMAGES_DIR=/usr/share/uhd/images

保存退出,然后在bash中执行source /etc/profile命令使其生效,如果没有对全局生效,则重新登录,或者重启系统。

四、安装GNU Radio

官方安装教程:https://wiki.gnuradio.org/index.php?title=InstallingGR

1、查找所需的GNU Radio版本

GNU Radio官网:https://www.gnuradio.org/
GNU Radio的GitHub源码:https://github.com/gnuradio/gnuradio

压缩包:https://www.gnuradio.org/releases/gnuradio/

2、使用Ubuntu PPA安装GNU Radio

在Ubuntu终端中输入以下命令:

sudo add-apt-repository ppa:gnuradio/gnuradio-releases
sudo apt-get update
sudo apt install gnuradio

其中第1行命令可以指定版本,如:

sudo add-apt-repository ppa:gnuradio/gnuradio-releases-3.9
sudo add-apt-repository ppa:gnuradio/gnuradio-releases-3.8
sudo add-apt-repository ppa:gnuradio/gnuradio-releases-3.7

若不指定,则默认最新版本。


install命令执行结束:

3、安装完成

在终端中输入gnuradio-companion可以打开GNU Radio的GUI界面:

4、注意事项(来源于官方文档)

(1) 不要试图通过Ubuntu的软件包管理(即使用“apt”)安装更多的软件包,比如gr-osmosdr。Ubuntu将尝试安装一个可能不兼容的版本,您的系统将处于未定义状态。
(2) 3.10 packaging依赖。对于某些发行版,可能需要使用pip(这也可能需要安装)安装python模块packaging

sudo apt install python3-pip
pip install packaging

(3) 在Ubuntu18.04(bionic)发布的版本中,在从PPA安装GNU Radio后,使用gr_modtool时出现问题。这是由于字节编译的代码在安装后仍保留在modtool模板中。要解决这个问题:

cd /usr/share/gnuradio/modtool/templates/gr-newmod
sudo py3clean .

Ubuntu 19及更高版本的软件包不会出现这个问题。

五、使用UHD

1、配置USB

此步骤仅适用于使用USB连接到主机的设备,如B200、B210和B200mini。
参考官方文档:https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Configuring_USB
以下命令安装udev规则,以便非root用户可以访问USRP设备。此设置应立即生效,无需重新启动或注销/登录。运行这些命令时,确保没有通过USB连接USRP设备。
On Linux, udev handles USB plug and unplug events. The following commands install a udev rule so that non-root users may access the device. This step is only necessary for devices that use USB to connect to the host computer, such as the B200, B210, and B200mini. This setting should take effect immediately and does not require a reboot or logout/login. Be sure that no USRP device is connected via USB when running these commands.

cd /usr/lib/uhd/utils
sudo cp uhd-usrp.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

2、配置以太网

参考官方文档:https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Configuring_Ethernet
对于使用以太网连接到主机计算机的USRP设备,如N200、N210、X300、X310,为系统设置192.168.10.1的静态IP地址,子网掩码为255.255.255.0。USRP的默认IP地址为192.168.10.2,掩码为255.255.255.0。应该使用图形化网络管理器来设置IP地址。如果使用ifconfig从命令行设置IP地址,Network Manager可能会覆盖这些设置。

3、连接USRP

参考官方文档:https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Connect_the_USRP
The installation of UHD and GNU Radio should now be complete. At this point, connect the USRP to the host computer.

  • If the interface is Ethernet, then open a terminal window, and try to ping the USRP with “ping 192.168.10.2”. The USRP should respond to the ping requests.
  • If the interface is USB, then open a terminal window, and run "lsusb". You should see the USRP listed on the USB bus with a VID of 2500 and PID of 0020, 0021, 0022, for B200, B210, B200mini, respectively.
  • Also try running "uhd_find_devices" and "uhd_usrp_probe".

4、USRP相关资料

https://files.ettus.com/manual/
https://files.ettus.com/manual/page_usrp_b200.html
https://kb.ettus.com/B200/B210/B200mini/B205mini_Getting_Started_Guides
https://kb.ettus.com/Verifying_the_Operation_of_the_USRP_Using_UHD_and_GNU_Radio

Linux Ubuntu 20.04安装UHD和GNU Radio相关推荐

  1. Ubuntu18.04安装UHD驱动+GNU Radio的问题总结1

    问题1:无法检测空闲分区(安装Ubuntu系统时)? 原因:一种原因是在windows下使用了动态磁盘, ubuntu无法识别.之前在Windows分区时,我为了扩大空间,尝试过E盘和F盘的跨区合并, ...

  2. Ubuntu 20.04 安装uhd+gnuradio

    经过多次试错,使用ppa的方式安装uhd和gnuradio是最方便的方法. uhd安装 sudo apt-get install libuhd-dev uhd-host 使用上条命令进行安装,也可以通 ...

  3. Linux | Ubuntu 20.04安装ipopt和cppAD | 安装全流程+报错解决

    文章目录 参考资料 1. Ipopt安装 1. 方式1: 命令行安装 2. 方式2:源码安装 3. 方式3:源码安装 4. Ipopt测试 5. 报错修复 2. CppAD安装 1. 方式1:命令行安 ...

  4. Linux ubuntu 20.04安装unrar

    因为Linux自带的解压缩工具不能解压.rar文件,所以需要安装rarlinux工具来解压. 加上网上的很多答案因为所用版本陈旧,会出现找不到libstdc++库的问题: unrar: error w ...

  5. DELL台式机Linux ubuntu 20.04.5 安装

    DELL台式机Linux ubuntu 20.04.5 安装 陈拓 2022/09/07-2022/09/08 镜像下载 Index of /ubuntu-releases/20.04/ | 清华大学 ...

  6. 【Linux】Ubuntu 20.04安装教程(图文详解)

    Ubuntu 20.04安装教程(图文详解) 准备工作 打开 VWMARE 进行安装配置 虚拟机已经配置完毕后的 Ubuntu20.0.4 安装 安装VMware Tools 准备工作 下载 Ubun ...

  7. Ubuntu 18.04安装UHD教程

    Ubuntu 18.04安装UHD教程 准备阶段 首先将Ubuntu的下载源给替换了,默认的下载源是国外的,如果不替换更新下载速度特别慢,并且会导致后边的步骤出现各种错误,所以这一步很重要.具体操作是 ...

  8. ubuntu 20.04安装各类软件

    ubuntu 20.04安装各类软件 一.前言 ubuntu 20.04安装后,我输入gcc -v,出现了下面的情况,差点裂开了,20.04居然没有自带gcc编译器,以前安装的版本12.04 16.0 ...

  9. Ubuntu 20.04 安装deepin-wine

    Ubuntu 20.04 安装deepin-wine Deepin Linux作为统信UOS的社区版本,在用户体验上还是相当不错的,一般办公家庭应用已经问题不大了,尤其是Deepin-Wine可以直接 ...

最新文章

  1. java中形参可变的方法
  2. 分布式服务(RPC)+分布式消息队列(MQ)面试题精选
  3. Dediprog EM100Pro-G2 CmdLine教程
  4. 博弈论——Nim游戏
  5. GPU Pro 7——实时体积云(翻译,附Unity工程)
  6. 怎么取消计算机文件共享,Win10系统怎么取消文件共享
  7. 俄勒冈之旅_以您记得的方式玩俄勒冈之路
  8. 数字化转型之道:谈谈企业如何落地数据治理
  9. 错误码:28,错误信息:没有足够的存储空间 解决方法
  10. 关于VS运行时出现错误cannot decrement string iterator before begin
  11. Self-attention(李宏毅2022
  12. 微分,不定积分,定积分的简单理解
  13. java中给对象的List集合去重的几种方法(Lambda)
  14. 全球及中国生物识别技术产业应用趋势及投资风险分析报告2021-2027年
  15. 承前2021,启后2022
  16. java release_java的debug和release编译方式
  17. mycat分库分表配置
  18. 吉多·范罗苏姆 --python创始人
  19. 欧路词典可以支持MDict的词典_我是亲民_新浪博客
  20. 计算机实时检测系统组成,检测系统

热门文章

  1. 史上最系统的算法与数据结构书籍推荐!!!!!吐血整理!!
  2. 搭建pxc集群时需要先安装mysql么_完美起航-高可用MySQL数据库之PXC集群
  3. 基于matlab BP神经网络的手写数字识别
  4. 王道考研2021——计算机网络学习笔记
  5. 我的世界1.7.2服务器直连,我的世界1.7.2
  6. 《电池管理系统》总结
  7. 夯实Java基础系列18:深入理解Java内部类及其实现原理
  8. 个人公众号历史文章合集
  9. php隐蔽电话号码,隐藏电话号码和字符串省略处理
  10. Anaconda使用介绍