Ubuntu 主机(HOST)
首先,需要准备一台Ubuntu系统的PC机,该主机在刷机过程中叫HOST,因为需要先在PC上面下载并安装一些交叉编译所需要的安装包。我使用的是Ubuntu 16.04系统,配置如下:
接下来的一系列操作都是在PC机上面完成:
下载Jetpack 3.2 ,这是一个二进制文件,如下所示:
首先更改执行权限:
$ chmod +x ./JetPack-L4T-3.2-linux-x64_b196.run
在终端直接运行就可以打开安装界面
./JetPack-L4T-3.1-linux-x64.run
这里提一下,有的教程里面说需要加sudo,但是有时候会出现这个错误:
取消sudo 直接运行即可,进入软件界面如下所示:
执行NEXT,这里设置安装位置和下载位置,直接默认即可。\
执行NEXT,选择Jetson TX2
NEXT,选择需要安装的安装包,一般直接默认就是全部安装,这里我选择全部安装(HOST-Ubuntu会下载并覆盖host机器已安装的相关环境:cuda、cudnn、opencv,建议用新电脑做host)。
这里说一下,如果想只更新jetpack而不覆盖TX2本地文件的话,可以将这几项设置为no action.
选择接受所有协议
接下来就是漫长的下载阶段了,这期间可能会出现download(error),一般都是因为网络问题,多尝试几次重新下载,有些之前显示error的软件包后来又会重新开始下载(还好支持断线续传,否则就炸了,哈哈)。网上也有说凌晨下载网速比较快,可以试一试。
下载好之后就是安装了,这里遇到一个问题,就是安装OpenCV的时候遇到libopencv库下载失败
首先可以试一试将error中描述的代码拷贝到命令行执行,如果仍然出错的话,更换源即可解决。
安装完成之后,恭喜你,Pc端的下载安装工作就已经完成了。
NEXT,进入连接界面:
这里我选择了第一种,就是将PC和TX2使用网线连接到同一个已联网的路由器上面,使用wifi连同一个路由器是不行的。(这里注意一下,PC机要关闭翻墙软件,之前我忘记了这一步,结果在后面的安装过程中,出现了找不到ip地址错误)
这里选择网络接口,如果不确定的话,可以先选一个,如果后面ip找不到出错的话,再回来更换。
Jetson TX2
接下来我们就要进行TX2板子的操作了,要确保TX2在接下来都是处于联网状态,点击NEXT,
这里说明了如何把TX2转换为强制恢复模式:
- 关机TX2,并拔掉电源线,确保TX2已经处于关闭状态而不是睡眠状态。
- 使用TX2配的micro-USB连接线将TX2和PC机连接起来
- 将电源线接到TX2上,点按一下power开关(TX2上面四个按键的最右侧按键),接着按着recovery键不动(右数第二个,挨着power键),点按一下reset按键后松开(最左侧),三秒后松开recover键。
- 此时,TX2就已经处于强制恢复模式
在pc端输入lsusb命令,看看是否已经将TX2挂载到了pc机上面,挂载信息如下即代表正确:
ID 0955:7C18 NVidia Crop
确认无误之后,可以在之前的post installation 界面中按下enter,接下来无误的话,会开始进行重刷系统和更新jetpack安装包的过程,时间也比较漫长。
这里提一下可能出现的错误是PC机找不到TX2的IP地址,我出错的原因是忘记关闭翻墙软件。这时候一般系统更新已经完成,而安装jetpack软件包出现此错误,这是因为重刷系统是通过micro-USB连接线完成的。而安装jetpack是通过网络进行的。其他可能的错误原因是前面的网络接口选择不对,需要重现选择。
可能发生的问题:post installation界面卡在“determine IP address” 很久
这是由于host无法在同一网段找到tx2的ip地址,之前在host下载的包,需要用usb传输系统包(ubuntu系统等),用网线传输功能包,因此需用两种传输方式。
解决:关闭post installation界面,关闭安装软件界面,重新打开安装软件:./JetPack-L4T-3.1-linux-x64.run
这一次到下载包的界面时,对target下的flash OS image包选设置no active”,host全设置:no active
无需再进行断电和重置操作。next后会出现填写tx2的ip的界面:在tx2中用ipconfig命令找到和host在同一网段的ip地址,并填写。同时用户名和密码为tx2的登录名:nvidia
安装完成之后,关闭终端即可,安装基本就已经完成了
刷机成功之后,可以在tx2运行官方的演示例程,切换到演示例程的目录:
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
这段例程的启动需要等待很长时间才可看到结果,要耐心等待。
至此,Jetpack 3.2已经成功安装到了Jetson TX2上面,大家可以愉快地使用TX2啦!
reference:https://zhuanlan.zhihu.com/p/36031119