Jetson TX2收货将近一周了,期间趁摄像头还没到,预先给TX2配置了环境。由于学校要求写毕设日志,故干脆一起在知乎写了,顺带帮助想要给TX2配环境却苦于网络上关于TX2的教程很少的同学。

本期内容是关于TX2刷机Jetpack4.3 (Ubuntu18.04) 的过程以及细节,其它软件如ROS、OpenCV、ORB_SLAM2等配置会在本专栏的软件篇详细说明。
吐槽一下
给ARM架构的机器装系统本来就是一个坑,网上教程少之又少,Jetson TX2虽说出厂自带ubuntu16.04,但是里面的CUDA等软件版本还是比较早的,不如刷机最新版系统来的香。据Nvidia官网介绍,新版的Jetpack4.3的AI推算能力和表现相比之前有了25%的提升,所以还等什么,一起来搞机啊/手动狗头。但是问题来了,现在网上有关刷机最新版Jetpack就只有零零碎碎的几篇,不能覆盖刷机过程中的种种问题,所以我顺便把我躺的坑都分享一下,现在的我已经是一名合格的TX2刷机小能手了,熟练的令人心疼那种。
 
正篇
 
一、刷机环境
  • 主机/HOST
华硕FL5900U,VMware/虚拟机ubuntu18.04
  • 从机/SLAVE
Nvidia Jetson TX2,系统ubuntu16.04
  • 其它需要的物品
TX2自带的USB转接线(注意是数据线),无线键鼠(没有一套的可以买个USB HUB,TX2 USB口不够用)、网络(后部分刷机的时候需要用到ssh传输,主从机需要连接到同一局域网),主机能连网线就最好别用WIFI,不然你下刷机包的时候将要喝更多的咖啡。
 
二、前期准备
 
