JauntyTouchscreenHandling

Revision 4 as of 2008-12-19 11:02:25

Clear message

Summary

Review the current situation of touchscreen handling in ubuntu, take a look at the work done upstream to unify all touchscreen Xorg drivers into evdev. Find the best calibration tool and setup UI to use for touchscreens and make sure it works with the hal-input model.

Release Note

Rationale

Use Cases

  1. A touchscreen on a single monitor (duh!)
  2. A touchscreen on one of multiple monitors (not currently supported)
  3. A few touchscreens on few of the monitors (not currently supported)
  4. Rotation of monitor with touchscreen and/or change of resolution on one of the monitors (not currently supported)

Assumptions

Design

Implementation

UI Changes

Code Changes

Migration

Test/Demo Plan

Unresolved issues

BoF agenda and discussion

A touchscreen is a device that takes finger input unlike a tablet which uses additional physical input devices and needs different calibration tools and steps

Eight touchscreen drivers for X, and 3 in the kernel - 5 sub-drivers merged upstream

Most common driver is evtouch. No calibration tool for any drivers, evtouch shipped the source code for one which was enabled in a basic manner in intrepid but is far from being perfect.

This is not a solution for all of the drivers -- only evtouch

There is work going on upstream to make evdev responsible for all of the touchscrens.

http://who-t.blogspot.com/2009/11/evdev-21-is-out.html

http://lists.freedesktop.org/archives/xorg/2008-September/039064.html

Søren Hauberg wrote a cairo/gtkmm based calibration tool that is supposed to work with evdev and put the right calibration data into hal

Plans

Can evdev replace all of the drivers? Create a prioritised list, draw a line in the sand and wait until evdev supports up to that.

- Common calibration tool is missing

- Hook into HAL for calibration data (see current evtouch implementation in intrepid (/etc/evtouch/config))

Standard approach for storing the data, like with xrandr and so on

Anything that uses /dev/input/<something> should just work

tslib should be investigated, it is used on N770/800/810 and a bunch of other boards -- supports both X and the framebuffer

Touchscreen drivers

xserver-xorg-input-tslib (0 bugs) (popcon: no data)

xserver-xorg-input-palmax (0 bugs) (popcon: 12)

xserver-xorg-input-evtouch (15 bugs) (popcon: 57)

xserver-xorg-input-elographics (1 bug) (popcon: 444)

xserver-xorg-input-elo2300 (0 bugs) (popcon: 0)

xserver-xorg-input-microtouch (0 bugs) (popcon: 13)

xserver-xorg-input-mutouch (0 bugs) (popcon: 14)

xserver-xorg-input-citron (0 bugs) (popcon: 16)

Is there an overlap between the Wacom tablets and touchscreens?

  • - Maybe evdev can support wacom some day for more than mouse usage? - Maybe wacom can grow input hotplug

Extended Calibration Mockups

http://people.ubuntu.com/~ogra/calibration_basic.png

http://people.ubuntu.com/~ogra/calibration_advanced.png

* Find users of other touchscreen drivers

* FDI files should be sent into bugs, not to the mobile list (see https://bugs.launchpad.net/bugs/307503)


CategorySpec