Test Balena stack for a new board


Recently I’ve done a custom yocto build of BalenaOS for a board ( NXP imx8 family) that is not currently supported by BalenaOS .

Due to the limitation of the BSP support from the board manufacture, we had to hack a lot of things together, for example, swapping out Poky layer to a specific version and so on.

Everything builds now and we were able to boot the Balena image on the board.

Now my question is, what’s the quickest way to test the Balena stack ( i.e., deploy an image from BalenaCloud and run some testing)?


With the docker containers getting popular day by day. I wonder how useful and beneficial it is to use it as a development environment for every kind of embedded software?

I’m thinking of use it as a builder machine. A little home for compiler and every kind of dependency it might need.

Hi @shuojin , if all you need for now is to test the stack before contributing your device support and making your device available in the API, you can download the configuration file only from an already supported IMX8 or any other aarch64 device type and replace the contents of resin-boot/config.json with the ones downloaded from balena-cloud.

I suggest using a configuration file from a Variscite imx8mm-var-dart for example. You will also need to edit the resin-boot/device-type.json and switch the slug in all occurrences of the slug to imx8mm-var-dart and perhaps also the name, if you use a Variscite iMX8MM. I haven’t tested this in a while but it should work, let us know if it doesn’t.

If your device uses a flasher type image, the boot partition on the SD-CARD will be named ‘flash-boot’ instead of ‘resin-boot’, and if you are performing the changes live on the device, the boot partition will be mounted in /mnt/boot/,

1 Like

This worked nicely! Using an existing device as a template is key! Thanks very much @acostach !

1 Like