Tx2 通过内核编译来获取ttyUSB* 以及ttyACM*的设备名

 最近由于学校实验室准备参加ICRA的DJI AI Challenge ,所以我在使用TX2跑ROS。我用的是ubuntu 16.04, ros kinetic版本。然后遇到了一些问题。再插上通信串口之后usb并没有反应。

通过lsusb命令可以看到对应的usb设备。

但是在使用ls /dev时却无法找到对应的设备名。经过一番查找发现是tx2缺少这部分的驱动程序,需要我们自己编译内核安装。

下面附上我的步骤进行记录:

一、
如何区分自己的版本是L4T 27.1还是L4T 28.1?
使用uname -r提示的消息是“4.4.15-tegra”,则说明版本是L4T 27.1;
使用uname -r提示的消息是“4.4.38-tegra”,则说明版本是L4T 28.1;

Build Kernel and Modules – NVIDIA Jetson TX2–L4T 27.1

Build Kernel and Modules – NVIDIA Jetson TX2–L4T 28.1

本文剩余部分的内容是对视频教程内容的总结与说明,以NVIDIA Jetson TX2--L4T 28.1版本为例,它比NVIDIA Jetson TX2--L4T 28.1的配置多一步,待会会重点强调。

2. L4T 27.1配置启动ttyACM模块
下载脚本文件(27.1与28.1的区别在此步骤,多最后一行命令)

$ git clone https://github.com/jetsonhacks/buildJetsonTX2Kernel.git
$ cd buildJetsonTX2Kernel
# 如果你使用的`Tegra`版本是 `L4T 27.1`, 那么需要切换分分支:
$ git checkout vL4T27.1


一共有3个脚本文件。

1、获取内核源码
第一个脚本getKernelSources.sh从NVIDIA developer网站获取内核源码, 然后将源码解压到/usr/src/kernel目录中。

$ ./getKernelSources.sh


源码下载完毕后,脚本会打开一个xconfig配置界面。

此处需要说明的是,xconfig实际上在位于/usr/src/kernel/kernel -4.4文件夹下,如果第一次配置不成功,不需要重新运行./getKernelSources.sh。可以运行以下命令,打开xconfig配置界面。

cd /usr/src/kernel/kernel -4.4
make xconfig


设置Genral Setup->Local version - append to kernel release ,双击Local version - append to kernel release在文本框内输入-jetsonbot-v0.1,回车;如图所示:

在xconfig中按Ctrl+F,弹出一个搜索框。

输入ACM,点击search按钮,点击搜索结果中的CDC ACM(多点击几次,直到左边框中显示对钩),最后结果如图所示:


输入CH341,在显示的结果中,点击(多点击几次,直到框中显示为圆点),然后点退出关闭该子窗口。

点击File--->save,保存刚才的设置,最后点击Quit键退出xconfig。


编译内核

$ ./makeKernel.sh



第二个脚本makeKernel.sh, 会给一部分Makefile文件更新补丁以满足Jetson TX2平台的编译条件,之后就开始内核编译。 脚本中的make modules install命令会将模块安装到/lib/modules/目录中。

将之前的启动镜像更新为新的镜像

$ ./copyImage.sh



第三个脚本文件copyImage.sh会将新的编译镜像Image和zImage文件拷贝到/boot目录。
一般不会出错,若出现没有目标文件的错误时,请检查,新的镜像是否生成成功。

cd /usr/src/kernel/kernel-4.4/arch/arm64/boot/


看该文件夹下是否有Image与zImage文件。如果没有,重新运行第8步的./makeKernel.sh,再试。

重启 TX2

reboot



开机后,就可以检测到连接的hokuyo。

如果以上操作都成功,并且成功安装了ACM模块,请删除之前安装时用到的源文件。
cd /usr/src
sudo rm -rf kernel sources r27.1.0_sources.tbz2 kernel_src.tbz2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值