Coral Dev Board Micro刷入示例失败:无法找到SDP模式设备
解决Coral Dev Board Micro在WSL2中刷写时找不到SDP模式设备的问题
问题场景
在Windows 11的WSL2 Ubuntu环境下,通过usbipd共享Coral Dev Board Micro设备,执行刷写人脸检测示例命令python3 scripts/flashtool.py -e detect_faces时,报错:
Encountered an error during flashing: Unable to find device in SDP mode.
已通过lsusb确认设备能被识别(ID 18d1:9308),但刷写脚本无法切换到SDP模式完成操作。
解决方案
1. 手动进入SDP模式并重新连接设备
- 断开开发板的USB连接,按住开发板上的BOOT按钮,再插上USB线,保持按住3秒后松开,此时设备进入SDP模式(
lsusb会显示设备ID为18d1:0003) - 在Windows PowerShell中重新将SDP模式的设备附加到WSL2:
# 查看可用USB设备的busid usbipd wsl list # 替换<busid>为对应设备的总线ID usbipd wsl attach --busid <busid> - 回到Ubuntu终端,执行
lsusb确认18d1:0003设备存在,再重新运行刷写命令
2. 修复usbipd与WSL2的USB兼容性
- 更新Windows端的usbipd到最新版本:
winget install usbipd - 在WSL2 Ubuntu中安装usbip工具链:
sudo apt update && sudo apt install -y linux-tools-generic hwdata sudo update-alternatives --install /usr/local/bin/usbip usbip /usr/lib/linux-tools/*-generic/usbip 20 - 刷写前关闭Windows端可能占用USB设备的程序(如设备管理器窗口、其他USB调试工具)
3. 延长刷写脚本的设备检测超时时间
- 打开
scripts/flashtool.py文件,搜索与STATE_CHECK_FOR_SDP相关的超时逻辑(通常是sleep()或超时等待代码块) - 将默认等待时长(如3秒)修改为10秒左右,适配WSL2的USB传输延迟,再重新执行刷写命令
内容的提问来源于stack exchange,提问作者JBAnovling
相关产品推荐
相关产品推荐

