引
最近拿到了一台 Jetson AGX Orin ,想在上面接一个蓝牙串口,USB-A 口,CH340 转串口的那种。接上后发现 /dev
下没有任何新增设备,然而 lsusb
下却能看到接入的设备。查看了一下 /lib/modules/5.15.148-tegra/kernel/drivers/usb/serial
目录,发现没有 ch341.ko
文件,也就是说,Jetson 镜像的内核中根本没有 CH340 的驱动,需要我们额外安装驱动。
驱动安装
CH340 驱动本身即很简单,安装起来十分简单:
sudo apt update
sudo apt install -y git make gcc
git clone https://github.com/WCHSoftGroup/ch341ser_linux
cd ch341ser_linux/driver
make
sudo make install # 直接将驱动安装到内核驱动启动文件夹中
brltty 的小问题
随后重启系统。再次查看 /dev
目录,发现依旧没有新增设备。
上网查询后发现是 brltty
的问题。brltty
是一个为盲人和视力障碍者提供的终端设备驱动程序,它会在系统启动时自动加载并占用串口设备,导致我们无法正常使用部分串口设备。我们可以通过以下命令禁用它:
sudo systemctl stop brltty.service # 停止服务
sudo systemctl disable brltty.service # 禁用服务
或者如果您用不到这类辅助设备的话,可以选择直接卸载它:
sudo apt purge brltty
再次查看 /dev
目录,发现多出来了一个名为 /dev/ttyCH341USB0
的设备,说明驱动已经可以正常使用。
结语
Jetson AGX Orin 的内核版本还是太老了一点,驱动支持也不全。希望未来的 Jetson 镜像能更新到更高的内核版本,驱动兼容性也能做的好一点。