Pluto固件更新误拔出的修复方法

编程入门 行业动态 更新时间:2024-10-26 13:26:56

Pluto固件更新误拔出的修复方法

避免固件损坏

这里不要勾选,你要是碰巧勾选了,碰巧将固件更新了,碰巧在固件更新时把Pluto拔了下来,不用怕,问题不大。

厂家可能料到了这种情况,所以留有了 DFU 模式

DFU 模式

USB 设备固件升级 (DFU) 是 USB 实施者论坛的官方 USB 设备类规范。 它指定了一种独立于供应商和设备的更新 USB 设备固件的方式。 这个概念是只将一个独立于供应商的更新工具作为操作系统的一部分,然后可以(给定特定的固件映像)下载到设备中。 在固件升级操作期间(当 Pluto 或 M2k 处于“DFU”模式时),设备更改其操作模式(它不再是 SDR 或仪器,不再使用其标准的 PID/VID,而是成为闪存编程器) .

进入 __DFU 模式__有三种方法,但对于我们只有一种方法:将电源断开,用牙签、回形针或类似的东西按下设备按钮,然后插入USB电缆施加电源。

将Pluto插入电脑后(要用中间的口连),在电脑的设备管理器中会出现PlutoSDR DFU,如下图所示,可能有的电脑不会识别,需要换一台电脑进行操作。
如果没有安装驱动的话,需要先安装驱动。

使用 DFU 模式更新固件

  1. 下载并保存 UPDATE.BAT

这里因为官网这个网站不好进,我把它下载了下来放在文章最后

  1. 下载好的这个文件是一个文本文件,复制在文本文档中,将其另存为.BAT格式,放在自己能找得到的地方。

注意要在保存类型中选择所有类型才能保存为.BAT格式。

  1. 下载PlutoSDR Release
    PlutoSDR Release(这里是链接)
    下载好得到的是一个这样的文件,把它解压到一个能找得到的位置。

  2. 使用命令行窗口进行更新(重点)
    打开命令提示符,找到UPDATE.BAT文件:

  • 先到该盘,我这里是输入i:
  • 再指定文件夹,就是之前UPDATE.MAT保存的文件夹,我这里是
    cd plutosdr-fw-v0.34
    语法是cd 文件夹\文件夹\……
  • 然后输入语句UPDATE.BAT i:\plutosdr-fw-v0.34\pluto.dfu
    i:\plutosdr-fw-v0.34\pluto.dfu需要更换为你所保存的pluto.dfu文件的位置,这个文件在之前下载好的plutosdr-fw-v0.34压缩包中
  • 最后——耐心等待,不要乱动
    命令行窗口会自动弹出以下内容,等到结束时会输出Done!
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge/p/dfu-util/tickets/

Opening DFU capable USB device...
ID 0456:b674
Run-time device DFU version 0110
Claiming USB DFU Interface...
Setting Alternate Setting #1 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0110
Device returned transfer size 4096
Copying data from PC to DFU device
Download        [=========================] 100%      8694467 bytes
Download done.
state(7) = dfuMANIFEST, status(0) = No error condition is present
state(2) = dfuIDLE, status(0) = No error condition is present
Done!

然后大功告成,重启计算机,重新插入Pluto,可以正常使用了

官方文档链接

官方文档

UPDATE.BAT代码

@echo OFF

IF %1.==. GOTO help

set FILE=%1
set pInstallDir=NULL

set KEY_NAME=HKEY_LOCAL_MACHINE\SOFTWARE\Analog Devices\PlutoSDR-M2k-USB-Win-Drivers\Settings
FOR /F "tokens=2*" %%A IN ('REG.exe query "%KEY_NAME%" /v "InstallPath"') DO (set pInstallDir=%%B)

IF "%pInstallDir%"=="NULL" (
    echo PlutoSDR-M2k-USB-Win-Drivers not installed && exit /b 1
)

REM "%pInstallDir%\dfu-util.exe" -l || exit /b 1

for /F %%i in ("%FILE%") do @set NAME=%%~nxi

if %NAME%==pluto.dfu goto firmware
if %NAME%==m2k.dfu goto firmware_m2k
if %NAME%==uboot-env.dfu goto ubootenv
goto help

:firmware
"%pInstallDir%\dfu-util.exe" -d 0456:b673,0456:b674 -D %FILE% -a firmware.dfu
exit /b 0

:firmware_m2k
"%pInstallDir%\dfu-util.exe" -d 0456:b672,0456:b675 -D %FILE% -a firmware.dfu
exit /b 0

:ubootenv
"%pInstallDir%\dfu-util.exe" -d 0456:b673,0456:b674 -D %FILE% -a uboot-env.dfu || "%pInstallDir%\dfu-util.exe" -d 0456:b672,0456:b675 -D %FILE% -a uboot-env.dfu
exit /b 0

:help
echo PlutoSDR/M2k DFU update utility
echo Usage: %0 PATH-TO\[pluto^|m2k].dfu
exit /b 0

2021.11.21

更多推荐

Pluto固件更新误拔出的修复方法

本文发布于:2023-06-14 06:54:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1448643.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:固件   方法   Pluto

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!