touch screen for jetson tx1 embedded device : what is possible ?

Hi all,

I’m working on an embedded vision project with a jetson tx1 module. For now, I use the jetson tx1 development kit to make a prototype with L4T 28.2 installed. For my application, I need a touch screen to have a video feedback of processed images and interact with the user (start and stop button, system configuration, …).

Currently I’m looking for the touch screen and I am lost after all that I can read on the forum. In some post, it is indicated that L4T is not compatible with touch screens. For example :

https://devtalk.nvidia.com/default/topic/1023325/jetson-tx2/touchscreen-with-tx2/post/5206410/#5206410
https://devtalk.nvidia.com/default/topic/1006873/jetson-tx1/mutil-touch-screen-driver-development/post/5140002/#5140002

On the other hand some people seem to use touch screens. For example: TX1 with iiyama 22 inch touchscreen display: https://devtalk.nvidia.com/default/topic/988568/jetson-tx1/qt-5-7-or-later-on-tx1-local-or-cross-/post/5279893/#5279893

Others manage to run screens for raspberry pi after more or less effort. Here some TK1 examples:
https://devtalk.nvidia.com/default/topic/730335/jetson-tk1/jetson-touchscreen/post/4665571/#4665571
https://devtalk.nvidia.com/default/topic/835433/jetson-tk1/chalk-elec-touchscreen-on-jetson-tk1/post/4543712/#4543712

Finally, in this post (https://devtalk.nvidia.com/default/topic/939413/jetson-tx1/jetson-tx1-touchscreen/post/4893832/#4893832), linuxdev says clearly: "Basically eDP and HDMI are Anything LVDS would take a lot of work. "
So, is it possible to use touch screens with jetson tx1 device and if not, why? Is there a big difference between tk1, tx1 and tx2 ?

For this product https://iiyama.com/en_us/products/prolite-tf1015mc-b1/ it is mentioned: “Linux (Kernel 3.11 & above is Plug & Play, Kernel 2.4 will need a separate driver download).” Is there a reason that it does not work? I thought L4T was an ubnutu distribution with just additionnal drivers?

Can this kind of product help: RESISTIVE TOUCH SCREEN TO USB MOUSE CONTROLLER - AR1100 (https://www.adafruit.com/product/1580)?

I’m really lost so if someone could clarify a little for me it would be really nice!

Thanks!
Fred

Sorry that we still don’t have touch panel support. I’ll leave this to other forum users to share.

Hello WayneWWW,
Ok, I understand that there is no official support for touch screens. What I do not understand is why? Since L4T is a linux distribution and some screens are compatible with linux, why these touch screens would not be supported. Maybe it’s obvious but I have limited knowledges in linux distributions.
Thanks
Fred

I have not set up touch screens, but I suspect this is entirely possible without modifications. The Xorg X11 server uses different “plugin” interfaces for different purposes. The obvious one everyone knows about is the NVIDIA GPU driver. There is also the XInput extension, e.g., a keyboard. Only the video portion is custom to this platform…all others are simply the stock Ubuntu packages.

That said, embedded systems don’t install everything by default the way a desktop PC does. To say something isn’t supported because it isn’t currently installed would be far from true…but to say it is inconvenient because it has to be installed manually would be very true. If you know what driver or software package provides this on a desktop PC, then you simply have to install this on the Jetson and it should work. The main trick is that some software is available for x86_64 which isn’t available on arm64/aarch64/ARMv8-a. Much of what is out there is available for arm64, and the cases where this isn’t true is often where there is some CPU-specific code involved (e.g., assembler or special instruction sets).

Find a touchscreen which you know works on a PC. Check what the drivers and user space software are. See if this is available in the Ubuntu arm64 repositories.

You might find it useful to know that this will tell you what kernel configuration is already existing on the Jetson:

gunzip < /proc/config.gz
# Or for browsing:
gunzip < /proc/config.gz | less

To see what packages already exist on any Ubuntu system:

dpkg -l
# Or for browsing:
dpkg -l | less

From the Jetson, to search for a package via some term or package name, e.g., to search for “touchscreen”:

apt search touchscreen

If you see a package from this latter search, then you know the currently searched repositories have that package in arm64/aarch64/ARMv8-a. If the package is not shown, then perhaps it is just in some non-default repository (or maybe it doesn’t exist for arm64).

Thank you linuxdev for your answer, it’s very clear and very helpful.

Hello,
I have just bought and received a iiyama PROLITE TF1015MC-B1 (10") touch screen . The screen and touch fonctionnalites (at least simple click, zoom with 2 finger) works out of the box with my jetson tx1.
Good day,