Enable capacitive touch display 10.1"LVDS on Apalis Evaluation board

Dear developer,

I have the following configuration:

  • iMX8QM 4GB WB V1.0B
  • Apalis Evaluation Board V1.1.C
  • OS information: linux aarch64 Torizone core 5.7.2+build.20 (dunfell)
  • Monitor with connector DVI
  • Capacitive touch Display 10.1"LVDS

Using Ubutu, I used the following command:

admin2023@DESKTOP-99JL35E:~$ torizoncore-builder dto deploy --remote-host 192.168.1.91 --remote-username torizon --remote-password torizon --force --reboot device-trees/overlays/display-lt170410_overlay.dts

I got the following response:


Downloading image from: https://artifacts.toradex.com/artifactory/torizoncore-oe-prod-frankfurt/dunfell-5.x.y/release/20/apalis-imx8/torizon/torizon-core-docker/oedeploy/torizon-core-docker-apalis-imx8-Tezi_5.7.2+build.20.tar

The download may take some time. Please wait…
Download Complete!

Unpacking Toradex Easy Installer image.
Copying Toradex Easy Installer image.
Unpacking TorizonCore Toradex Easy Installer image.
Importing OSTree revision 64af2973ccd5ce67c975a7886452498ce86badc8e4f27e17c05bfb83fd3fd8ee from local repository…
1136 metadata, 12732 content objects imported; 532.1 MB content written
Unpacked OSTree from Toradex Easy Installer image:
Commit checksum: 64af2973ccd5ce67c975a7886452498ce86badc8e4f27e17c05bfb83fd3fd8ee
TorizonCore Version: 5.7.2+build.20
‘device-trees’ directory already exists
warning: --force was used, bypassing checking overlays against the device tree.
‘display-lt170410_overlay.dts’ compiles successfully.
Overlay display-lt170410_overlay.dtbo successfully applied.
Applying changes from STORAGE/dt.
Commit 674d9be7eec3662496600826397283e0278f73c7d7c06f8cd3ae42ba32d93c22 has been generated for changes and is ready to be deployed.
Pulling OSTree with ref dto_deploy (checksum 674d9be7eec3662496600826397283e0278f73c7d7c06f8cd3ae42ba32d93c22) from local archive repository…
Starting http server to serve OSTree.
OSTree server listening on “localhost:43615”.
Starting OSTree pull on the device…
Deploying new OSTree on the device…
Deploying successfully finished.
Device reboot initiated…


The Evaluation board restarted and I was not displaying either from the DVI connector or from the LVDS connector.

Later I used the following command:

admin2023@DESKTOP-99JL35E:~$ torizoncore-builder dto deploy --remote-host 192.168.1.91 --remote-username torizon --remote-password torizon --force --reboot device-trees/overlays/display-lt170410_overlay.dts

I got the following response:


Downloading image from: https://artifacts.toradex.com/artifactory/torizoncore-oe-prod-frankfurt/dunfell-5.x.y/release/20/apalis-imx8/torizon/torizon-core-docker/oedeploy/torizon-core-docker-apalis-imx8-Tezi_5.7.2+build.20.tar

The download may take some time. Please wait…
Download Complete!

Unpacking Toradex Easy Installer image.
Copying Toradex Easy Installer image.
Unpacking TorizonCore Toradex Easy Installer image.
Importing OSTree revision 64af2973ccd5ce67c975a7886452498ce86badc8e4f27e17c05bfb83fd3fd8ee from local repository…
1136 metadata, 12732 content objects imported; 532.1 MB content written
Unpacked OSTree from Toradex Easy Installer image:
Commit checksum: 64af2973ccd5ce67c975a7886452498ce86badc8e4f27e17c05bfb83fd3fd8ee
TorizonCore Version: 5.7.2+build.20
‘device-trees’ directory already exists
warning: --force was used, bypassing checking overlays against the device tree.
‘display-lt170410_overlay.dts’ compiles successfully.
Overlay display-lt170410_overlay.dtbo successfully applied.
Applying changes from STORAGE/dt.
Commit 674d9be7eec3662496600826397283e0278f73c7d7c06f8cd3ae42ba32d93c22 has been generated for changes and is ready to be deployed.
Pulling OSTree with ref dto_deploy (checksum 674d9be7eec3662496600826397283e0278f73c7d7c06f8cd3ae42ba32d93c22) from local archive repository…
Starting http server to serve OSTree.
OSTree server listening on “localhost:43615”.
Starting OSTree pull on the device…
Deploying new OSTree on the device…
Deploying successfully finished.
Device reboot initiated…


