
It seems that the most common case for multi touch is "fingers on a touch screen", which usually (but not necessarily) means one person placing one or several fingers on a touch screen to perform some form of multi touch gesture. Second, is the device a single touch or multi touch device? In my case, I actually have multiple pens that will be operated by different persons, and as the pens can be in contact with the writing surface at the same time, I will set it up as a multi touch device. A touch screen or tablet stylus type device will normally report absolute screen coordinates.
#5 point multitouch driver
When creating a Linux driver for a pointer device, there are several choices you need to make.įirst, does the device report absolute or relative coordinates? A mouse type device will normally report relative coordinates, that is, coordinates relative to the pointers previous position. Note that I am by no means an expert in Linux driver development, so read this with a somewhat critical eye. "./myQtApp -plugin EvdevTouch"), my device was detected and started working!įor those interested, I will give some additional detail. It sure did help! I am very new to Qt (I did dabble a little with it many, many years ago), so I am still trying to find my way around.įollowing your advice, I found the EvdevTouch plugin, and by adding it to the command line (e.g. You might find there what you are looking for or need to modify in order to achieve what you want. There are several plugins to handle different aspects of evdev e.g. Kivy distinguishes between type A and type B devices, and correctly report the MT_TRACKING_ID for type said:Īdding to you should take a look at the the evdev plugins in Qt's sources. (I know that it is possible to get this to work, as e.g. the MT_TRACKING_ID is not carried through, but instead being replaced by an int, monotonically increasing for each new touch point detected, effectively treating all devices as type A. I have thus far been unable to get my unique IDs, and I worry that Qt "suffers" from the same behavior as e.g. Is it possible to get hold of the actual ID I set (with the MT_TRACKING_ID event) in a TouchPoint, and not only the sequentially generated int that seems geared towards "multiple fingers on a touch screen"?

As I know the identity of each pen, I wish to treat them as type B devices, so that I can keep track of them between touches (in practice, each pen will be operated by a different person, all working on a whiteboard application on a common, large screen, and I wish to be able to keep state per person, for example pen color, tip size, etc). I am working on a Linux evdev driver for a digital pen, and I am generating multitouch events using MT_TRACKING_ID to set a unique ID for each pen (there can be several active and in use on the screen at the same time).
