2025-04-16WSL连接物理USB设备

前言

因一些其他不原因,不能在windows物理机上进行嵌入式开发,只能在WSL环境下进行编程开发。但是又遇到了需要本地物理机(windows系统)共享USB外接设备(嵌入式开发板)给WSL内程序使用。网上找了很多方法(博主当时应该是有用的)可能有由于时间或者版本原因,在我这都不太适用。
注意:我这篇日志时间是2025-04-16。主要查看你的版本是否和我的匹配。

先上链接:

WSL连接 USB 设备(Windows官网): https://learn.microsoft.com/zh-cn/windows/wsl/connect-usb
WSL(Ubuntu)连接 Windows 的 USB 设备(完结)https://www.cnblogs.com/likkoliu/p/18157046


电脑信息

物理机系统

Windows 版本 
版本      Windows 10 专业版
版本号    22H2
PowerShell版本 # $psversiontable 或者 $host 可查询
PSVersion    5.1.19041.4046

WSL系统信息

WSL内核版本:# $uname -a 可查询
Linux RDRJ-yangzhiheng 5.15.167.4-microsoft-standard-WSL2 #1 SMP Tue Nov 5 00:21:55 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
WSL系统版本:  # $lsb_release -a 可查询
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.6 LTS
Release:        20.04
Codename:       focal

操作步骤

1、安装USBIPD-WIN项目

管理员权限打开PowerShell,输入一下命令安装即可。

winget install --interactive --exact dorssel.usbipd-win

如果省略了 --interactive,winget 可能会立即重启计算机(如果这是安装驱动程序所必需的操作)。

2、查看USB设备

PowerShell里输入以下指令,可以查看到物理机上连接到的USB设备信息。重点记一下USBID这个编号。

usbipdlist

3、修改设备属性

使用以下指令设置USB设备属性为共享。

usbipd bind --busid <BUSID> #前面查询到的待共享设备<BUSID>

usbipd list #查看验证设备共享属性<STATE>

4、挂载USB设备

执行以下指令,将USB设备挂载到WSL中。注意,USB 设备挂在到 WSL后,Windows 将无法访问)。

usbipd attach --wsl -b <BUSID> #前面查询到的待共享设备<BUSID>

5、WSL中配置使用设备

在WSL输入以下指令可检索到挂载的USB设备。

lsusb

注意:在WSL使用USB设备期间,之前打开的PowerShell命令窗口不能关闭,否则会导致WSL中USB设备连接失败。需重新以 管理员权限打开PowerShell执行第4步。

6、断开USB设备

在 WSL 中完成设备使用后,可物理断开 USB 设备,或者从 PowerShell运行此命令:

usbipd detach --busid <busid> #前面查询到的共享设备<BUSID>

总结

以上是我的配置过程希望对你有用。
码字不易,转正请注明出处。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容