The value of knowledge lies not in possession, but in share.

0%

Jetson开发板刷机及部署教程

NVIDIA® Jetson™ 系统所提供的性能和能效可提高自主机器软件的运行速度,而且功耗更低。每个系统都是一个完备的模块化系统 (SOM),具备 CPU、GPU、PMIC、DRAM 和闪存,可节省开发时间和资金。Jetson 还具备可扩展性。只需选择适合应用场合的 SOM,即能够以此为基础构建自定义系统,满足特定的应用需求。

前期准备 JetPack刷机需要以下设备:

  • Ubuntu主机:因为刷机是通过Ubuntu主机安装 JetPack 来给Jetson开发板安装开发套餐,所以需要一台装有Ubuntu的主机。
  • 网线:用于给Jetson开发板联网。
  • 键盘,键鼠:用于操控Jetson开发板。
  • 显示器:

建议参考官方刷机教程:Download and Install JetPack L4T

下载 JetPack

NVIDIA 官网 下载最新的JetPack文件,文件名大致为 JetPack-${VERSION}.run ,其中${VERSION}为版本号。

安装 JetPack

  1. JetPack-${VERSION}.run 增加执行权限

    1
    chmod +x JetPack-${VERSION}.run
  2. 执行 JetPack-${VERSION}.run.run ,点击 Next

    1
    sudo ./JetPack-${VERSION}.run

  1. 此处选择 Jetson TX1,同样也支持 TK 1的部署

  1. 弹出 JetPack L4T Component Manager 对话框

    推荐进行标准Standard安装的开发包,

  1. Ubuntu主机与Jetson开发板从机建立连接

    之后输入用户名和密码,默认都是Ubuntu。IP的话如果不填,之后程序会自动计算出,请确保此时你有一根网线和你的宿主机相连,或者他们两者连接在同一个路由器上。

  2. 网络配置和端口选择

    安装完成后进入网络配置选项,可以选择通过路由器连接互联网,同时将Jetson开发板连接到与主机同一个路由器上。


如果通过路由器连接,选择eth0端口,点击Next


如果通过WIFI连接,分别选择eth0eth2端口,点击Next

  1. 将Jetson开发板设置为 Force USB Recovery Mode (强制USB恢复模式)

弹出如图所示终端窗口:

按照提示,将Jetson开发板设置为强制USB恢复模式

  • 关闭设备,移除电源适配器
  • 用自带的Micro USB 转 USB 数据线连接主机与Jetson开发板
  • 连接电源适配器
  • 按下POWER按钮
  • 按住FORCE RECOVERY 按钮不放开,同时按一下RESET按钮,等待两秒钟,松开FORCE RECOVERY 按钮

完成上述步骤后,可以在主机上通过 lsusb命令查看是否含有Nvidia Corp设备,确认存在后敲击Enter,开始将操作系统以及开发包拷贝到Jetson开发板,中途连接Jetson开发板的显示器会显示Ubuntu桌面系统

待安装部署完成后,在主机上退出 JetPack即可,以上就完成了 JetPack的配置

运行示例

我们可以在Jetson开发板上运行几个示例,验证下 CUDA是否安装成功

1
/home/ubuntu/NVIDIA_CUDA-<version>_Samples/bin/armv7l/linux/release/gnueabihf/

运行标检测Demo

重启Jetson开发板,键盘、鼠标、显示器。

一般刷机之后,自带CUDA9.0和OPENCV3.3.1,并且已经装过CUDNN

1
2
3
4
# 进入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

后续则可以安装Python、TensorFlow及PyTorch等网络框架。

注:在JetPack开发板上,无论是执行编译还是执行代码,都必须加上sudo,否则会出现编译失败或者cuda error的情况。

🍭支持一根棒棒糖吧!