Friday, January 27, 2012

Toshiba Portege M400 Debian Linux Squeeze 6.0.3 Install Note #1 - Touchscreen

The M400 tablet PC has a Wacom touch screen electronics. This appears as a serial device. Because of this, there is no need to install wacom kernel drivers! This means there's nothing found by any of dmesg , lshw nor discover !


However Squeeze does not recognize the touch screen of the M400 tablet PC. So the command
xinput list
does not show the device.


This fix is to apply the above patch to the file /lib/udev/rules.d/69-xserver-xorg-input-wacom.rules. Then reboot.

Debug aids:
You can test the device by running
cat /dev/ttyS? | od
then move the pen around. On my machine I found that running the command
cat /dev/ttyS0 | od
produced output when my pen was moved. You may have to try all the /dev/ttyS* devices.

When patched and working, you will see this:
$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft Basic Optical Mouse v2.0 id=9 [slave pointer (2)]
⎜ ↳ PS/2 Mouse id=11 [slave pointer (2)]
⎜ ↳ AlpsPS/2 ALPS GlidePoint id=12 [slave pointer (2)]
⎜ ↳ Serial Wacom Tablet eraser id=13 [slave pointer (2)]
⎜ ↳ Serial Wacom Tablet id=14 [slave pointer (2)]

And hwinfo reports:

# hwinfo
10: udi = '/org/freedesktop/Hal/devices/pnp_WACf004_serial_platform_0'
linux.device_file = '/dev/ttyS0'
linux.hotplug_type = 2 (0x2)
linux.subsystem = 'tty'
info.capabilities = { 'serial' }
info.category = 'serial'
info.subsystem = 'tty'
info.product = 'Wacom Serial Tablet PC Pen Tablet/Digitizer'
linux.sysfs_path = '/sys/devices/pnp0/00:0c/tty/ttyS0'
info.parent = '/org/freedesktop/Hal/devices/pnp_WACf004'
info.udi = '/org/freedesktop/Hal/devices/pnp_WACf004_serial_platform_0'
serial.originating_device = '/org/freedesktop/Hal/devices/pnp_WACf004'
serial.device = '/dev/ttyS0'
serial.port = 0 (0x0)
serial.type = 'platform'