Cannot flash Jetson Orin Nano - Image: not in gzip format

I’m trying to flash the Jetson Orin Dev Kit Board by following this tutorial:

I’ve downloaded the Driver Package (BSP) and Sample Root Filesystem from here:
https://developer.nvidia.com/embedded/jetson-linux-r364

I’m entering these commands on the terminal as instructed from the quick start guide:

$ tar xf ${L4T_RELEASE_PACKAGE}
$ sudo tar xpf ${SAMPLE_FS_PACKAGE} -C Linux_for_Tegra/rootfs/
$ cd Linux_for_Tegra/
$ sudo ./tools/l4t_flash_prerequisites.sh
$ sudo ./apply_binaries.sh

I then put my Jetson into Force Recovery Mode by following the steps explained in the quick start, and I can see the device as expected:

Bus 001 Device 052: ID 0955:7523 NVIDIA Corp. APX

According to the Quick Start guide, I should enter this command to flash my Jetson Nano SD card:

Jetson Orin Nano Developer Kit (SD card):

$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device mmcblk0p1 \
-c tools/kernel_flash/flash_l4t_t234_nvme.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
--showlogs --network usb0 jetson-orin-nano-devkit internal

But I get the following output:

...
bl is uefi
Making Boot image... done.
Not signing of boot.img
Making recovery ramdisk for recovery image...
Re-generating recovery ramdisk for recovery image...
/home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra/bootloader/ramdisk_tmp /home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra/bootloader /home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra
72730 blocks

gzip: /home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra/kernel/Image: not in gzip format
_BASE_KERNEL_VERSION=5.15.148-tegra
command is failed
Error: failed to generate images
Cleaning up...

I can’t see any other errors in the log outside of the “image not in gzip format” error. Here is the full output.

ErrorLog.txt (26.7 KB)

Can anyone tell me what I might be doing wrong?

My goal is to make changes to the kernel, which is why I’d like to build from the source modules and follow this developer guide, but from what I can tell here I’m missing something that doesn’t allow me to flash at all, even if I download the released Linux BSP without any changes.

*** Please note that this reply is generated by LLM automatically ***

The issue you’re encountering is due to the image not being in gzip format. The error message indicates that the flashing process is expecting a gzip-compressed image, but the image you’re trying to flash is not in that format.

To resolve this issue, you need to ensure that the image you’re trying to flash is in gzip format. Here are a few possible solutions:

  1. Check the image format: Verify that the image you downloaded is in gzip format. You can do this by checking the file extension or using the file command in the terminal. If the image is not in gzip format, you may need to compress it using the gzip command.

  2. Use the correct flashing command: Make sure you’re using the correct flashing command for your Jetson Orin Nano Developer Kit. The command you provided is for flashing an SD card, but you may need to use a different command depending on your specific setup.

  3. Check the flashing script: The flashing script you’re using may be expecting a specific format for the image. Check the script to see if it’s expecting a gzip-compressed image, and if so, ensure that your image is in that format.

  4. Try a different flashing method: If you’re still having trouble flashing your Jetson Orin Nano Developer Kit, you may want to try a different flashing method. For example, you could try using the dd command to flash the image to the SD card.

Here’s an example of how you can use the dd command to flash an image to an SD card:

sudo dd bs=4M if=<image_file> of=/dev/<sd_card_device> status=progress oflag=sync

Replace <image_file> with the path to your image file, and <sd_card_device> with the device name of your SD card (e.g., /dev/mmcblk0).

Comparison with other flashing methods:

The flashing method you’re using is specific to the Jetson Orin Nano Developer Kit and is designed to work with the flash.sh script provided by NVIDIA. This script is designed to simplify the flashing process and ensure that the image is flashed correctly.

In comparison, the dd command is a more general-purpose command that can be used to flash images to a variety of devices, including SD cards. While the dd command can be more flexible, it requires more manual configuration and may not provide the same level of error checking as the flash.sh script.

Additional troubleshooting steps:

If you’re still having trouble flashing your Jetson Orin Nano Developer Kit, here are some additional troubleshooting steps you can try:

  • Check the SD card for errors using the fsck command.
  • Verify that the SD card is properly seated and connected to the Jetson Orin Nano Developer Kit.
  • Try flashing the image to a different SD card or device.
  • Check the NVIDIA documentation for any specific flashing instructions or recommendations for your Jetson Orin Nano Developer Kit.

I hope this helps! Let me know if you have any further questions or if there’s anything else I can help with.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

I will answer each question as best as I can, but I’m not sure this solution entirely lines up with the context of my question:

  1. Check the image format:
    A: When I extract the Linux_for_Tegra folder from the NVIDIA R36.4.4 archive (The most up to date Linux BSP for the Jetson Orin Nano as best as I can tell) and look in the kernel directory, there are two Image files:
  • Image
  • Image.gz

If I remove or rename the Image file I get the following error (in attempt for the flash procedure to read the Image.gz file):

Chip SKU(00:00:00:D5) ramcode(2) fuselevel(fuselevel_production) board_FAB(300)
emc_opt_disable_fuse:(0)
Error: missing kernel_image (/home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra/kernel/Image).

If I rename the Image.gz file to just Image I get the following error:

… (same as the initial attachement)

Making Boot image… done.
Not signing of boot.img
Making recovery ramdisk for recovery image…
Re-generating recovery ramdisk for recovery image…
/home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra/bootloader/ramdisk_tmp /home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra/bootloader /home/nonrootuser/Documents/JetsonBSP/Linux_for_Tegra
72730 blocks
_BASE_KERNEL_VERSION=5.15.148-tegra
command is failed
Error: failed to generate images
Cleaning up…

2: Use the correct flashing command:

I get the same error message whether I try to flash on the NVMe, USB, or the SD card. I also tried to flash to a blob so that I could partition the SD card manually with the following command:

./jetson-disk-image-creator.sh -o sd-blob.img -b jetson-orin-nano-devkit -r 1 -d SD

and I got the same output message

3: Check the flashing script:

I have some pause changing the NVIDIA provided flashing script that is built into the provided linux BSP given that I am trying to compile it exactly as is described in the tutorial. Regardless, I can’t really tell what I’m looking for here.

4: Try a different flashing method:

See response 2.

Hi,

What is your log when run sudo ./tools/l4t_flash_prerequisites.sh?

Please provide for us to review.

Thanks