02-NVIDIA Jetson TX2 通过JetPack 3.1刷机完整版(踩坑版)

0.694字数 1753阅读 41056

未经允许,不得擅自改动和转载
文 | 阿小庆 2018-1-20

本文继第一篇文章:01-NVIDIA Jetson TX2开箱显示界面

TX2 出厂时,已经自带了 Ubuntu 16.04 系统,可以直接启动。但一般我们会选择刷机,目的是更新到最新的 JetPack L4T,并自动安装最新的驱动、CUDA Toolkit、cuDNN、TensorRT。

刷机注意以下几点:

  • 开发板刷机过程全程联网
  • 除了Jetson TX2之外,您还需要另一台带有Intel或AMD x86处理器的台式机或笔记本电脑。(所以自己要是win电脑,要安装VMware 虚拟机,并在虚拟机上安装Ubuntu 的操作系统,我安装的是Ubuntu -16.04.3 64 位)
  • 这些类型的机器通常被称为PC的个人电脑。该计算机被称为烧录过程的主机。
  • JetPack是一个x86二进制文件,不能在基于ARM的机器上运行

先推荐一个国外刷机技术视频:https://v.qq.com/x/page/b0515967lbr.html
这个视频挺好,虽然是JetPack 3.0刷机,但步骤一模一样。跟着他的步骤刷机就可以,不过有些地方可能不够详细,可以自己先看一遍,有个大致印象。

1. 从官网下载JetPack3.1

下载地址为jetpack, 理论上此处下载需要NVIDIA的帐号。
为了下载方便,我给出JetPack3.0,JetPack3.1百度云链接:
链接:https://pan.baidu.com/s/1kW5DgEF 密码:eu4q

安装JetPack3.1

  • 现在把刚下载的软件包上传的虚拟机中Ubuntu主机中,可以通过共享文件夹的形式,将JetPack3.1从win电脑copy到vmware虚拟机中的ununtu,这个方法大家可以网上搜下,这里不做赘述。

  • 然后在虚拟机上,终端定位到Jetpack3.1所在文件夹
    更改执行权限:
    $ chmod +x ./JetPack-L4T-3.1-linux-x64.run
    执行安装
    $ sudo ./JetPack-L4T-3.1-linux-x64.run

然后进入了软件界面,


image.png

  • 选择板子

image.png
  • 随后进入了component manager界面,如图所示:
  • 此过程容易失败,多尝试几次


  • 成功后,就要下载各种包了


点击,进入下一步
检查下是否选择上了CUDA Toolkit和OpenCV for Tegra,这两个包一定要装
下载过程可能持续1-2个小时,视网速而定。

  • 漫长的等待


    漫长的等待

    下载过程会持续1-2个小时,如果期间出现错误,就返回上一步操作,然后再下一步,他会接着之前下载的继续下载。
    放在实验室一晚上后......


如果遇到上面错误:'ctrl+ Alt + T'另打开一个命令窗口,运行下面语句,就可以了。

sudo apt-get install libopencv4tegra libopencv4tegra-dev
  • 接下来,Next下一步


  • 这一步,选择第一种连接方式(首先有两个网线,分别插到自己电脑上和Jetson TX2上,然后都连接到路由器上),如下图
连接方式

开发板刷机过程中需要全程联网,那么官方推荐的做法就是把电脑与开发板用网线连在同一个路由器下。那么在弹出的network layout配置中选择路由连接;在network interface中选择以太网端口,不认识的话就用默认选项。
我在同个人电脑和Jetson TX2都连接在同一个wifi下试过,没有成功。

  • 点击Next


弹出一个窗口


image.png

3. 开发板连接到电脑,开始刷机

  1. 断开电源,保证开发板处于断电关机状态
  2. 用网线连到路由器上,也可插上鼠标键盘
  3. 用Micro USB线把开发板连到电脑上(类似于安卓手机连电脑)
  4. 接通AC电源,按下power键,开机
  5. 刚一开机,就长按Recovery键不松开,然后点按一下Reset键(Down and Up),过2s以后才松开Recovery键,此时开发板处于强制恢复模式


    相应按钮

完成以上步骤后,我们还要检查开发板有没有和电脑正确连接,按ctrl + Alt + T 另打开一个终端输入lsusb 命令,可以看到一些列表,只要发现其中有Nvidia Corp就说明连接正确。

  • 以上步骤确认无误后,在刚才post installation界面中敲一下enter,就开始了刷机过程,持续大概半个小时,你可以喝杯咖啡。
    显示下面界面就代表完成安装了。
    安装完成标志

    下面是安装确认界面,确认无误后,点击“Next”即可
    Post Installation完成之后,显示删除下载文件,可以先不勾选删除下载文件。

好了,到这就算刷机完成了。

运行视频目标检测 Demo

刷机成功后,重启 TX2,连接键盘鼠标显示器,就可以跑 Demo 了。

  • 进入tegra_multimedia_api/samples/backend中
    cd home/nvidia/tegra_multimedia_api/samples/backend
  • 执行下面命令
    nvidia@tegra-ubuntu:~/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
    就可以看到下面例子了!

自此就完成了,踩得坑真是都快残了,醉了!好了,现在就好好和Jetson TX2玩耍吧!!!


可能遇到的问题:

  1. Error: JetPack must be run on x86_64 HOST platform. Detected i686 platform
    Error: JetPack must be run on x86_64 HOST platform. Detected i686 platform.

上述问题是因为虚拟机安装的ubuntu14.04不是64位支持的,卸载了ubuntu14.04,我又装了ubuntu16.04,可以了!
下面是我用的 ubuntu-16.04下载链接
ubuntu-16.04下载链接


  1. 在下面代码地方卡住一直不动
1
Finished Flashing OS
Determining the IP address of target ...

主要原因是虚拟机的网络适配器模式选择了NAT模式共享主机IP地址,一定要改为桥接模式,复制物理网络连接模式,如下图:
点击虚拟机-->设置,将网络适配器中的网络连接改为桥接模式,并勾选复制物理网络连接状态

如果修改之后桥接模式不能联网,那就试试下面方法
VM虚拟机桥接模式无法联网解决办法
再重新执行一遍就好了!


写于2018/06

Install TensorFlow on the NVIDIA Jetson TX2 Development Kit

专门讲解如何为NVIDIA Jetson TX2安装Tensorflow,看下面链接
链接: jetsonhacks/installTensorFlowTX2


Jetson TX2交流群:783137763


可参考文章:

Jetsontx2刷机过程中的坑 - night李的博客 - CSDN博客
Jetson TX2 初体验-博客-云栖社区-阿里云
Jetson TX2 之 JetPack 3.0 安装小记
Jetson tx2刷机过程中的坑
新手上手NVIDIA Jetson TX2--Jetpack 3.0 安装过程
TX2(1)--JETSON TX2 刷机并安装JETPACK3.0


好看的人儿,点个喜欢❤ 你会更好看哦~~

推荐阅读更多精彩内容