前两天用gnuradio做实验的时候发现报错说固件版本低,并提示使用LimeUtil --update升级,但是升级的过程中失败,至此板子已经无法被计算机识别。或使用lime suite有下列问题:
修复方法
首先确定LimeSDR硬件版本,这个一般刻印在主板的边缘,如下图箭头指向的地方:
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跳线,如下图箭头指向的位置:
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
在出现的界面中参考如下操作:
选完文件后,出现如下图的界面,点击“Start Download”刷新镜像
刷新完成后,设备自动重启,会从设备列表中丢失,关闭窗口即可。
执行如下命令,可以看到设备已经成功的切换到正常模式了,如下:
$ sudo ./LimeUtil --find
- [LimeSDR-USB, media=USB 3.0, module=FX3, addr=1d50:6108, serial=0009060B00460B22]
完成后,需要执行
$ sudo LimeUtil --update
升级一下FPGA的固件。