1.你需要准备一个虚拟机,推荐VMware。主机双系统最好,但是作者本人由于之前给硬盘分区导致ubuntu无法进Boot引导程序,尝试修复无果后决定用VMware虚拟机代替,这里需要注意的是VMware最好用较新的版本,旧版本的如我几年前装的VMware12对Ubuntu18.04兼容的不是很好,之后装的是VMware15。
2.你需要下载Ubuntu18.04镜像,建议使用迅雷下载(没收钱,确实下载快)。
其它如创建Ubuntu虚拟机,安装VMware Tool我就不详讲了,有一点要注意的是安装VMware Tool时如果看不到这个工具包,记得设置虚拟机CD/DVD为物理驱动(自动检测),记得虚拟机硬盘空间分配大于50G,内存给个3G即可。网络连接使用桥接模式。
3.你需要在虚拟机安装SDK manager。先去nvidia developer网站注册一个账号,不得不说,这国外的服务器慢的和乌龟一样,just be patient。然后下载JetPack4.3。
下载完后,进入你的下载目录,执行以下命令安装sdkmanager,输入sdkmanager后直接按tab键即可。
sudo apt install ./sdkmanager-[version].[build#].deb
安装过程中可能会提示缺少一些依赖,根据提示去装即可。
4.安装好Ubuntu和sdkmanager后,我们可以进入正题了。这里我们先不急把TX2开机。打开终端输入以下命令开启sdkmanager
sdkmanager
然后输入你在nvidia的账号密码登陆,这个过程就我的经验而言比较痛苦,你可能要等上2到3分钟才能进入刷机界面,如果提示密码错误或者其它错误,检查你的密码,也有可能是connection timeout,然后try it again,这都是小问题,因为后面你可能会有更多的try it again。
等你登陆成功后,就会进入刷机界面,极有可能因为网络原因导致以下界面或者软件白屏。多试几次即可。
 
 
STEP1,从机选择TX2,下一步
 
 
STEP2,勾选协议,建议先下载后安装,下一步开始下载
 
 
下载过程中极有可能timeout,多次尝试即可。下载完后,点击back to step1,取消勾选“Download now install later”,开始安装(多次尝试)。安装完主机之后会出现提示让你执行以下步骤给TX2 flash OS,建议手动模式。在TX2未开机的情况下,
 
  • 用自带的USB线连接主从机,然后按住电源键2到3秒使TX2开机,然后一直按着按钮S3,同时按一下按钮S1并松开,看到TX2上的灯闪了一下后,松开S3,这样就进入了刷机模式。如果你是用虚拟机安装的话,这个时候主机会提示将USB连接到WIN10还是虚拟机,选择连接虚拟机,如果没有出现,那么到WIN10服务里面找到“VMware USB Arbitration Service”打开,若无法启动就去控制面板修复VMware即可。
  • 点击flash开始刷机。需要注意的是,刷完OS后,还会安装CUDA,OpenCV等,但是在刷系统和安装其它软件之间,会跳出一个提示,让你ssh连接TX2。
  • 这个时候刚刷完机,TX2系统还没启动,所以要重新启动TX2,但是,先不要按RST键复位,一定得先在主机里点"Skip",然后点"Finish and Exit",要在主机这边先退出刷机模式后再重启从机,不然之后每次TX2开机界面都会出"Fair to start Configure USB flashing port for device mode"并且还可能停留在启动界面。然后拔掉USB线(刷完系统后已经没用了)。
  • 第一次启动TX2,需要配置一下Ubuntu。进入桌面后,保证TX2和主机连在同一个局域网下面,无论你是用网线还是WIFI。使用“ifconfig”查看当前IP。你可以试着Ping一下。
  • 接着回到主机这边填上IP,小写的账号以及密码开始安装其它软件,直到一切完成。
 
一切完成后,先换arm源,给TX2扩容了一个固态硬盘。安装ROS,源码安装OpenCV3.2和OpenCV-contrib-3.2(因为ORBSLAM2不支持较高版本的OpenCV,这个项目在Github好几年没更新了),安装ORB_SLAM2。
OpenCV的源码可能下载的很慢,建议去码云库下载
期间顺带美化Ubuntu系统桌面,安装中文输入法,配置一下VNC,装一下QQ。

硬件篇-02-TX2刷机Jetpack4.3的更多相关文章

  1. TX2(1)--Jetson TX2 刷机并安装JetPack3.0

    一般而言,刷机是在Ubuntu16.04的系统上进行,本人在ubuntu16.04系统上进行了初步的测试,暂时存在一些问题,因此建议首先配备一台Ubuntu14.04的host主机(不建议使用虚拟机) ...

  2. 【软件安装与环境配置】TX2刷机过程

    前言 使用TX2板子之前需要进行刷机,一般都是按照官网教程的步骤刷机,无奈买不起的宝宝只有TX2核心板,其他外设自己搭建,所以只能重新制作镜像,使用该镜像进行刷机. 系统需求 1.Host Platf ...

  3. TX2 刷机过程

    1.拿到板子,上电 (1)输入 ls (2)进入NVIDIA-INSTALLER/ (3)再sudo ./installer.sh 账户和密码都是:nvidia (4)sudo reboot 参考博客 ...

  4. OpenFlow硬件交换机制作及刷机教程

    1.目的 将普通路由器升级成为一台支持OpenFlow的交换机. 具体哪些路由器可以刷OpenFlow可以参考:OpenWRT:http://wiki.openwrt.org/toh/start#su ...

  5. NVIDIA Jetson TX2刷机

    官方安装教程 JetPack下载 主机端环境准备 需要在PC端安装虚拟机,虚拟机中安装Ubuntu14.04系统. 按照上面的地址下载JetPack-L4T-3.1-linux-x64.run 主机端 ...

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

    未经允许,不得擅自改动和转载 文 | 阿小庆 2018-1-20 本文继第一篇文章:01-NVIDIA Jetson TX2开箱上电显示界面 TX2 出厂时,已经自带了 Ubuntu 16.04 系统 ...

  7. 使用jetpack 4.2.2对jetson tx2进行刷机

    一.前言 加班加点几天今天终于成功刷机,记录一下成功的一些过程,以方便同样卡住的朋友参考. 延续官网教程[1]中对设备的叫法,pc机称为host,tx2称为target. 二.过程 1. host相关 ...

  8. 使用电脑adb给Essential Phone刷机 —(官方篇)

    用ADB给Essential Phone线刷升级 重要:请确保在刷机前已经解锁,关于解锁教程群里有! 准备 原版boot Twrp boot Magisk卡刷包 到官网下载OTA包 准备好Essent ...

  9. GSM Sniffing入门之硬件篇

    3个月前,听朋友介绍得知OsmocomBB项目.此前一直以为GSM Sniffing需要价格昂贵的专用设备,但osmocomBB的上手成本:一个25元左右的手机,外加一根USB转TTL的串口线,着实让 ...

随机推荐

  1. CVE-2019-20372-Nginx error_page 请求走私

    一.漏洞简介 Nginx 1.17.7之前版本中 error_page 存在安全漏洞.攻击者可利用该漏洞读取未授权的Web页面. 二.漏洞影响 Ngnix < 1.17.7 三.复现过程 错误代 ...

  2. 浅谈.Net Core后端单元测试

    目录 1. 前言 2. 为什么需要单元测试 2.1 防止回归 2.2 减少代码耦合 3. 基本原则和规范 3.1 3A原则 3.2 尽量避免直接测试私有方法 3.3 重构原则 3.4 避免多个断言 3 ...

  3. 【.net core】三种注入方式的区别

    AddTransient瞬时模式:每次请求,都获取一个新的实例.即使同一个请求获取多次也会是不同的实例 AddScoped:每次请求,都获取一个新的实例.同一个请求获取多次会得到相同的实例 AddSi ...

  4. 用水浒传来学习OKR

    用水浒传来学习OKR 目录 用水浒传来学习OKR 0x00 摘要 0x01 OKR 1.1 基本概念 1.2 OKR管理的意义 1.3 Objective 1.3.1 什么是好的O 1.3.2 上下级 ...

  5. MongoDB学习--环境搭建记录

    Mongo安装教程,参考英文官网 基本命令, 索引的引用,索引基于地理位置的数据, win10 64位 系统中安装虚拟机 win10 系统中安装虚拟机VMwareWorkstation11 并安装 L ...

  6. 如何对shell脚本中斜杠进行转义?

    1.在编写shell脚本时,经常会遇到对某个路径进行替换,而路径中包含斜杠(/),此时我们就需要对路径中涉及的斜杠进行转义,否则执行失败.具体示例如下: 需求描述: 将sjk目录下的test文件中的p ...

  7. 给Winform中的TabControl添加更现代的拖拽功能

    上周接到一个开发任务,大致是允许APP中的Tab拖动以成为一个独立Tab,脱离之前的TabControl,就是现在Web拖动标签页创建新窗口的功能,现在浏览器必备的功能,应该很简单,然而我司采用的Do ...

  8. 妙味课上利用splice进行数组去重为什么要 j--

    var arr = [ 1,2,2,4,4,5,8,8,9,0,4,4 ]; for ( var i=0; i<arr.length; i++ ) { for ( var j=i+1; j< ...

  9. 隐藏页面元素 css

    一.前言 在平常的样式排版中,我们经常遇到将某个模块隐藏的场景 通过css隐藏元素的方法有很多种,它们看起来实现的效果是一致的 但实际上每一种方法都有一丝轻微的不同,这些不同决定了在一些特定场合下使用 ...

  10. 【死磕JVM】给同事讲了一遍GC后,他要去面试,年轻人,就是容易冲动!

    前言 在一个风和日丽的中午,和同事小勇一起走在公司楼下的小公园里面,看到很多的小姐姐,心想什么时候能够和这些小姐姐一起讨论人生呀,美滋滋,嘿嘿嘿. 收起你的哈喇子好不好,小勇总是在这个时候发出声音,挺 ...