Flash Custom Image via SSH


Im trying to build a custom image and flash it via SSH directly onto the board.

Doc: TorizonCore Builder - Workflow | Toradex Developer Center

I inherit from the following:

    local: images/torizon-core-docker-verdin-imx8mp-Tezi_6.2.0+build.2.tar

The output is defined as follows:

    local: images/torizon-core-docker-verdin-imx8mp-Tezi_6.2.0+build.2.CUSTOM1
    name: "My customized image V1.0"


  1. torizoncore-builder build --force --file tcbuild.yaml
  2. After the successful build, the doc suggests to “unpack” my custom image, but it is already unpacked:
images$ tree
├── torizon-core-docker-verdin-imx8mp-Tezi_6.2.0+build.2.CUSTOM1
│   ├── image.json
│   ├── imx-boot
│   ├── LA_OPT_NXP_SW.html
│   ├── marketing.tar
│   ├── prepare.sh
│   ├── toradexlinux.png
│   ├── torizon-core-docker-verdin-imx8mp.ota.tar.zst
│   ├── u-boot-initial-env-sd
│   └── wrapup.sh
└── torizon-core-docker-verdin-imx8mp-Tezi_6.2.0+build.2.tar
  1. I ignore the “unpack” step and try to flash it to the board via SSH
torizoncore-builder deploy --remote-host <IP> --remote-username torizon --remote-password <PASSWORD> --reboot

After doing so it seems i have flashed the “torizon-core-docker-verdin-imx8mp-Tezi_6.2.0+build.2.tar” (Base image) instead of my custom image…

Q1: How does the “deploy” command know which image it is supposed to deploy? there is no argument i can pass?!

Q2: What am i doing wrong here?

Q3: Does the deploy step expect a *.tar file or a “unpacked directory”?

Q4: is there an opposite to “unpack” or is this simply creating a tar file myself of the output directory?

Greetings @chalu,

After the successful build, the doc suggests to “unpack” my custom image, but it is already unpacked:

“Unpack” is not referring to the state of the tar archive. It means to run the torizoncore-builder unpack command, this is shown in the article you referenced. When you run the unpack command on a TorizonCore image archive it "unpacks’ the image into the tool’s internal storage. The unpacked image then becomes the basis for all future commands going forward, including the deploy command. As the article states, the build command automatically runs unpack on your input TorizonCore image. Which is why when you ran deploy it deployed the input image since that was the latest unpacked image.

Basically just run torizoncore-builder unpack targeting your customized image then you can deploy it via network.

Best Regards,

1 Like