ETRA SBC/Interfaces and Connectors/Touchscreen

From DAVE Developer's Wiki
Jump to: navigation, search
Issue Date Notes


First Release
2023/09/01 Add USB touchscreen

Touchscreen interface[edit | edit source]

Description[edit | edit source]

The Touchscreen interface is available on USB or I2C interface connectors.

ETRA Evaluation Kit uses, by default, the USB interface for connecting the touchscreen controller. Anyway, the I2C interface is available too and - optionally - can be activated in the device tree for enabling the I2C touch controller driver.

USB touchscreen[edit | edit source]

The USB OTG port - available on J16 connector - is configured as USB Host controller for driving the touchscreen. For this purpose, it is required to enable the USB OTG ID signals a low. This can be possible using the S1.4 DIP switch which forces the ID signal as low:

Touchscreen connector
USB OTG ID set to low

I2C touchscreen[edit | edit source]

The I2C touchscreen interface is available on the Evaluation Kit at the connector J20. J20 is a 6-pin Molex PicoBlade connector for the I2C and control signals needed by most of the capacitive TSC.

This interface can be configured to work with 3.3V (default) or 5V power and signal levels.

Touchscreen connector

Signals[edit | edit source]

The following table describes the interface signals:

Pin# SOM Pin# Pin name Pin function Pin Notes
1 - DGND Ground
4 J18.101 TOUCH_VDD TSC power powered through a control switch
5 J18.201 TOUCH_INT TSC interrupt input
6 J18.199 TOUCH_RES TSC reset output

Device mapping[edit | edit source]

The device is typically mapped to /dev/touchscreen0 device in Linux.

The touch controller is attached to the generic Linux input event interface (evdev).

Device usage[edit | edit source]

The simplest tools for touch screen management are the tslib library and ts_tools utilities. To calibrate the touch screen, the ts_calibrate command line tool is available. After calibration, the touch screen can be tested using the graphical ts_test utility or the ts_print command line tool.