前言

LimeSDR 是一款完全开源的SDR产品,和 HackRF 一样,包括 PCB 设计图,FPGA 代码,HOST代码完全公开,方便研究和学习 SDR 系统原理。虽然市面上有很多 SDR 产品,但很少有像 LimeSDR 性价比这么高的。
LimeSDR 支持 100kHz 到 3.8GHz 频率范围,已经可以不需外置上变频器,即可完成短波应用的使用,另外LimeSDR 是一款完全开源的SDR产品包含了 2×2 MIMO 的支持,满足了大部分应用场景。

通过它的一些应用来了解一下其灵活性:
蜂窝网络、WiFi、蓝牙、IoT协议(LoRa/SigFox等)、导航、气象信息、航空信息、海事信息、空间通信、还有广播和电视。
这只是 LimeSDR 应用场景的一小部分,你可以应用到你能想到的任何领域。

编译环境

软件结构

Lime Suite 是一款支持多种硬件平台的软件,包括LimeSDR,LMS7002M收发器,以及使用基于 LMS7 开发的其他硬件。安装 Lime Suite 可以使许多 SDR 应用程序(如GQRX)可以通过中间适配组件 SoapySDR 适配多种 SDR 设备配合使用。

SoapySDR 是位于 LimeSDR 的驱动程序和 SDR 应用程序之间的胶水层。使用一个简单的包装器 (SoapyLMS7), LimeSDR 可以在任何 SoapySDR 或 Gr-OsmoSDR 支持的应用程序中使用。这包括编程环境, 如 Pothos 框架和 GNU Radio,以及像 GQRX 和 CubicSDR 这样的图形应用程序。

安装UHD

Wiki:http://files.ettus.com/manual/page_build_guide.html

$ sudo apt-get install libboost-all-dev libusb-1.0-0-dev python-mako doxygen python-docutils cmake build-essential git
$ git clone https://github.com/EttusResearch/uhd
$ cd uhd
$ cd host && mkdir build && cd build
$ cmake ../
$ make -j5
$ sudo make install
$ sudo ldconfig

安装SoapySDR

Wiki:https://github.com/pothosware/SoapySDR/wiki/BuildGuide

$ sudo apt-get install cmake g++ libpython-dev python-numpy swig
$ git clone https://github.com/pothosware/SoapySDR.git
$ cd SoapySDR
$ git pull origin master
$ mkdir build && cd build
$ cmake ..
$ make -j5
$ sudo make install
$ sudo ldconfig

安装SoapyUHD

Wiki:https://github.com/pothosware/SoapyUHD/wiki

$ git clone https://github.com/pothosware/SoapyUHD.git
$ cd SoapyUHD
$ mkdir build && cd build
$ cmake ..
$ make
$ sudo make install

安装LimeSuite

Wiki:http://wiki.myriadrf.org/Lime_Suite

$ sudo add-apt-repository -y ppa:myriadrf/drivers
$ sudo apt-get update
$ sudo apt-get install git g++ cmake libsqlite3-dev libsoapysdr-dev libi2c-dev libusb-1.0-0-dev libwxgtk3.0-dev freeglut3-dev
$ git clone https://github.com/myriadrf/LimeSuite.git
$ cd LimeSuite
$ mkdir builddir && cd builddir
$ cmake ../
$ make -j5
$ sudo make install
$ sudo ldconfig

输入下列命令使非ROOT用户可以访问LimeSDR这样基于USB的设备

$ cd LimeSuite/udev-rules
$ sudo sh ./install.sh

安装上述驱动后,运行命令检查驱动是否安装成功

然后查看能不能找到设备

安装GNU Radio、gr-osmosdr

Wiki:https://www.gnuradio.org/doc/doxygen/build_guide.html
从源码构建

$ sudo apt-get -y install git-core cmake g++ python-dev swig \
$ pkg-config libfftw3-dev libboost-all-dev libcppunit-dev libgsl0-dev \
$ libusb-dev libsdl1.2-dev python-wxgtk3.0 python-numpy \
$ python-cheetah python-lxml doxygen libxi-dev python-sip \
$ libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
$ python-sip python-sip-dev python-qt4 python-sphinx libusb-1.0-0-dev \
$ libcomedi-dev libzmq-dev
$ git clone --recursive https://github.com/gnuradio/gnuradio.git
$ cd gnuradio && mkdir build && cd build
$ cmake ../
$ make -j5
$ make test
$ sudo make install

安装gr-osmosdr支持包
Wiki:http://osmocom.org/projects/gr-osmosdr/wiki

$ sudo apt-get install libsoapysdr-dev gr-fcdproplus
$ git clone git://git.osmocom.org/gr-osmosdr
$ cd gr-osmosdr && mkdir build && cd build/
$ cmake ../
$ make
$ sudo make install
$ sudo ldconfig

安装之后,会看到Soapysdr support在Gnuradio enabled里

测试LimeSDR接收、发射通道

GNU Radio和gr-osmosdr安装完成后,我们加载一个接收信号的grc流程图
Grc流程图下载地址:https://1drv.ms/f/s!AsE4BpolygfCjGfspV7_Gno3rpy5

RF增益设置为20,IF中频增益设置成12,BB基带增益设置成19
天线设置为LNAL 对应的是RX Channel 0

然后运行,按下遥控钥匙,可以看到成功接收到433MHz遥控钥匙的信号,说明GNU Radio和gr-osmosdr安装没有问题。

