OTA update with based of yocto rootfs

Hi,

I’m running a Jetson AGX Orin 32GB and currently exploring building my system using Yocto and the meta-tegra layer. I’ve successfully built and flashed the system over USB. However, I have deployed units that I can’t access physically, so I’m looking into using the OTA script provided by NVIDIA.

What would be the most straightforward way to make this work? Can I simply use the Yocto-built rootfs (including the kernel and everything else) by untarring it in place of the example rootfs provided by NVIDIA?

I tried doing this with the following command:
sudo ROOTFS_AB=1 tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh -s -f ~/core-jetson-agx-orin-forecr.rootfs.tar.gz jetson-agx-orin-devkit R35-5

However, this resulted in an error stating that a user-defined rootfs update script must be provided in place of the default one.

Thanks!

You may check out the examples for OTA updates using swupdate on meta-tegrademo and meta-mender-community that support meta-tegra out of the box.

Thanks for the pointers! I’ve come across them and was planning to use Mender, but I was under the impression that it didn’t support bootloader updates (I need to go from R35 to R36).

Maybe I’m working with outdated information.

hello trulso,

you may try using the Yocto-built rootfs image by untarring it in place of the sample rootfs.
however, you’ll need to ensure that the image is compatible with the NVIDIA-provided kernel and other components.
please see-also developer guide, Preparing for an Image-Based OTA Update, you should use l4t_generate_ota_package.sh by adding -f <rootfs_image> options to point-to the path of the rootfs image.