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驱动又没了,又得重新去编译内核,可以参考上一篇文章。

相关推荐
欢乐的小猪22 分钟前
Linux命令 chmod
linux·运维·服务器
guo_wen_qiang39 分钟前
云服务器安装MongoDB-资源包安装
运维·服务器·mongodb
Happy_Sharing40 分钟前
Windows虚拟机安装ubuntu后,如何在虚拟机Ubuntu系统中访问Windows文件夹
linux·运维·ubuntu
9144062321 小时前
安装jenkins遇到的问题总结
运维·jenkins
广州智造1 小时前
Radioss 材料本构的二次开发
运维·数据库·自动化·建模·后处理·前处理
码上有光1 小时前
Linux:信号的认识、信号的产生、信号的保存、信号的处理
android·linux·运维·信号
定栓1 小时前
Webpack迁到Vite第一节:模块系统迁移:require → import
运维·前端·webpack
小白的码BUG之路1 小时前
Jenkins -- 配置ssh
运维·ssh·jenkins
元岳数字人小元1 小时前
数字人私有化,如何搭建全链路内网推理体系
运维·人工智能·开源·人机交互·交互
Allen-Steven1 小时前
SQL查询专项:从完整书写到综合判断
运维·服务器·数据库