How to flash image?

This page cover the process to flash a new operating system onto a NEON device.

There are 2 methods to flash the NEON-2000-JT2 and NEON-2000-JT2-X:

  • Flash over USB
  • Clone image to microSD card

Other useful information about flashing a Jetson based device can be found here.

USB Method

This method uses a host machine to flash the internal eMMC storage over USB.

To perform this method the following equipment is required:

  • A bare metal machine running Ubuntu. Must not be a virtual machine
  • microUSB cable
  • 2 x pin jumpers

Step 1: Download image to your host pc with Ubuntu

Neon-2000-JT2

Neon-2000-JT2-X

Step 2: Checksum

Check md5 checksum to make sure image file is correct

  • Linux

    • $ md5sum [file]
      
    • $ md5sum JT2X_JP461_emmc_v1.0.6.tar.gz
      
  • Windows 10

    • $ certutil -hashfile [file] MD5
      
    • $ certutil -hashfile JT2X_JP461_emmc_v1.0.6.tar.gz MD5
      

Step 3: Flash the image to NEON

This step involves connecting the NEON camera to the Host machine and flashing the image.

There is also a video and PDF showing the process

  1. On the Host PC unzip the file downloaded in Step 1

    $ tar -zxvf JT2X_JP461_emmc_v1.0.6.tar.gz
    

    or

    $ tar -jxvf A4_Linux_for_Tegra.20200528_JT2_JP43_v1.0.2.tbz2
    
  2. Put the NEON into recovery mode You can refer to pin definition below, and try to enter recover mode. pin define 1 pin define 2

    1. Power on the NEON
    2. Short pins 5 and 6 (recovery), using the provided jumpers
    3. Short pins 3 and 4 (reset), for 2 seconds until the power LED goes out using the provided jumpers
    4. When the jumper for pins 3 and 4 is removed the power LED will light up again
  3. Connect the microUSB cable to the NEON and the Host PC

  4. Open a terminal and execute the lsusb command, to see if the NEON is connected. If a device called Nvidia Corp. is detected, the device has successfully entered recovery mode. lsusb

  5. Go to folder unzipped in step 1

    cd JT2X_JP461_emmc_v1.0.6
    
  6. Flash the Neon-2000-JT2/Neon-JT2X

    sudo ./flash.sh -r jetson-tx2 mmcblk0p1
    
    • To flash the Neon-JT2(jetpack 4.6.1), Neon-JT2X(jetpack 4.6.1), Neon-2000-JNX

      sudo ./flash.sh
      

Below is a video of the process to flash a NEON-2000-JT2


microSD Card Method

This method involves cloning the operating system image for the NEON camera to a microSD, booting the NEON camera from this image and then optionally copying the image from the microSD card to the internal emmc storage on the NEON camera.

Required tools:

  • microSD of at least 32GB
  • microSD card reader

If you plan on running the operating system from the microSD permanently, make sure to use a high quality microSD card to prevent corruption

  1. Download image file:
  2. Check the md5 checksum to make sure image file is correct

    • Linux

      • $ md5sum [file]
        
      • $ md5sum JT2_JP44_microSD_v1.0.3.tar.gz
        
    • Windows 10

      • $ certutil -hashfile [file] MD5
        
      • $ certutil -hashfile JT2_JP44_microSD_v1.0.3.tar.gz
        
  3. Unzip the file downloaded in Step 1 to get a .img file

    $ tar -zxvf JT2_JP44_microSD_v1.0.3.tar.gz
    
  4. Clone image file to microSD card using one of the following methods

  5. Once cloned, check the boot config file is set to boot from the SD card

    1. Insert SD card into a machine
    2. Open file /<path to sd card>/boot/extlinux/extlinux.conf
    3. Make sure the boot line is set to /dev/mmcblk2p1

      APPEND ${cbootargs} rootfstype=ext4 root=/dev/mmcblk2p1 rw rootwait
      
  6. Insert SD card into the NEON camera

  7. Boot NEON

Optional - Clone image from microSD card to internal eMMC in the NEON:

  1. Mount the internal eMMC
    1. lsblk
    2. sudo mkfs -t ext4 /dev/mmcblk0p1
    3. lsblk -f
    4. sudo mkdir /media/adlink/ssd
    5. sudo mount /dev/mmcblk0p1 /media/adlink/ssd
  2. Clone image from microSD card to internal eMMC using rsync

    sudo rsync -axHAWX --numeric-ids --info=progress2 / /media/adlink/ssd
    
  3. Change boot config on the internal eMMC to boot from the internal eMMC mmcblk0p1

    1. Open file /media/adlink/ssd/boot/extlinux/extlinux.conf
    2. Replace the following

      # Replace this line
      # APPEND ${cbootargs} rootfstype=ext4 root=/dev/mmcblk2p1 rw rootwait
      
      # With this line
      APPEND ${cbootargs} quiet
      
  4. Remove the SD card and reboot the NEON