I am currently working on deploying OTA updates using the JetPack tools on a custom board based on the Jetson Orin NX platform. While generating the OTA payload with the provided l4t_generate_ota_package.sh script, I encountered an issue during the update process. The log shows a mismatch between the board ID in the OTA package and my custom board ID, leading to a failure.
Details:
Board Information:
Custom board based on Jetson Orin NX.
The board ID is orin_nx_JNX42.
OTA Update Issue:
The scripts and configuration files in Linux_for_Tegra/tools/ota_tools/version_upgrade only include board definitions for standard platforms such as jetson-orin-nano-devkit and related Jetson boards.
During the OTA update, the script fails at the check_target_board step because my custom board ID (orin_nx_JNX42) does not match any predefined entries.
Error:
The board name in OTA package (jetson-orin-nano-devkit) does not match current board (orin_nx_JNX42)
Failed to run "check_target_board /ota_work TARGET_BOARD"
Request for Support:
Could you provide guidance on properly integrating custom board IDs into the OTA scripts and configuration files?
Is there an official workflow for supporting custom hardware in OTA updates?
Are there specific NVIDIA recommendations for managing OTA updates on non-standard Jetson platforms?
If there is any documentation or forum thread addressing similar issues, please point me in the right direction.
Yes, I’m using an Auvidea JNX42 board equipped with an Orin NX 16 GB. The issue I’m encountering is with the OTA tools themselves. According to NVIDIA’s official guide, when creating a payload, the parameter jetson-orin-nano-devkit is recommended for both Orin Nano and NX devices.
While I can successfully create the payload package, the problem arises during the update phase. During the payload creation process, the tool writes to the board_name file, which is set to either orin_nx or jetson-orin-nano-devkit. However, when attempting an update, the process fails due to a mismatch since the flashed device reports its board name as orin_nx_JNX42. This mismatch causes the update to crash.
I tried a manual workaround by extracting the payload and modifying the board_name to match my board (orin_nx_JNX42). While this works, it’s not an ideal or intended solution.
It would be really helpful to know where exactly the changes need to be made to properly adjust the board name in the OTA tools for compatibility with custom boards like the JNX42. Any insights or suggestions would be greatly appreciated.
If you are using the custom carrier board, you should use custom BSP package with custom board config no matter in flashing process or image-based OTA.
It seems the work should be done by the board vendor. Some customizations in OTA tool are needed.