拿到Jeston TX2后参考了很多博客与教程,刷机过程中遇到了很多问题。为方便以后再次刷机,本篇详细总结TX2刷机过程,以及对刷机过程遇到的问题做一个概括总结。
装有Ubuntu16.04或者Ubuntu18.04的电脑,这里说的电脑可以是台式机也可以是笔记本与TX2区分开来。(电脑是16.04或者18.04无所谓,这并不会影响到TX所要刷出来的系统,决定TX2是16.04还是18.04的是JetPack的版本,JetPack4.x及其以上是Ubuntu18的系统,JetPack3.x为Ubuntu16系统)
坑1:电脑最好选用一个干净的系统,这里所谓的“干净”是指系统中之前最好没有安装过Nvidia其他的东西,由于博主之前用Tensorflow的时候装过Cuda之类的东西,在刷机的过程中遇到过一些莫名奇妙的问题,所以最好的解决办法就是装一个虚拟机,用完即删,使用虚拟机也会有很多问题,为不影响文章的结构具体的内容请看避坑章节。
下载JetPack3.x (JetPack3.x版本的安装步骤相差无几),提供两种下载方式:
有一个国外的的英文刷机视频,我感觉作用不大,大家可以选择性的观看。https://v.qq.com/x/page/b0515967lbr.html
我在刷机的时候,看很多博主都提到要修改软件源,原因是自带的软件源下载速度慢。反正修改软件源和不修改软件源我都试过,下载速度相差无几。修改软件源这件事情,安装其他的软件都会有提到,无非就是将国外的软件源替换成中科大或者清华的软件源。为方便大家,这儿还是将替换软件源的步骤写出来。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo gedit /etc/apt/sources.list
sudo apt-get update
把刚下载的JetPack软件包拷贝到虚拟机中,方法很多:比如U盘拷贝、右键下载,官网下载等等。
找到JetPack所在的位置打开终端(Ctrl + Alt + T)
chmod +x ./JetPack-L4T-3.3-linux-x64_b39.run
./JetPack-L4T-3.3-linux-x64_b39.run
步骤2到这一步这样就可以,后面的内容可以直接不看,只作为讨论,但是很多博主是这样写的:
sudo ./JetPack-L4T-3.3-linux-x64_b39.run
这个sudo权限真的没有必要,执行之后会报错如下图
然后还是得再执行
./JetPack-L4T-3.3-linux-x64_b39.run
这一步可能会提示提取失败,这可能是网速的原因,不要还怕多尝试几次就行了。提取失败如下图:
开始下载,时间视网速而定,我用了半个小时左右。在下载的过程中可能会提示error下载失败,不要慌点击next,会自动给你重新下载,直到所有的下载完成。
TX2提供两种刷机的方式,开发板刷机过程中需要全程联网,所以这个时候你家可千万别断网哦!第一种是有线刷机,第二种是无线刷机。很多博主都采用第一种刷机方式,并提示没有用第二种刷机成功过。所以我也是采用的第一种刷机方式。
此时,你需要具备两根网线,一个路由器。此时用网线分别将TX2和你的电脑接入到同一个路由器下。
坑2:一定要路由器,光锚虽然有Lan接口,但是不可以哦,你可以接入尝试一下,TX2是获取不到IP地址的。
打开TX2的终端,输入以下命令,获取到TX2的IP地址:
ifconfig
获取到TX2的地址后,在电脑上ping一下,看看是否能够ping通。
ping 192.168.1.101 //这儿的地址是你上一步ifconig得到的
概括来说:此时,将TX2断电,并将TX2开发板的 microUSB 和主机相连,然后再将TX2上电开机,紧接着按下TX2的RECOVERY按键不松手,接着按下RESET按键并松手2秒后再松开RECOVERY按键,此时开发板处于强制恢复模式。一定要按顺序来。实物具体图太简单,自己脑补。上面是TX2的接口图。
lsusb
如果可以看的一些列表,并发现其中有Nvidia Corp就证明链接成功可以进行操作。
在完成以上步骤并没有错误后,在第一个终端post installation界面中按下回车键,变开始刷机。我持续了两个小时左右,具体时间还是视网速而定,全程在下载一些东西。
当弹出这个界面后,就代表安装完成了。
刷机完成之后重启TX2,运行一个小demo进行检测。进入tegra_multimedia_api/samples/backend中
cd home/nvidia/tegra_multimedia_api/samples/backend
执行下面命令就可以看到下面例子了!
./backend 1 ../../data/Video/sample_outdoor_car_1080p_10fps.h264 H264 --trt-deployfile ../../data/Model/GoogleNet_one_class/GoogleNet_modified_oneClass_halfHD.prototxt --trt-modelfile ../../data/Model/GoogleNet_one_class/GoogleNet_modified_oneClass_halfHD.caffemodel --trt-forcefp32 0 --trt-proc-interval 1 -fps 10
此处不提倡手动输入,建议直接复制粘贴。
回车后不要急,会弹出这个界面,让子弹飞一会儿就好了。
几分钟之后显示屏便开始播放动画(此处放一个截图):
一定要用HDMI直连,而不要用VGA转HDMI,否则刷机过程中显示器黑屏,刷机完成也是黑屏,这样你就不知道是刷机失败还是显示屏的原因。
刷机过程中会遇到各种各样的坑,然后再去一个一个排掉。距离刷机成功已经有几天的时间了,经过这几天的时间可能忽略了一些小坑,这些一直困扰我的大坑却还记得清清楚楚。本文所有的步骤都经过亲自测试,如有问题欢迎大家在评论区批评指正。预祝大家刷机成功!