May 9 2010

Getting Trackpoint scrolling working on a Lenovo X301 in Ubuntu 10.04 (Lucid)

Further to my previous post on this subject detailing how to get this to work on Ubuntu Karmic (9.10), here are details for getting it working in Lucid (10.04).

If you followed the previous instructions, you will want to remove the file created there:
rm /etc/hal/fdi/policy/thinkpad.fdi

Create the file /usr/lib/X11/xorg.conf.d/20-thinkpad.conf as root with the following content:

Section "InputClass"
Identifier "Trackpoint Wheel Emulation"
MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint"
MatchDevicePath "/dev/input/event*"
Option "EmulateWheel" "true"
Option "EmulateWheelButton" "2"
Option "Emulate3Buttons" "false"
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
EndSection

Restart X/Ubuntu and test!


Mar 11 2010

Getting Trackpoint scrolling working on a Lenovo X301 in Ubuntu 9.10 (Karmic)

Note: I’ve written another post about getting this working in Ubuntu Lucid (10.04).

To prove that I still have geek left in me, this post celebrates me getting my Trackpoint scrolling working in Ubuntu 9.10, though using a Trackpoint instead of the Touchpad probably qualifies me anyway. For those who don’t know what a Trackpoint is, it’s that little “nipple” in the centre of your keyboard.

My Lenovo Thinkpad X301 uses an Alps instead of Synaptics trackpad and thus requires a slightly different configuration to that I found when I Googled this solution.

What is required is to create /etc/hal/fdi/policy/thinkpad.fdi with the following contents and then reboot:

<?xml version="1.0" encoding="utf-8"?>
<deviceinfo version="0.2">
 <device>

 <!-- Trackpoint X301 -->
 <match key="info.product" string="DualPoint Stick">
 <merge key="input.x11_options.EmulateWheel" type="string">true</merge>
 <merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>
 <merge key="input.x11_options.EmulateWheelTimeout" type="string">200</merge>
 </match>

 <!-- Touchpad X301 -->
 <match key="input.product" string="AlpsPS/2 ALPS DualPoint TouchPad">
 <merge key="input.x11_driver" type="string">synaptics</merge>
 <merge key="input.x11_options.SHMConfig" type="string">true</merge>
 </match>

 </device>
</deviceinfo>