测试通完接收通道后,我们测试下发射通道,做一个小型FM电台试试
*注意请在不干扰正常无线通讯的基础上进行实验

在另一台电脑上打开SDRSharp将FM频率调到104MHz可以明显看到我们发射的信号

相关链接

名称 链接
《物联网安全百科》 iot-security.wiki
伏宸安全实验室 future-sec.com
IOT Security iot-security.org
Yaseng Blog yaseng.org
知乎专栏 zhuanlan.zhihu.com
邮箱 info@iot-security.wiki
qq 交流群 306482276
微信公众号
微信交流群

LimeSDR 上手指南相关推荐

  1. Go Pro 半小时上手指南

    Jack刚买了台Go Pro 6,商品包装内没有说明书,希望尽快拍那种慢动作或者酷炫的照片,去网上看了些贴都是注重结果,很少讲具体设置或技巧,光靠自己研究什么时候才能入门?<Go Pro 半小时 ...

  2. android组件浮动在activity上_Jetpack Hilt 依赖注入框架上手指南

    code小生 一个专注大前端领域的技术平台公众号回复Android加入安卓技术群 作者:LvKang-insist 链接:https://juejin.im/post/5efdff9d6fb9a07e ...

  3. 英雄探长的机器人怎么拼_LOL路人局都畏惧的辅助英雄,新版机器人布里兹上手指南...

    最近国服版本更新到9.9对这个所谓的机器人做了不小的改动,算是一波不错的加强,在此推出一篇上手指南,希望能帮助大家上分. 版本更新如下: 解析:坦度下滑,伤害提升,大招被动机制不在干扰我方ADC补刀, ...

  4. 「最简单」的 Core Data 上手指南

    本文讲的是「最简单」的 Core Data 上手指南, 原文地址:The Easiest Core Data 原文作者:Alberto De Bortoli 译文出自:掘金翻译计划 译者:Zheaol ...

  5. 分布式作业 Elastic-Job 快速上手指南

    转载自 分布式作业 Elastic-Job 快速上手指南 Elastic-Job支持 JAVA API 和 Spring 配置两种方式配置任务,这里我们使用 JAVA API 的形式来创建一个简单的任 ...

  6. TortoiseGit + GitHub 快速上手指南

    TortoiseGit + GitHub 快速上手指南 名词解释: 1. TortoiseGit 是 TortoiseSVN的Git版,它很好的实现了与windows资源管理器的融合,使用界面与Tor ...

  7. raptor累乘流程图_Markdown快速上手指南

    Markdown快速上手指南 1.Markdown介绍 markdown可以实现快速html文档编辑,格式优没,并且不需要使用html元素. markdown采用普通文本的形式,例如读书笔记等易于使用 ...

  8. 最新课程 | openGauss 快速上手指南课程即将开课

    点击蓝字|关注我们 2020 年 7 月 1 日,openGauss 数据库源代码正式开放,并成立了 openGauss 开源社区.恩墨学院与 openGauss 开源社区达成合作,为了推动社区技术生 ...

  9. NexentaStor iSCSI/ NAS 存储服务器软件图解教程(3)——NMV快速上手指南Part2

    NexentaStoriSCSI/NAS 存储服务器软件图解教程(3) Nexenta Management View (NMV)/*NexentaStor Web 管理界面*/快速上手指南Part ...

最新文章

  1. 想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ #精选JAVASCRIPT前端开发...
  2. javascript的函数定义的区别
  3. OpenCASCADE:使用扩展数据交换 XDE之颜色和图层
  4. 工作407-启动vue项目出现Module build failed (from ./node_modules/sass-loader/dist/cjs.js): ValidationError: I
  5. innodb是如何存数据的?yyds
  6. Win8 Metro(C#)数字图像处理--2.50图像运动模糊
  7. vuex commit 模块_一分钟上手Vuex
  8. pytorch 数据类型
  9. sed手册-3 例子
  10. 23.PHP的哈希表实现
  11. windows | RDPWrap 远程桌面登录增强工具,长期提供多版本 rdpwrap.ini配置文件 [可灵活设置多人同时登录、一键改变配置]
  12. 编写一个JSP页面,将用户名和密码存放到会话中(假设用户名为“孤独求败”,密码为“123456”),再重新定向到另一个JSP页面,将会话中存放的用户名和密码显示出来。
  13. 山东大学计算机学院第二校园,山东大学本科生第二校园学习经历管理办法
  14. BIOS的设置.注册表的修改与电脑故障的排除
  15. Serverless 极致弹性解构在线游戏行业痛点
  16. CentOS7安装RabbitMQ(解决guest用户无法登录问题)
  17. Acrobat如何将word文件转换成pdf格式
  18. 台式计算机没办法连接wifi吗,台式机连接wifi不能用怎么办
  19. 对ROS局部运动规划器Teb的理解
  20. 被iPhone 11带火的UWB产业链有哪些?

热门文章

  1. FTP协议 服务器端口,FTP协议介绍
  2. Mac中编译、安装VTK
  3. android九宫格点击打开功能,Android Studio 实现九宫格功能
  4. Spyder编辑器配色方案
  5. 从0到1—JAVA大数据架构师之路
  6. MVC中View与后台多次交互操作
  7. Java实现五子棋对战小游戏【完整版】
  8. 命令行注册或反注册DLL
  9. 武汉的堵,是你不懂的殇
  10. msbuild 语法_MSBuild 命令参数