ThinkPad X1 Carbon 5th Gen

I chose between this machine, a Txxx and Dell. I went the easy route this time. Not much research, just needed a replacement. The rest is going to be about using the machine with GNU/Linux Ubuntu.

Ubuntu 17.04

General and summary

Out of the box, I actually ran the Windows installer, used Windows for a few hours, getting Ubuntu Desktop 17.04 ISO and put it on a USB stick. Rebooted, pressed enter to abort normal boot, selected USB device (it said multicard reader), worked as expected from that point - except for the pointing device(s).

Summary

  • All works out of the box (that I’ve tried), except for the trackpad - ie the touchpad and trackpoint (red dot thing between keys G, H and B). This device doesn’t show up under either fresh 16.04 LTS, nor 17.04.
  • My best current setup uses linux boot parameter i8042.reset i8042.nomux psmouse.proto=imps

Hardware Support and Features Tested

All of these are tested and works as expected:

  • wifi
  • monitor
  • USB-C multi-adapter with HDMI
  • USB-B ports
  • built-in speakers, but position has changed so sound is muffled when laptop is put in your lap (as in laptop)
  • webcam - takes 7 seconds to start though

Not yet tested:

  • wan, gsm
  • bluetooth
  • hdmi
  • headphone jack

Changelog

Added a line to 70-pointingstick.hwdb (after reading some thread on reddit, but it made no difference. xinput still doesn’t list the device:

ceda@lx1carbon5:~$ xinput
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]
    ↳ Integrated Camera                         id=9    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=10   [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                    id=12   [slave  keyboard (3)]

Changed BIOS to:

  • disable Security » Secure Boot » Secure Boot
  • enable Security » Virtualization » Intel (R) Virtualization Technology
  • enable Security » Virtualization » Intel (R) VT-d Feature
  • enable Config » USB » Always on USB » Charge in Battery Mode
  • disable Config » Beep and Alarm » Keyboard Beep

Three ideas where posted on Launchpad a long time ago.

a) Tried modprobe psmouse resetafter=0 - just got worse.

b) Tried i8042.nomux=1 in /etd/default/grub setting GRUB_CMDLINE_LINUX_DEFAULT, and then running update-grub2. Reboot. This made it a little better, ie it works more often but still completely unusable and unreliable.

b, then a) xinput now shows the device as PS/2 Generic Mouse.

c) Kernel boot argument acpi_osi=Linux - no improvement over any of options above.

Another idea to try out was found on ubuntuforums.org: i8042.reset i8042.nomux as boot parameters to Linux kernel. This had the best result, where the mouse was useable every 5-6 seconds, for a duration of less than a second.

Someone else had issues and tried different protocols: modprobe psmouse proto=imps and the imps protocol works for simple things, but scrolling seems to not be supported - or at least working - using this protocol.

Other

apt install openssh-server

ssh -X 192.168.1.232 ‘x2x -east -to :0’

This work by Fredrik Wendt is licensed under CC by-sa.