Lenovo ThinkPad X1 Carbon

This article or section does not follow the
Laptop page guidelines
.
Reason:
Needs a hardware table and a function keys section (Discuss in
Talk:Lenovo ThinkPad X1 Carbon
)
Lenovo ThinkPad X1 Carbon (X1C).
There is also a touch version. Comes without optical drive. 
Has UEFI BIOS with BIOS-legacy fallback mode.
Note
This article is about the 1st generation model introduced in 2012. For more recent generations, see
Category:Lenovo
.
Booting
Legacy-BIOS
Boot into your BIOS and change the boot mode to Legacy. Then simply follow the normal
installation guide
.
Hanging on "HWP enabled" message
This is due to a
bug
introduced in Linux 4.4. To work around it, add
intel_pstate=no_hwp
to your
kernel parameters
.
Hardware
Almost everything works out of the box.
Audio
Sound works out of the box.
Xbindkeys
For alternative window managers (Fluxbox, etc..), try installing
xbindkeys
and adding the following to
~/.xbindkeysrc
:
"amixer -c 0 set Master 1dB-"
  XF86AudioLowerVolume
"amixer -c 0 set Master 1dB+"
  XF86AudioRaiseVolume
Network
Wired networking works out of the box with the Ethernet to USB adapter. Wireless works out of the box using the
iwlwifi
module.
$ lspci
Network controller: Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 96)
Touchscreen
Works out of the box. To enable multi-touch, install
Touchegg
.
Video
The video card installed is Intel HD Graphics 4000. See
intel
for more info.
Brightness control
Default brightness adjustment keys work but need to be pressed multiple times to increase/decrease the screen brightness. Use either the
#Xbindkeys_2
or
#ACPI
methods to fix this.
Some desktop environments may lack granularity while changing brightness. This is due to the DE (e.g. gnome-settings-daemon) along with the internal graphics module changing the brightness when brightness adjustment keys are pressed causing multiple steps per press. To work around this add the
kernel parameter
video.brightness_switch_enabled=0
.
Xbindkeys
Install
xbindkeys
and append the following to
~/.xbindkeysrc
:
"xbacklight -dec 5"
  XF86MonBrightnessDown
"xbacklight -inc 5"
  XF86MonBrightnessUp
ACPI
Writing custom ACPI handlers for the brightness adjustment keys seems to have no effect. In order to use them properly you need to add the
kernel parameter
acpi_osi="!Windows 2012"
. See also
Backlight#ACPI
. Note that the ACPI backlight is
disabled by default
on Windows 8 hardware with a native backlight. Consider using the
#Xbindkeys
approach instead.
Wrong EDID for external display
With certain connectors (e.g. MiniDP to VGA), there is a bug getting EDID for the external screen while booting:
[ 93.736330] [drm:intel_dp_i2c_aux_ch] *ERROR* too many retries, giving up
This does not occur if the external screen is connected after booting.
The correct mode can be added per
xrandr#Adding undetected resolutions
:
xrandr --newmode 1920x1200_60 154 1920 1968 2000 2080 1200 1203 1209 1235 -hsync +vsync
xrandr --addmode DP1 1920x1200_60
xrandr --output DP1 --mode 1920x1200_60
KMS
Enable
KMS
using the
i915
module and by enabling VT in BIOS.
Webcam
Works out of the box. Tested with guvcview
Fingerprint Reader
Works out of the box with
Fprint
.
For a GUI,
fingerprint-gui
AUR
is already patched to work with the X1's newer fingerprint reader. To get the gui's dropdown to recognize your device, you will have to add your user to the
plugdev
group:
$ gpasswd -a <username> plugdev
See
fingerprint-gui
for more information about config
$ lsusb
147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode)
WWAN (Mobile broadband)
This model includes a
Ericsson H5321gw
adapter that can be used as a mobile broadband adapter and GPS.
The SIM-card must be inserted in the back of the laptop.
Add text to the following file and reboot
/etc/modprobe.d/avoid-mbib.conf
options cdc_ncm prefer_mbim=N
Tested OK with
NetworkManager
with
modemmanager
installed
$ lsusb
0bdb:1926 Ericsson Business Mobile Networks BV
GPS
Install
gpsd
and
mbm-gpsd-git
AUR
.
Add this to the following file
/etc/udev/rules.d/99-mbm.rules
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{ID_USB_INTERFACE_NUM}=="09", ENV{MBM_CAPABILITY}="gps_nmea"
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{ID_USB_INTERFACE_NUM}=="03", ENV{MBM_CAPABILITY}="gps_ctrl"
Reboot to reload udev rules.
Run
# mbm-gpsd
See if there is GPS-output
$ cat /dev/gps0
Run
# gpsd -b -N /dev/gps0
To test it
$ xgps
Or use e.g.
foxtrotgps
AUR
in
AUR
.
See
this link
for more info.
$ lsusb
0bdb:1926 Ericsson Business Mobile Networks BV
Keyboard backlight
Works out of the box. Use FN+Space
Bluetooth
First try to set up
Bluetooth
normally. If you get kernel error messages:
kernel: bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0a5c-21e6.hcd failed with error -2
kernel: Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0a5c-21e6.hcd not found
You need to manually install the proprietary firmware. The slackware wiki describes one way to do this:
https://www.slackwiki.com/Btfirmware-nonfree
.
Mouse/Touchpad
Works out of the box. See
TrackPoint
for additional details.
Docking
This model has no docking port.
Video for USB 3 Docking Stations currently is
not supported
, so you must use a
USB Port Replicator with Digital Video (USB 2.0)
This supports:
USB-devices connected to dock
Audio
Microphone
Ethernet
Video (see
DisplayLink
)
See also
Installing and configuring Arch Linux on ThinkPad X1 Carbon
https://www.thinkwiki.org/wiki/ThinkWiki