A Simple Industrial Touch Screen Driver for Ubuntu Linux

Ubuntu Linux Desktop
Ubuntu Linux Desktop

More and more often, our industrial touch screen customers are taking advantage of the open source Linux operating system, Ubuntu. Ubuntu has evolved into a versatile, easy-to-configure environment with a large community following and massive support from the company Canonical. We have seen a steady increase in calls from customers leveraging Linux in industrial environments, and in recent years Ubuntu has been leading the charge. In addition to the standard Elo-provided Linux driver, Ubuntu users now have a very simple touch screen driver solution that requires no new software.

Update Jan. 2018 – for a more recent overview of Hope Industrial Touch Screen compatibility with Linux operating systems, see this post.

The easiest connection interface for using your touch screen with Ubuntu is via USB. You will notice that when most Hope Industrial Systems touch screens are connected to an Ubuntu 12.04 system, it will immediately respond to touch albeit with an inverted Y axis. The standard Ubuntu desktop installation is actually prepackaged with the “Xorg touchscreen driver,” which uses the Xinput protocol. This is what enables our touch screens to work with Ubuntu right out of the box. The only trick is to calibrate the screen to correct the cursor inversion and precisely align the cursor to your finger.

Ubuntu Software Center
Ubuntu Software Center

If you open the Ubuntu Software Center and do a search for “calibrate touchscreen,” the first result you will see will be a software package by the same name. The actual name for the program is Xinput_Calibrator and alternatively is supported on several other flavors of Linux. More information can be find on its webpage. Just install the package by clicking “Install.” Once complete, it should create an icon on your launcher. After the installation is complete, initiate the calibration by clicking the icon in your launcher or do a search for “calibrate touchscreen” from the Ubuntu dash search bar.

Ubuntu Touch Screen Calibration
Ubuntu Touch Screen Calibration

It’s important to note the message that pops up after the calibration is complete. In order to retain the calibration settings after you shutdown or reboot, you will need to create a configuration file with these settings. First, note that the “MatchProduct” is recognized as an Elo device. If not, disconnect and reconnect your touch screen and try calibrating again. Next, copy the required settings by highlighting everything from the beginning of “Section ‘InputClass’” to the end of “EndSection,” right click on the highlighted text and select COPY. Next, you’ll need to first create the directory referenced by Xinput_calibrator for the configuration file location, then open the configuration file for editing. This can easily be done by running the following two commands:

sudo mkdir /etc/X11/xorg.conf.d
sudo gedit /etc/X11/xorg.conf.d/99-calibration.conf

Once the editor is open, paste your configuration, save the file, then close it, and that’s it! If you’d like to implement a “right click on hold” feature just like the Windows feature, then add this line of code above “EndSection”:

Option  "EmulateThirdButton" "On"

We’ve found this to be a great, fast way to get your touch screen up and running on Ubuntu 12.04 LTS and 14.04 LTS. Our research found it can even work on some old versions of Ubuntu, and according to the Xinput_calibrator website it can work with a number of Linux distributions.

7 Responses to “A Simple Industrial Touch Screen Driver for Ubuntu Linux”

  1. How can I use this on a Ubuntu14. I can see it works on Ubuntu12.

    Please email me the process for Ubuntu 14. When I am trying to do it, I dont see any errors but still the touchscreen is not working.

    Please help.

    Thanks,
    Krishna

  2. This is valid to UBUNTU 16.04 which we are using on our production machines. The installation was quick and painless (unlike most other things in ubuntu.) Also, the screen worked without calibration, but did so by seeming to shrink the effective work area. Calibration fixed this entirely.

  3. Philip Risser

    Thank you for the write up. I am using the product found at

    https://www.hopeindustrial.com/products/panel-mount-monitors/17-panel-mount-monitor/?power_input=AC&window_option=Resistive%20Elo&bezel_enclosure=Stainless%Steel

    on Ubuntu 18.04.1 LTS. I have followed all the above instructions and have been unable to get my screen calibrated.

    My issue appears to be inaccurate bounds, where all touch points appear to be proportionally closer to the center the farther you get to the corners. In other words, when touching the very center of the screen the touch registers at the exact correct location. As you move to the top right edge of the screen, the touch will register further and further away in down and to the left. As you move to the bottom right, the touch will register further and further up and to the right.

    I have been unable to get the drivers to recognize what I assume must be the correct screen bounds. I don’t know where the error is coming from at this point, but I would appreciate some help to resolve it.

    Philip

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>