Search by Tags

Setting up Displays with Torizon

 

Article updated at 29 Jun 2020
Compare with Revision




Subscribe for this article updates

Introduction

During the development cycle of a product with a GUI, you usually go through 3 phases when it comes to displays:

Evaluation: often, you will do a basic evaluation using a regular monitor over VGA/DVI-D/HDMI - or similar interfaces, if available. We provide an out-of-the-box experience, where you just have to plug in the monitor and power-on the hardware.

Proof of Concept: even with the advantages of cross-development tools and IDEs enabling a good experience for developing GUIs in a development computer, it is often common to make tests on the real end device. We sell touch screen displays that either deliver an out-of-the-box experience or a fairly easy configuration.

Prototype and Beyond: often, you want or need a custom display in your final product. The reasons are various: price, robustness, brightness, size, interface, EMI compliance, among others. Supporting a custom display is not an easy task for a beginner, especially if you use a display with bad documentation and Linux support. We document how to enable a custom display, but you must expect that some effort is associated with the process or, alternatively, hire a partner to do the integration for you.

Toradex tests and recommends the following displays to be used with its Computer on Modules (CoM) during early phases of development:

For these displays, Toradex provides an easy way to set-up and get running, by providing ready-to-use device tree overlays. It also means that you can tweak the existing overlays to support other displays as well. This article explains how to set up displays on Torizon.

This article complies to the Typographic Conventions for Torizon Documentation.

Configure Toradex Displays with Torizon

First, start the Developer Tools Container.

Enable overlay

To enable the overlay for your display, in the interactive shell inside the Torizon Debian Dev Tools container on the Toradex Computer on Module (CoM), use the dtconf command as follows:

## dtconf activate display-lt161010-overlay.dts 

For iMX8 products you need to prepend the module name (e.g. apalis-imx8qm-display-lt161010-overlay.dts). For Apalis i.MX6 you'll need a second overlay to enable the parallel display interface on this module.

## dtconf activate apalis-imx6-parallel-rgb-overlay.dts

For capacitive touch you'll need an additional overlay in the form of "*atmel-mxt*.dts. The overlay file needed depends on your module and carrier board combination. The following command will list Toradex provided overlays:

## dtconf status

Once you've identified the correct overlay for your setup you may use dtconf activate <file> to apply your capacitive touch overlay.

## dtconf activate display-lt170410-overlay.dts

For iMX8 products you need to prepend the module name (e.g. apalis-imx8qm-display-lt170410-overlay.dts). For Apalis i.MX6 you'll need a second overlay to enable the LVDS display interface on this module.

## dtconf activate apalis-imx6-lvds-overlay.dts

For capacitive touch you'll need an additional overlay in the form of touch_cap*.dts. The overlay file needed depends on your module and carrier board combination. The following command will list Toradex provided overlays:

## dtconf status

Once you've identified the correct overlay for your setup you may use dtconf activate <file> to apply your capacitive touch overlay.

## dtconf activate display-lt161010-overlay.dts

For iMX8 products you need to prepend the module name (e.g. apalis-imx8qm-display-lt161010-overlay.dts). For Apalis i.MX6 you'll need a third overlay to enable the parallel display interface on this module.

## dtconf activate apalis-imx6-parallel-rgb-overlay.dts

Apply overlay

Finally, once all overlay files have been enabled, reboot the board.

Configure Other Displays with Torizon

To support a specific display we recommend using the device tree overlay to specify the exact display resolution and timings. We recommend you clone our repository that contains the device tree overlay samples and modify them according to your display resolution and timings. Make sure then to switch to the branch that matches the running kernel on your Torizon device.

On your development PC, clone the device-tree-overlays repository from Toradex:

$ git clone https://github.com/toradex/device-tree-overlays.git

Start the Developer Tools Container for TorizonCore on the computer on module.

Once it's running in interactive mode, create .dts file in /var folder to keep it persistant:

## vim test.dts

Check the datasheet of your display. Every manufacturer provides display timings in a slightly different way.

The Horizontal period must be the sum of hback_porch + hactive + hfront_porch + hsync-len and the Vertical period must be the sum of vback_porch + vactive + vfront_porch + vsync-len. Hsync-len and vsync-len parameters are not allowed to be zero sometimes.

Check our examples for a starting point. Copy the most appropriate in the test.dts you have created in a previous step:

LVDS display example: Capacitive Touch Display 10.1" LVDS Overlay

Parallel RGB display example: Capacitive Touch Display 7" Parallel Overlay

Other examples: Toradex Device Tree Overlays on GitHub

Enable and apply overlay

Enable your overlay and reboot.

For more information about dtconf and device tree overlays, please, refer to Device Tree Overlays page.

Touch Screen Calibration

If you want to calibrate your touch screen, please read the article Touch Screen Calibration (Torizon).