The evaluation board restarted and I was only viewing from the DVI connector.

How can I View from LVDS connector?

Best regards
Gaetano

Hi @LEADTECH ,

From the commands you showed you were only applying one overlay, display-lt170410_overlay.dts. In TorizonCore 5 you need additional overlays in order to correctly activate our Capacitive Touch Display 10.1" LVDS, as specified here:

You can add more than one overlay with dto deploy. So if you want to enable the LVDS display you can use the command below:

torizoncore-builder dto deploy --remote-host 192.168.1.91 --remote-username torizon --remote-password torizon --force --reboot device-trees/overlays/apalis-imx8_lvds_overlay.dts device-trees/overlays/apalis-imx8_atmel-mxt_overlay.dts device-trees/overlays/display-lt170410_overlay.dts

This will add and enable the overlays along with the default ones already enabled.

If the display still doesn’t work, maybe some of the default overlays conflict with the LVDS ones. You can try to add the --clear parameter to dto deploy to disable the default overlays (though you might lose video signal on other displays).


As a side note: while you can continue to use dto deploy to apply overlays with TorizonCore Builder, you can also use the build command to create custom TorizonCore images, including adding/removing overlays.

With the build command you specify all changes you want in a formatted file called tcbuild.yaml then run torizoncore-builder build. The command will interpret tcbuild.yaml then output a custom TorizonCore image in the form of a folder.

From there you can deploy the custom image with torizoncore-builder deploy, as detailed here:

Best regards,
Lucas Akira

1 Like

Dear Lucas,

When I use the following command:

get the following result:


admin2023@DESKTOP-99JL35E:~/tcbdir$ torizoncore-builder dto deploy --remote-host 192.168.1.91 --remote-username torizon --remote-password adminadmin2023 --force --reboot device-trees/overlays/apalis-imx8_lvds_overlay.dts device-trees/overlays/apalis-imx8_atmel-mxt_overlay.dts device-trees/overlays/display-lt170410_overlay.dts
Downloading image from: https://artifacts.toradex.com/artifactory/torizoncore-oe-prod-frankfurt/dunfell-5.x.y/release/20/apalis-imx8/torizon/torizon-core-docker/oedeploy/torizon-core-docker-apalis-imx8-Tezi_5.7.2+build.20.tar

The download may take some time. Please wait…
Download Complete!

Unpacking Toradex Easy Installer image.
Copying Toradex Easy Installer image.
Unpacking TorizonCore Toradex Easy Installer image.
Importing OSTree revision 64af2973ccd5ce67c975a7886452498ce86badc8e4f27e17c05bfb83fd3fd8ee from local repository…
1136 metadata, 12732 content objects imported; 532.1 MB content written
Unpacked OSTree from Toradex Easy Installer image:
Commit checksum: 64af2973ccd5ce67c975a7886452498ce86badc8e4f27e17c05bfb83fd3fd8ee
TorizonCore Version: 5.7.2+build.20
‘device-trees’ directory already exists
warning: --force was used, bypassing checking overlays against the device tree.
‘apalis-imx8_lvds_overlay.dts’ compiles successfully.
Overlay apalis-imx8_lvds_overlay.dtbo successfully applied.
warning: --force was used, bypassing checking overlays against the device tree.
‘apalis-imx8_atmel-mxt_overlay.dts’ compiles successfully.
Overlay apalis-imx8_atmel-mxt_overlay.dtbo successfully applied.
warning: --force was used, bypassing checking overlays against the device tree.
‘display-lt170410_overlay.dts’ compiles successfully.
Overlay display-lt170410_overlay.dtbo successfully applied.
Applying changes from STORAGE/dt.
Commit 11018b4602e0f1bbb18e1d0be3dc12cf52a51a9233e2d741cc969bb2e64caded has been generated for changes and is ready to be deployed.
Pulling OSTree with ref dto_deploy (checksum 11018b4602e0f1bbb18e1d0be3dc12cf52a51a9233e2d741cc969bb2e64caded) from local archive repository…
Starting http server to serve OSTree.
OSTree server listening on “localhost:41571”.
Starting OSTree pull on the device…
Deploying new OSTree on the device…
Deploying successfully finished.
Device reboot initiated…


