ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4

前两天用gnuradio做实验的时候发现报错说固件版本低,并提示使用LimeUtil --update升级,但是升级的过程中失败,至此板子已经无法被计算机识别。或使用lime suite有下列问题:
ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4_第1张图片
修复方法
首先确定LimeSDR硬件版本,这个一般刻印在主板的边缘,如下图箭头指向的地方:
ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4_第2张图片

v1.4版本的LimeSDR

这一步骤的目的是确认稍后我们需要更新到主板上的镜像,我们的是1.4版本,因此到http://downloads.myriadrf.org/project/limesuite上找到最新日期的目录,然后在这个目录下找到对应版本的镜像,比如我就需要http://downloads.myriadrf.org/project/limesuite/18.02/LimeSDR-USB_HW_1.4_r4.0.img这个镜像(当前日期最新)。

接下来找到J17跳线,如下图箭头指向的位置:
ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4_第3张图片

v1.4版本的LimeSDRJ17跳线位置

放大图像,可以看到J17跳线的位置,默认情况下跳线是联通的。这个跳线旁边印着“FX3 BOOT”字样。这个跳线在断开的时候,重新加电的时候,芯片会恢复到刷机模式,这个模式下,我们可以使用Cypress提供的固件更新工具刷新固件(LimeSDR使用的USB 3.0芯片是Cypress提供的)。

因此我们需要先断开USB设备的供电,然后拔除J17跳线,然后连接USB设备,等待差不多5S左右,插上J17跳线。(J17跳线可以在刷机完成后再插上的,但是由于刷机完成后,芯片会自动重置,因此建议在芯片启动到刷机模式之后,就把J17跳线插上,可以减少一次重启。)

注意:这个软件是从Cypress官网下载的,是整合在EZ-USB FX3 SDK v1.3.3 for Linux这个SDK里面的,整个包非常大,我们只需要里面的其中一个工具包,可点击此处下载已经提取的工具包(https://www.mobibrw.com/wp-content/uploads/2018/02/cyusb_linux_1.0.4.tar.gz),下载完成后,解压缩到目录,然后执行如下命令安装工具包:

$ cd ~

$ wget https://www.mobibrw.com/wp-content/uploads/2018/02/cyusb_linux_1.0.4.tar.gz

$ tar -zxvf cyusb_linux_1.0.4.tar.gz

$ cd cyusb_linux_1.0.4

$ sudo apt-get install libqt4-dev

$ sudo ./install.sh

#执行命令
$ cd bin && ./cyusb_linux

如果这步执行出错,先执行一下idconfig,参考https://blog.csdn.net/weixin_43478836/article/details/88018780

在出现的界面中参考如下操作:

ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4_第4张图片
选完文件后,出现如下图的界面,点击“Start Download”刷新镜像

ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4_第5张图片

刷新完成后,设备自动重启,会从设备列表中丢失,关闭窗口即可。

执行如下命令,可以看到设备已经成功的切换到正常模式了,如下:

$ sudo ./LimeUtil --find

  • [LimeSDR-USB, media=USB 3.0, module=FX3, addr=1d50:6108, serial=0009060B00460B22]

完成后,需要执行

$ sudo LimeUtil --update

升级一下FPGA的固件。

你可能感兴趣的:(ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4)