Can I copy and replace Updated DTB file in Jetson Nano?

I have changed DTB file of the Jetson Nano from the default one. I tried to replace the older file with new one rather than flashing the image again in SDKManager, but couldn’t get the changed one to be booted.

Is there any way to update the DTB file without flashing the image?

Hi @pp3 ,

It depends on the JetPack version, the common feature that works for all is the following:

  1. Copy the compiled kernel and device trees to the board. From Linux_for_Tegra directory, run a scp if you have them on the images/arch/arm64/boot/ folder for example:

scp images/arch/arm64/boot/Image <jetson_user>@<ip_address>:/tmp>
scp images/arch/arm64/boot/dts/<dtb_file> <jetson_user>@<ip_address>:/tmp

  1. Then, from the board, move the kernel and device tree files to /boot ;

sudo mv /tmp/Image /boot
sudo mv /tmp/<dtb_file> /boot

  1. Then, set the board to load your device tree by modifying /boot/extlinux/extlinux.conf file, including FDT /boot/ under LABEL primary:
LABEL primary 
MENU LABEL primary kernel 
LINUX /boot/Image 
FDT /boot/<dtb_file>
INITRD /boot/initrd 
APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0

I still recommend that you flash it the first time, and then if you modify it, apply this method.

Best regards,
Roberto Gutierrez,
Embedded Software Engineer,

1 Like