Torizon Core Builder

From RidgeRun Developer Wiki





Follow Us On Twitter LinkedIn Email Share this page



Preferred Partner Logo 3



TorizonCore Builder

Introduction

TorizonCore Builder is a command-line tool used to generate customized, production-ready Torizon OS images. It allows developers to modify a base operating system image by applying configuration changes, hardware adjustments, and deployment settings without rebuilding the system from source.

After building a customized image, it can be deployed in several ways:

  • Flash the image manually using the Toradex Easy Installer.
  • Deploy the image directly to the device over SSH.
  • Push the image to Torizon Cloud for over-the-air (OTA) deployment.

This tool simplifies the process of customizing and deploying Torizon OS while maintaining a reproducible workflow.

Supported Features

TorizonCore Builder provides several customization capabilities that allow developers to adapt Torizon OS to their hardware and deployment requirements.

Hardware and I/O Support

  • Apply device tree overlays to enable or configure peripherals such as GPIO, I²C, SPI, and display interfaces.
  • Modify pin multiplexing to change the function of hardware pins.
  • Build and include out-of-tree kernel modules to extend OS functionality, such as enabling custom drivers.

Kernel and Boot Configuration

  • Customize kernel command-line arguments to control kernel behavior, logging, and debugging options.

Boot Experience

  • Replace the default boot splash screen to personalize the system startup appearance.

Deployment and Development Workflow

  • Pre-provision Docker containers: Include container images in the OS so they are available immediately at first boot without downloading them from the internet.
  • Capture device configuration: Preserve runtime configuration changes made on a development device and embed them into a final image.
  • Visual Studio Code integration: Develop, customize, and deploy TorizonCore Builder projects directly from Visual Studio Code.

Unsupported Use Cases

Some low-level system modifications are not supported by TorizonCore Builder. These types of changes require using the Yocto Project instead.

Unsupported customizations include:

  • Modifying the Linux kernel source code
  • Adding in-tree kernel modules
  • Customizing the bootloader (U-Boot)
  • Modifying the initramfs (initial RAM filesystem)

Build Options

TorizonCore Builder provides two approaches to customize Torizon OS images.

Using the build Command

The build command applies all customizations defined in a YAML configuration file in a single step.

Typical workflow:

  1. Create a configuration file describing the desired customizations.
  2. Download or reference the base Torizon OS image.
  3. Prepare required artifacts such as device tree overlays or kernel modules.
  4. Run the build command.
  5. Deploy the generated image to the device or to Torizon Cloud.

This method is stateless and reproducible: the same inputs always produce the same output image. Because of this, it is the preferred approach for production and automated build environments.

However, every build executes the full pipeline, including unpacking the base image and applying all modifications. This may become slower during iterative development.

Using Standalone Commands

The second approach uses standalone commands that apply individual changes to an already unpacked image.

Typical workflow:

  1. Download a Torizon Easy Installer image from Toradex.
  2. Unpack the image.
  3. Apply customizations such as overlays, splash screens, or kernel modules.
  4. Merge the modifications.
  5. Combine the customized OS image with container images.
  6. Deploy the resulting image to the device or to Torizon Cloud.

This approach is useful during development because it avoids running the full build pipeline every time a small change is made. However, since commands depend on previous states, the final result may vary depending on the order in which operations are executed.