Flashing Jetson using system image (alternative)

This page is intended to guide customers how to flash Nvidia Jetson with system image provided by Airvolute.

circle-info

DroneCore.Suite is basically shipped with Jetson flashed with current version of system image. This image evolves over time, so the need to re-flash jetson system image may arise. This section is about how to flash jetson with provided system image.

circle-info

To check currently flashed system image release number type:

printenv SYSIMG_RELEASE

Instructions:

Creating working directory for device:

  • in following steps, jetson is unconnected from the host PC

  • download and install NVIDIA SDK manager official webarrow-up-right

  • open SDK manager

  • choose "Target Hardware" and "Linux" according to which system is image intended for. (Jetson Xavier NX modules / JetPack4.6 used in this example)

  • continue through all the steps (with jetson unconnected)

  • if SDK Manager show flash dialog, click on "Skip".

  • if installation is complete, click on "FINISH AND EXIT".

  • now working directory for target is created in '/nvidia/nvidia_sdk/' folder. (JetPack_4.6_Linux_JETSON_XAVIER_NX_TARGETS in this example)

Download custom_system.img and copy to working folder:

  • download custom_system.img.raw from storagearrow-up-right.

  • backup original system.img and system.img.raw in .../Linux_for_Tegra/bootloader/ directory

  • move custom_system.img.raw to /nvidia/nvidia_sdk/$target_working_directory/Linux_for_Tegra/bootloader as system.img (sudo mv custom_system.img.raw .../JetPack_4.6_Linux_JETSON_XAVIER_NX_TARGETS/Linux_for_Tegra/bootloader/system.img)

Run Jetson in Recovery mode

  • the use of complete DroneCore.Suite is assumed

  • power-off board (pressing button on .Power board to turn off DroneCore is enough)

  • on DroneCore.Pilot interconnect FC_REC with GND pin on CONTROL pin header)

  • connect micro usb cable from host PC to USB_DEV connector on .Pilot board

  • power-on (don't forget to turn on DroneCore with button on .Power board)

Flash board with flash.sh script:

  • open terminal window in .../$target_working_directory/Linux_for_Tegra/ directory

  • execute sudo ./flash.sh -r jetson-xavier-nx-devkit-emmc mmcblk0p1 (for Xavier NX and internal EMMC)

  • for other options with flash script see Flashing and Booting the Target Devicearrow-up-right

circle-info

If you are using 16GB xavier nx with J.P. 4.6.0 and flashing is not successful. Please use nvidia patch (Overlay to support Jetson Xavier NX 16GB), the patch can be downloaded from here: https://developer.nvidia.com/xnx-16gb-r3261-overlaytbz2arrow-up-right

To apply the patch just decompress it into $HOME/nvidia/nvidia_sdk/JetPack_4.6_Linux_JETSON_XAVIER_NX_TARGETS

Last updated