Jetson TX1

From RidgeRun Developer Wiki


Introduction

This wiki page contains a basic introduction to the Jetson TX1. We provide some useful links as a getting started guide.

Jetson TX1

a) EVM is called Jetson and can be bought from Amazon

Amazon store link for Jetson EVM

b) There is a forum to ask question about the board:

https://devtalk.nvidia.com/  - DavidSoto is my user.

c) There is a lot of documentation for the board. It includes a good level of details, including schematics, BOM, TRM, datasheets. You can check it on the developers site of Nvidia:

https://developer.nvidia.com/embedded/downloads

You might need to create an account for it. It is free.

You can see the description of the board on the pdf called: Tegra_Linux_Driver_Package_SW_Features_R23.1.1 and the datasheet.

d) There is an Linux SDK for the board provided by NVIDIA, it includes the BSP and several development tools, it is called JetPack and the Linux package is called Linux4Tegra (L4T)

https://developer.nvidia.com/embedded/linux-tegra
Kernel version 4.4.15
Support for 64-bit user space and runtime libraries
Vulkan Support
V4L2 media-controller driver support for camera sensors (bypassing ISP)
libargus provides low-level frame-synchronous API for camera applications
RAW output CSI cameras needing ISP can be used with either libargus or GStreamer plugin
Media APIs:
OpenGL 4.5
OpenGL ES 3.2
OpenGL ES path extensions
EGL 1.5 with EGLImage
X Resize, Rotate and Reflect Extension (RandR) 1.4
X11 Support
U-Boot

e) JetPack also supports gstreamer 0.10 and gstreamer 1.0 but the H265 support is only available on gstreamer 1.0. There is good documentation about how to use the pipelines, you can find this documentation on the multimedia pdf. It support H265, VP8, H264 etc. You can find information about resolutions and framerates on the datasheet as well

Jetson TX1_VideoSpecs.png
Figure 1. Jetson TX1 video specs. Taken from datasheet of Nvidia

Gstreamer version 1.0 includes the following gst-omx video encoders:

  1. omxh264enc OpenMAX IL H.264/AVC video encoder
  2. omxh265enc OpenMAX IL H.265/AVC video encoder
  3. omxvp8enc OpenMAX IL VP8 video encoder

It is required to create pipelines and measure their performance:

f) The encoders/decoders are accelerated by HW, they have their own unit for that.

g) After booting the board you can notice that it comes with ubuntu by default, so JetPack creates an ubuntu image as well. If ubuntu is not needed the filesystem can be modified to remove it.

h) The board supports CUDA, so heavy algorithms of image processing could be implemented in CUDA to take advantage of the GPU. There are some gstreamer plugins created on this way.

i) The module comes with a 4K camera.

j) About heatsink yes, the Jetson TX1 has a big fan on top likely because it has a big GPU. In the developer kit guide it says:

Note: At room temperature and typical workloads, the fan does not turn on

It is mentioned in this article from NVIDIA the Fan is bigger than needed. There is a power chapter on the datasheet of the board. I didn't find a reference on how much head dissipation is needed. These articles might help to understand these details too:

http://www.androidheadlines.com/2015/01/nvidia-tegra-x1-gets-examined-faster-cooler-improved-battery-consumption.html
http://www.anandtech.com/show/8811/nvidia-tegra-x1-preview/3

RidgeRun SDK for Jetson TX1

RidgeRun offers an SDK for Jetson TX1 that is fully integrated with Jetpack and can be used on the Jetson board as well as in the carrier boards from Auvidea. You can find more information in the following links:

Articles related

Gstreamer pipelines for Tegra X1
Compile gstreamer on tegra X1
Compiling Tegra X1 source code