Skip to content

l4t_prebuilt_image_24_1

Tobias Kammacher edited this page Dec 9, 2016 · 1 revision

Prebuilt L4T Image

You can use our prebuilt Linux4Tegra image (hdmi2csi/l4t-r24-1-dev-4K@a2b2fc9) for the TX1 to skip the compiling of the L4T Image & drivers.

Prerequisites

  • You need a host PC with Linux (e.g. Ubuntu 14.04 64bit) and a Nvidia Jetson TX1
  • Download Nvidia Jetson TX1 64-bit Driver Package to the host PC and unpack it
  • Connect the TX1 to your host PC via Micro-USB and enter the recovery mode on the TX1 (keep pressing the REC-button while quickly pressing RST)
    • On your host you should see a new Nvidia USB device:

$ lsusb ... Bus 001 Device 080: ID 0955:7721 NVidia Corp. ... ```

Howto flash the image to your TX1

$ gunzip tx1_hdmi2csi_l4t_r24_1_4K_dev_a2b2fc9.img.gz * Download the [SHA1 checksum](https://drive.switch.ch/index.php/s/rUTnGwbZSSjcAH6) * Check the checksum, should return `OK`:shell $ sha1sum -c tx1_hdmi2csi_l4t_r24_1_4K_dev_a2b2fc9.img.sha1sum ```

  • Change directory to your Nvidia Jetson TX1 64-bit Driver Package
  • $ cd Linux_for_Tegra/bootloader
  • Flash the unzipped image to your TX1 (replace YOURPATH with the path to where you downloaded the image):
$ sudo ./tegraflash.py --bl ./t210ref/cboot.bin --applet nvtboot_recovery.bin --chip 0x21 --cmd "write APP YOURPATH/tx1_hdmi2csi_l4t_r24_1_4K_dev_a2b2fc9.img"
  • This process takes around 25 min and should finish with:
...
[   1.6931 ] Writing partition
[   1.6947 ] tegradevflash --write APP /YOURPATH/Linux_for_Tegra/bootloader/tx1_hdmi2csi_l4t_r24_1_4K_dev_a2b2fc9.img
[   1.6962 ] Cboot version 00.01.0000
[   2.5005 ] Writing partition APP with /YOURPATH/Linux_for_Tegra/bootloader/tx1_hdmi2csi_l4t_r24_1_4K_dev_a2b2fc9.img
[   2.5013 ] [................................................] 100%
[ 1389.8960 ]
  • Success! Now you can reboot your TX1 by pressing the RST button

Test video capturing

Test by capturing a 2160p30 capable HDMI source and displaying it on a local HDMI display

  • Connect a HDMI source capable of 2160p30 to input HDMI IN A of the HDMI2CSI board
  • Connect a display to the HDMI output of the Nvidia TX1 Jetson board
  • Start the TX1, login via SSH or serial console or on the HDMI display
  • Load the subdevice driver:
$ sudo modprobe tc358840
  • Launch a GStreamer pipeline for capturing 2160p30 (using MMAP io-mode):
$ gst-launch-1.0 v4l2src ! 'video/x-raw, width=3840, height=2160, framerate=30/1, format=UYVY' ! nvvidconv ! 'video/x-raw(memory:NVMM), width=3840, height=2160, framerate=30/1, format=I420' ! nvoverlaysink sync=false

Advanced

  • Choosing kernel: There are three kernels preinstalled:
    • Versions:
    • While booting the TX1 prints out messages from the different booting stages: U-Boot, Extlinux and finally the Kernel. Extlinux gives you a prompt to choose one of the three kernel, by default it boots 2: hdmi-4k (R24.1 2160p). Note that currently the second input HDMI-B which only supports 1080p can only be used with kernel 3.
    • To be able to choose the kernel, you need to connect a serial console to UART0 on connector J21 (see http://jetsonhacks.com/nvidia-jetson-tx1-j21-header-pinout/), which is a 115200 Baud 8N1 UART.
  • In order to use advanced modes for passing buffers through the pipeline, you need to switch to a newer version of GStreamer (1.8.0) with some additional patches. This version is preinstalled and can be activated by setting these environment variables (this means you dont need to do this step: Build GStreamer:
$ export LD_LIBRARY_PATH=/home/ubuntu/build/gst_1.8.0/out/lib/
$ export PATH=/home/ubuntu/build/gst_1.8.0/out/bin/:$PATH
$ export GST_PLUGIN_PATH=$LD_LIBRARY_PATH

Troubleshooting

  • Credentials

    • User: ubuntu
    • Pw: ubuntu
  • If you get this output from the tegraflash.py:

...
[   0.0613 ] Sending bootloader and pre-requisite binaries
[   0.0629 ] tegrarcm --download ebt cboot.bin 0 0
[   0.0644 ] USB communication failed.Check if device is in recovery
[   0.1255 ] 
Error: Return value 8
Command tegrarcm --download ebt cboot.bin 0 0

-> This means your TX1 is not connected via USB-micro to the host or it was not correctly set into Recovery mode

  • HDMI-display connected to TX1 stays black after booting

    • The console output of the kernel while booting tries to read the EDID of the connected display. There is a bug with some displays, where this EDID read during booting leads to a kernel crash. If you use such a monitor, the only workaround is currently to disconnect it during boot and only connect it after Ubuntu has started.
  • HDMI-display resolution is not as expected

    • Inspect the possible resolutions:

$ export DISPLAY=:0 $ xrandr * Set the resolution of the display to 2160p30:shell $ export DISPLAY=:0 $ xrandr --output HDMI-0 --mode 3840x2160 --rate 30.0 ```

  • GStreamer Pipeline fails
    • Currently there is a limitation concerning which io-modes can be used with certain GStreamer versions. The most basic way is to use the MMAP mode with GStreamer 1.2.4. This version of GStreamer is used per default, you can check the version with gst-launch-1.0 --version. The most basic example is described in Video Capturing Test.
    • For more advanced io-modes a newer version of GStreamer is required, i.e. 1.8.0. The different modes for passing buffers through the pipeline are described in io-modes