Ubuntu on Thinkpad X41 – Enabling Thinkpad specific components

Table of Contents | Prev Post | Next Post

This is one of a number of posts detailing how to install Ubuntu 6.10 (codename Edgy) on a Thinkpad X41.

The Thinkpad X41 Tablet has some very cool features that unfortunately Ubuntu Edgy doesn’t support out of the box. This post details how to get them working.

To get the Tablet Pen working (source link):

  1. You may need your Ubuntu CD, so connect your external CD/DVD drive and insert the CD.
  2. Type: sudo apt-get install wacom-kernel-source xserver-xorg-input-wacom wacom-tools
  3. Restart your computer and log back in.
  4. Next check if /dev/wacom exists using
    ls -al /dev | grep wacom
  5. If it does exist:
    1. type sudo gedit /etc/X11/xorg.conf
    2. Check the file to see if InputDevice elements exist with the Identifiers stylus, eraser and cursor. If not, then add the following text to the bottom of the file. Note that pasting this text or editing it directly in gEdit may introduce invalid characters into your xorg.conf file, causing Ubuntu to fail on startup. So you’re better off typing in the text (I know, there’s a lot of it).
    3. Section "InputDevice"
      Driver "wacom"
      Identifier "stylus"
      Option "Device" "/dev/wacom"
      Option "Type" "stylus"
      Option "ForceDevice" "ISDV4"
      EndSection


      Section "InputDevice"
      Driver "wacom"
      Identifier "eraser"
      Option "Device" "/dev/wacom"
      Option "Type" "eraser"
      Option "ForceDevice" "ISDV4"
      EndSection


      Section "InputDevice"
      Driver "wacom"
      Identifier "cursor"
      Option "Device" "/dev/wacom"
      Option "Type" "cursor"
      Option "ForceDevice" "ISDV4"
      EndSection

    4. Find the “ServerLayout” section and add
    5. InputDevice "stylus" "SendCoreEvents"
      InputDevice "cursor" "SendCoreEvents"
      InputDevice "eraser" "SendCoreEvents"

    6. Every suspend/resume cycle drops the wacom, so save the file http://www.skynet.ie/~sos/ubuntu/20-setserial.sh to /etc/acpi/resume.d/
    7. Run the following command:
    8. sudo chmod +x /etc/acpi/resume.d/20-setserial.sh

    9. If the stylus still does not work after suspending (even after applying the fix above) try replacing all the “/dev/wacom“‘s in your xorg to “/dev/ttyS0“, and restart Ubuntu.

To get the trackpoint scrolling working, type:

  1. sudo gedit /etc/X11/xorg.conf
  2. Find the “Input Device” section whose “Identifier” is “Configured Mouse”, and add the following two lines to the section:
    Option “EmulateWheel” “true”
    Option “EmulateWheelButton” “2”

To get the auto-rotate of the screen working, where the screen switches to portrait mode when in tablet mode, do the following (this is copied more or less directly from here):

  1. Open a terminal and type acpi_listen. This should give the following result:
  2. ibm/hotkey HKEY 00000080 00005009
    ibm/hotkey HKEY 00000080 0000500a

  3. If the results are different, make sure to substitute your values for the values I use here.
  4. Save these two files to the /etc/acpi folder
    1. http://www.skynet.ie/~sos/ubuntu/x41tsdown.sh
    2. http://www.skynet.ie/~sos/ubuntu/x41tsup.sh
  5. Execute the following code
  6. sudo chown root.root /etc/acpi/x41tsdown.sh
    sudo chmod 755 /etc/acpi/x41tsdown.sh
    sudo chown root.root /etc/acpi/x41tsup.sh
    sudo chmod 755 /etc/acpi/x41tsup.sh

  7. The previous steps define what to do when the laptop screen being closed or opened fires a particular event. Now we must register these scripts to be fired when that event is triggered. Copy the following two files to /etc/acpi/events.
    1. http://www.skynet.ie/~sos/ubuntu/x41t-swivel-down
    2. http://www.skynet.ie/~sos/ubuntu/x41t-swivel-up
  8. Now restart the daemon that listens for these events. Type:
    sudo /etc/init.d/acpid force-reload
    sudo /etc/init.d/acpid restart
  9. If you would like a virtual keyboard to appear on the screen when you swivel down the screen, type:
  10. sudo apt-get install xvkbd

  11. Swivel your laptop screen to make sure it works, and you’re done!

12 thoughts on “Ubuntu on Thinkpad X41 – Enabling Thinkpad specific components

  1. I’m running 7.04 (Feisty Fawn?), though I had this same problem with 6.x – basically rotating and folding down does not seem to fire off the changes. Could you tell me if there is a way to map the x41 buttons to do the same? Perhaps that would work for me. . . . .

    Thanks!

  2. I don’t currently know how to map the X41 rotation button to an action. However, if the monitor swivel is not triggering the correct ACPI event (as I described in the post), you can always place an icon in your toolbar to execute the x41tsdown.sh and x41tsup.sh scripts.

    Right click on the main panel and choose “Add To Panel”.
    Click the “Custom Application Launcher” button.
    Fill in the Name field with something like “Swivel Down”.
    Fill in the command field with /etc/acpi/x41tsdown.sh

    Repeat these steps for the /etc/acpi/x41tsup.sh script.

  3. I’m running 7.10 and have the pen and mouse scrooling working. I noticed that the watcom device (option “Device” “/dev/wacom”) is no longer is the same place here is the new string (option “Device” “/dev/input/wacom”) this was aready in my xorg.conf

    Their was also another section in xorg.conf

    # Uncomment if you have a wacom tablet
    # InputDevice “stylus” “SendCoreEvents”
    # InputDevice “cursor” “SendCoreEvents”
    # InputDevice “eraser” “SendCoreEvents”
    InputDevice “Synaptics Touchpad”

    And well I of course uncommented the stylus cursor and eraser lines.

    I’m still having problems with the swiveling. I can get it to swivel but then everything just stops working right the mouse behave as if I am still in normal view and I can’t get it to swivel back without restarting gnome — any insight on this would be great!

  4. Just started with Ubuntu 9.10 and added your acpi shell scripts. They installed fine and it solves the screen orientation when the tablet is swiveled. But for some reason the digitizer is still oriented in landscape mode (but yet the mouse cursor isn’t)… it makes for very disoriented operation.

  5. The digitizer orientation could be due to a lack of wacom-kernel-source for Ubuntu 9.10. The other two wacom packages seem to have installed fine without it.

Leave a comment