- 问题来源
- 问题分析过程
- 问题解决
- macOS驱动
简单记录一下解决过程,便于以后分析。
由于工作原因,在Macbook pro m1上,用UTM虚拟机安装了arm版本的ubuntu 20.04.3 server。
接上芯驰的板子,看串口log,发现/dev下没有ttyUSB设备,无法输出log。
- 查看USB设备, 因为是用USB接到Macbook pro上,在终端用lsusb命令查看,发现增加0e8d:201c USB设备。
Bus 003 Device 002: ID 0e8d:201c MediaTek Inc. ydb
按照adb方式,在/etc/udev/rules.d/51-android.rules下增加
SUBSYSTEMS==“usb”, ATTRS{idVendor}== “0e8d”, ATTRS{idProduct}==“201c”,MODE:=“0666”
结果不行。
-
看USB转串口芯片, 因为在别人的windows上是可以正常出log的,所以看看usb转串口的芯片是什么,看到是Prolific 的pid是2303,vid是067b,就是pl2303芯片。
-
搜arm版本linux PL2303驱动
首先看官网,没有linux驱动,有andoid解决方案。
百度一下,在csdn上看到还有arm64的PL2303驱动,下载,结果提示无效的模块格式。 -
在ubuntu本身搜索驱动,灵机一动(看到网上有人说),ubuntu本身会自带pl2303驱动,然后用find命令搜索,搜到pl2303.ko
./usr/lib/modules/5.4.0-90-generic/kernel/drivers/usb/serial/pl2303.ko
- 安装驱动
a. 用insmod命令安装,提示下面错误
insmod: ERROR: could not insert module pl2303.ko: Operation not permitted
sudo insmod, 提示
nsmod: ERROR: could not insert module pl2303.ko: Unknown symbol in module
b. 想到modprobe还可以安装,提示
问题解决lib/modules/5.4.0-90-generic no module
insmod可以在任何位置安装,
但modprobe需要
- 把ko copy到/lib/modules/'uname -r’位置下
- 然后执行depmod命令,
- 最后执行modprobe pl2303(注意:这里不用输入.ko后缀)
MacOS的PL2303,官网有驱动,可以直接下载安装即可使用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)