I am running SuSE-based embedded system with a touchscreen. The embedded application is a graphics application which uses OpenGL over X Window for graphics. We have a user-space touchscreen driver that reads the touch events and calls our callbacks. These callbacks simply forward the x,y events to the application.

We are refactoring the design and thinking to read touch input events through X11.

Can anyone tell me how to enable touchscreen for X11? How do I know if my touchscreen is supported by X11? If not, how to do it?


First and foremost, your touchscreen needs a kernel device driver. It may be compiled into the kernel or as a module. The loaded driver will generally create an event in /dev/input/. This event is used by X. You can test touch input event with evtest:

evtest /dev/input/event#

Additionally, the device should be listed by xinput:


xinput can also be used to list and set device properties:

xinput --list-props 8
xinput --set-int-prop 8 "Device Enabled" 8 0

Such settings can also be persisted in xorg.conf.

For more information, see http://linux.die.net/man/1/xinput.

Depending on the nature of the device driver, it may be necessary to register device info such as a device ID with the driver to activate the device.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.