TX2 failing at graphical login after cloning

I have two TX2’s. TX2a is mounted on a J120 carrier board and setup with all dependencies for my project. Before tangling experimentally with the working TX2a, I decided to make a backup following these instructions: https://elinux.org/Jetson/TX2_Cloning.

The cloning of TX2a and flashing of TX2b succeeded without errors. However, when I boot TX2b on the same J120 with the exact same screen and USB devices attached it reports an error in the graphical setup and fails to login. The TX2a still works as expected with the same hardware.

If the first TX2 running on J120 worked, then it would have been flashed with everything needed for that carrier board…this implies a device tree and other BSP files specific to the J120 and content beyond the rootfs. The clone would have cloned only the rootfs, not the other partitions.

Unless the second TX2 had been flashed with the same L4T release as the first (including all J120 BSP content), then the clone would not work as expected…if the other partitions the J120 BSP modifies were still those belonging to the dev carrier board, then that content would not be valid with the J120. You’d end up with a module using a J120 rootfs, but a dev carrier setup for other partitions.

Try flashing the second Jetson completely using all steps from how the first Jetson was flashed for the J120…but use the “-r” option to reuse system.img, and put the clone in place with the name “system.img”. This way it is a complete flash with that BSP, but the system.img will be reused via the clone (and if you accidentally don’t use “-r” even once, and if that system.img is your only clone copy, you’ll have erased it).

I suppose you are right since I backuped the first TX2 with a clean installation of Jetpack and used that to flash the second TX2 using the -r flag and the backup.img.raw as system.img.

Is it not possible to actually clone all partitions to get an actual clone, not just the rootfs, without the need to follow the same steps that was used to flash the first TX2? E.g. use the same Jetpack with the modifications made for the first TX2 for flashing the second with the clone?

The TK1 had that ability to clone and restore all, but after that the ability disappeared. If the system is up and running you can use dd (either over ssh or some externally mounted media) to perform a clone of all, but in recovery mode you won’t be able to flash all. The only practical possibility is to flash with the same L4T BSP-specific version and use your backup as system.img.