The evaluation board restarted and I was only viewing from the DVI connector.

Is there any information that can be useful for solving the problem?

Best regards

Hi @LEADTECH ,

Did you try running the command with the --clear parameter, as I explained in my last response?

If that still doesn’t work, you can try manually enabling the overlays by editing a text file called overlays.txt present in the TorizonCore filesystem. It is located at:

/boot/ostree/torizon-<hash>/dtb/overlays.txt

Where <hash> is a hash related to OSTree like a78f8c22fbb8a2a6863a005b136a30ef0fc90c6694ebbcb72667a269c33e052e.

You probably have two directories named like this in /boot/ostree/, similar (but not identical) to this example:

torizon@apalis-imx8-06543292:~$ ls /boot/ostree/ -l
total 8
drwxr-xr-x 3 root root 4096 Jul 26 17:26 torizon-a78f8c22fbb8a2a6863a005b136a30ef0fc90c6694ebbcb72667a269c33e052e
drwxr-xr-x 3 root root 4096 Aug  3 22:52 torizon-e6900cdc2a0e920f9c93977740fd77ae0e254b234b9bf09858c6916e019e588d

Why are there two directories? If you do a filesystem/OSTree update in TorizonCore, it keeps the previous one as fallback in case the something goes wrong during the update. The dto deploy command under the hood effectively deploys a ‘new’ filesystem to the SoM, so that’s why you see two directories: one is related to the filesystem before enabling the overlays, and the other is related to it after you enabled them.

If you only have one directory then just change the overlays.txt file present there.

Each hash should be unique for each deployment, so the hashes in the example above will not be the same as yours.

Which /boot/ostree/torizon-<hash>/dtb/overlays.txt should you change? You can check which hash is the current deployment by seeing the output of

cat /proc/cmdline

The hash there is the one you want to change. You change both of them if you’re unsure.

In overlays.txt you list the overlays you want to enable. The contents of this file should be a single text line, and for the LVDS display it should be like this:

fdt_overlays=apalis-imx8_lvds_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo

Change overlays.txt like above (you must have sudo privileges to change this file) and reboot.

If you want to keep the DVI/HDMI signal as well as the LVDS one the contents of overlays.txt should instead be:

fdt_overlays=apalis-imx8_hdmi_overlay.dtbo apalis-imx8_lvds_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo

EDIT: Corrected overlays.txt path.

Best regards,
Lucas Akira

1 Like

Dear Lucas,
thanks for your support!!

I didn’t understand how to use the --clear command. can you give an example?

Attached, I’m also sending you the results of the various commands you suggested. So you can figure out my board configuration and paths:

Best regards
Lead Tech

Hi @LEADTECH ,

--clear is an optional argument to dto deploy as you can see in our documentation: TorizonCore Builder Tool - Commands Manual | Toradex Developer Center . You just need to type --clear when running the dto deploy command.

torizoncore-builder dto deploy --clear --remote-host 192.168.1.91 --remote-username torizon --remote-password torizon --force --reboot device-trees/overlays/apalis-imx8_lvds_overlay.dts device-trees/overlays/apalis-imx8_atmel-mxt_overlay.dts device-trees/overlays/display-lt170410_overlay.dts

Attached, I’m also sending you the results of the various commands you suggested. So you can figure out my board configuration and paths

I’ve typed the overlays.txt path incorrectly. It should be in

/boot/ostree/torizon-<hash>/dtb/overlays.txt

I’ll correct my previous message as well. Other than that my previous message still applies. Try changing overlays.txt like shown previously and it should work.

Best regards,
Lucas Akira