Torizon is a new Linux-based software platform that simplifies the process of developing and maintaining embedded software. It allows you to configure the system for your use case quickly and easily, so you can focus on application development instead of Linux builds.
Torizon fully supports the following modules, which use eMMC as flash storage:
Browse for Torizon resources from the tabs below.
To leverage the flexibility of the Torizon platform, Toradex partners with software companies from different industry segments and technologies to offer you Partner Demo Containers. Those containers are ready-to-run demonstrations with out-of-the-box compatibility to both Toradex hardware and the Torizon platform.
|Partner||Demo Container||Brief Description|
|Codesys||Codesys PLC Runtime||CODESYS programmable logic controller (PLC) demo runtime on a Torizon container and how to use it|
|Crank Software||Crank Storyboard||Crank Storyboard allows you to build an embedded systems optimized, rich GUI on a cross platform IDE|
Graphic container images with Wayland Weston containing necessary configuration and packages.
|debian-base||Base image to start a simple Container.|
|debian-wayland-base||Containing Wayland libraries without a compositor|
|debian-wayland-base-vivante||Contains binary drivers for Vivante GPUs (i.MX 8 modules)|
|debian-weston||Containing Wayland libraries and Weston compositor|
|debian-weston-vivante||Contains binary drivers for Vivante GPUs (i.MX 8 modules)|
|debian-qt5-wayland||Containing Wayland libraries and Qt5 compositor|
|debian-qt5-wayland-vivante||Contains binary drivers for Vivante GPUs (i.MX 8 modules)|
|debian-kiosk-mode-browser||Containing chromium package to run web-GUI or show website on a screen|
Development containers to assist the development.
|console base images||Extended image with console packages to explore containers during development (contains unnecessary packages for final images)|
|debian-shell||Shell utilities for the Torizon platform|
|cnab-app-base||Used for TorizonCore Docker App support|
|ostree-easy-installer-builder||Container to add some custom content to a torizon-core image|
|ostree-push-to-garage||This tool generates, signs and publishes an update to work with Here! or ATS Garage.|
Toradex provides SDK containers to work with IDEs:
After you have completed it you can have a complete and updated overview of TorizonCore on the TorizonCore Overview article. You can also check the other tabs from this article, there you can find a list of Torizon features as well as a list of related articles.
TorizonCore is installed via the Toradex Easy Installer that comes pre-installed in Toradex SoMs from the factory. Install the TorizonCore image with Docker runtime:
Upon booting one can login on the serial console (debug UART) or from the network via SSH using the following user and password:
On the first login, you are prompted to change the default password. You can then execute commands as root with
sudo <command> or gain root access from within the Linux shell with
Check out ongoing projects on Toradex Labs:
An image is a read-only, stateless template, whereas a container is a running instance of it. More than one container can be run from the same image. For comprehensive information, go through the Docker documentation. For instance, in the Docker overview, there is a section that defines what are images and containers.
The full-featured image is rather large taking up most of the space on the raw NAND-based modules. As such it is not recommended to experiment with containers on these devices since there isn't much space for containers as is. In the future, we hope to slim down the footprint. Alternatively, the Balena based image is slimmer by about ~70MB, although fully unsupported by Toradex.
In our i.MX6-based Debian containers we are using the Armada X.org DDX driver which seems to have worked fine in our tests but, it might show stability issues.
Make sure to clear the U-Boot environment by using
env default -a && env save. If resetting the U-Boot environment does not help, use
setenv tdxargs loglevel=7 to enable kernel debug messages. Also
setenv tdxargs "loglevel=7 earlycon" can help to initialize a console during very early boot and thus see debug output in case the kernel crashes very early during boot.
Refer to the OS and Demo Images tab from the Toradex Easy Installer article.
Just like when building regular applications, a container built on an x86 machine will work only on x86 targets, the same is true for ARM and other computer architectures. Both images used in this lesson have been built for a wide variety of architectures, including ARM.
Note: There is also a distinction between ARMv7 (32 bit) and ARMv8 (64 bit)
Preliminary tests show that it's possible, though you're encouraged to use the 64-bit version whenever possible.
Check out the Visual Studio Code Knowledge Base page.