PeakCAN连接到WSL2 Debian

操作步骤

按照以下步骤进行操作:

  1. 在Windows下安装PeakCAN驱动并安装,地址是https://www.peak-system.com/PCAN-USB.199.0.html?&L=1

  2. 在Windows下安装usbipd,地址是https://github.com/dorssel/usbipd-win/releases,最新版是4.0.0,点击usbipd-win_4.0.0.msi进行下载,然后点击安装

  3. 在WSL2 Debian下安装usbutils,命令是sudo apt install usbutils

  4. 在WSL2 Debian下安装PeakCAN驱动,如果系统已经有驱动就不需要安装了,地址是https://www.peak-system.com/fileadmin/media/linux/index.htm,

    下载完后拷贝到Debian下解压,然后cd进入,最后执行下面命令来编译安装,

    bash 复制代码
    make -j6
    sudo make install

    install时可能会出现"Failed to send reload request: No such file or directory"错误,此时执行sudo service udev restart命令,然后再执行sudo make install

  5. 把PeakCAN接入电脑的USB口

  6. 在Windows下使用管理员权限 打开cmd或者powershell,然后执行usbipd list,查看USB设备列表

    可以看到PeakCAN的BUS ID是8-2,状态是Not shared。注意:如果是不同的电脑,这个BUS ID是会变的

    然后执行命令usbipd bind -b 8-2,执行完再使用usbipd list看下状态,

    可以看到已经变成shared了,最后执行命令usbipd attach --wsl --busid 8-2,这样就可以把PeakCAN转移到WSL2 Debian里了,此时状态变成Attached,

    转移之后PeakCAN就无法在Windows下使用了

  7. 在WSL2 Debian下执行lsusb

    可以看到PeakCAN已经转移到Debian里了

如果想从Debian里解除绑定,只要执行下面的命令就可以了

bash 复制代码
usbipd detach  --busid 8-2
usbipd unbind  --busid 8-2

小坑

还有需要注意的一点是WSL2 Debian需要更新到最新,可以执行下面的命令进行更新,

bash 复制代码
wsl --shutdown
wsl --update

这里比较坑的地方是:更新完之后,之前的SocketCAN驱动又没了,又得重新去编译内核,可以参考上一篇文章

相关推荐
何中应几秒前
CentOS7安装Git
运维·git·centos·开发工具
hweiyu0039 分钟前
Linux 命令:setfacl
linux·运维·服务器
运维行者_1 小时前
深入解析 Docker 监控:核心指标完整清单
运维·服务器·网络·数据库·docker·容器·eureka
礼拜天没时间.1 小时前
容器网络配置——从互联到自定义桥接
运维·网络·docker·容器·centos
珠穆峰1 小时前
linux find 命令使用
linux·运维·服务器
没有bug.的程序员2 小时前
服务网格(Istio)与传统微服务深度对垒:流量治理内核、代码侵入性博弈与运维收益实战指南
java·运维·微服务·istio·流量治理内核·代码侵入性
是Dream呀2 小时前
自动化打造信息影响力:用 Web Unlocker 和 n8n 打造你的自动化资讯系统
运维·前端·爬虫·自动化
蜜汁小强2 小时前
为 Github 创建本地 .ssh 关联 (RSA 以支持老系统)
运维·ssh·github
中草药z2 小时前
【Linux】拆解 Linux 容器化核心:Namespace 隔离 + cgroups 资源控制,附 LXC 容器生命周期实战
运维·docker·容器·虚拟化·namespace·lxc·cgroups