Difference between revisions of "Lenovo ThinkPad X230"

From ArchWiki
Jump to navigation Jump to search
(Split power Saving from system configuration)
m (Flashing "Heads")
 
(60 intermediate revisions by 17 users not shown)
Line 1: Line 1:
 
[[Category:Lenovo]]
 
[[Category:Lenovo]]
Lenovo ThinkPad X230 comes with a wide range of available configurations. Since Lenovo's acquisition of the ThinkPad brand from IBM, it has received lots of negative criticism for not maintaining the original quality and compromising the brand itself. Regardless, ThinkPad still is one of the first preferences for many geeks, students (mainly due to student discounts) and Linux users. It is the standard option available in Lenovo's X Series under 12-13 inches display category.
+
[[ja:Lenovo ThinkPad X230]]
 +
{{Related articles start}}
 +
{{Related|fprint}}
 +
{{Related|TrackPoint}}
 +
{{Related|HiDPI}}
 +
{{Related articles end}}
  
== Hardware ==
+
Lenovo ThinkPad X230 [https://pcsupport.lenovo.com/en/en/products/laptops-and-netbooks/thinkpad-x-series-laptops/thinkpad-x230 official page], [http://psref.lenovo.com/syspool/Sys/PDF/withdrawnbook/ThinkPad_X230.pdf datasheet], [https://us.download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles_pdf/x230_x230i_hmm_en_0b48666_01.pdf hardware maintenance manual].
=== Tested Configuration ===
 
{{Tip|Below were the tested configurations at the time. If you are interested in more details and review, see the gist [https://gist.github.com/bassu/8478346 A Hacker's Ongoing Review for Lenovo ThinkPad X230] for full details.}}
 
{| class="wikitable sortable"
 
! Feature !! Configuration
 
|-
 
|System||X230 2306CTO
 
|-
 
|CPU||Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
 
|-
 
|Graphics||Intel HD 4000 - Ivy Bridge
 
|-
 
|Ram||3.5GB (Kingston)
 
|-
 
|Disk||Crucial M4 120GB SSD
 
|-
 
|Display||12.5" IPS
 
|-
 
|Wireless||2x2 Centrino Wireless-N 2200
 
|-
 
|Built-in Battery||9 Cell
 
|-
 
|Additional Plugable Battery||6 Cell 19+
 
|-
 
|Backlit Keyboard||No
 
|-
 
|ThinkLight||Yes
 
|-
 
|Fingerprint Scanner||Yes
 
|-
 
|Bluetooth||Yes
 
|-
 
|Cam||Yes
 
|}
 
  
== System Configuration ==
+
== Configuration ==
  
=== Fingerprint scanner ===
+
=== Kernel ===
Works out of the box. See [[fprint]] article for installation instructions. No extrac actions are needed.
 
  
=== Kernel ===
 
{{Note|You may want to run patched kernels instead of the default kernel to conserve power. See power saving section below}}
 
 
{{hc|/etc/mkinitcpio.conf|2=<nowiki>
 
{{hc|/etc/mkinitcpio.conf|2=<nowiki>
 
MODULES="i915"
 
MODULES="i915"
BINARIES="badblocks"
 
FILES="/etc/modprobe.d/modprobe.conf"
 
HOOKS="base udev autodetect block filesystems keyboard fsck"
 
</nowiki>
 
}}
 
{{hc|/etc/modprobe.d/modprobe.conf|2=<nowiki>
 
options i915 enable_rc6=1 enable_fbc=1 lvds_downclock=1
 
options iwlwifi 11n_disable=1
 
 
</nowiki>
 
</nowiki>
 
}}
 
}}
The {{ic|badblocks}} binary helps fix logical bad blocks if detected by fsck during system startup. The first line in modprobe.conf file enables different Intel HD power saving options. To see what each of the parameters does, issue the command {{ic|modinfo i915}}. The second line disables the wifi N mode as the Intel wireless driver suffers connection loss due to possible bugs. You can comment out this line if you want to transfer data at wireless N speeds.
 
  
After saving the above files, make sure to regenerate your init ram image by the command {{ic|mkinitcpio -p linux}}.
+
After saving the above files, make sure to regenerate your init ram image by the command {{ic|mkinitcpio -p linux}}, and follow the steps in [[kernel parameters]].
  
If you have the [[Linux-ck]] kernel installed, don't forget to regenerate the initcpio as well using {{ic|mkinitcpio -p linux-ck}}.
+
=== Screen ===
  
Then, to update grub2 with the new kernels you have to run {{ic|grub-mkconfig -o /boot/grub/grub.cfg}}.
+
X230 has IPS or TN screen with 125.37 DPI. Refer to [[HiDPI]] page for more information. It can be set with command {{ic|xrandr --dpi 125.37}} using .xinitrc or other autostarts.
  
{{Note|Using '''enable_rc6&#61;1''' will enable basic power saving with first stage of [http://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface#Processor_states C-state 6] [http://software.intel.com/en-us/blogs/2013/06/03/intel-xeon-phi-coprocessor-power-management-part-2a-core-c-states-the-details (sleeping state)]. The stages vary by the depth of sleep, that can be attained by setting the value of '''enable_rc6''' between 1 to 7 in ascending order as can be seen in its documentation with '''modinfo i915''' command shown above.}}
+
See [[Intel]] for driver choice.
{{Warning|Keep in mind that c-state power saving always comes at performance sacrifice and setting a higher value can cause a jittery display or some other unexplained and unexpected misbehavior with i915 so you may want to experiment with different values to find out what suits your needs.}}
 
  
=== TrackPoint scrolling (wheel emulation) ===
+
=== Brightness ===
  
{{Merge|TrackPoint}}
+
If you experience that your brightness setting is not restored on resume from suspend, then create {{ic|/usr/share/X11/xorg.conf.d/20-intel.conf}} with the following content.
  
To enable scrolling with the TrackPoint while holding down the middle mouse button, create a new file /etc/X11/xorg.conf.d/20-thinkpad.conf with the following content:
+
{{hc|/usr/share/X11/xorg.conf.d/20-intel.conf|
 +
Section "Device"
 +
Identifier "card0"
 +
Driver "intel"
 +
Option "Backlight" "intel_backlight"
 +
BusID "PCI:0:2:0"
 +
EndSection
 +
}}
  
Section "InputClass"
+
=== Touchpad ===
    Identifier "Trackpoint Wheel Emulation"
 
    MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device"
 
    MatchDevicePath "/dev/input/event*"
 
    Option "EmulateWheel" "true"
 
    Option "EmulateWheelButton" "2"
 
    Option "Emulate3Buttons" "false"
 
    Option "XAxisMapping" "6 7"
 
    Option "YAxisMapping" "4 5"
 
EndSection
 
  
There are more details about how this works on the [[Xorg#InputClasses|Xorg]] page.
+
The original configuration renders the touchpad quite useless, as it behaves very jumpily. [https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/1042069/comments/5 Ubuntu Bugtracker] offers a solution for this issue. Add the following
 
 
=== Touchpad ===
 
The original configuration renders the touchpad quite useless, as it behaves very jumpily. [[https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/1042069/comments/5 Ubuntu Bugtracker]] offers a solution for this issue. Add the following
 
  
 
{{hc|/etc/X11/xorg.conf.d/50-synaptics.conf|2=<nowiki>
 
{{hc|/etc/X11/xorg.conf.d/50-synaptics.conf|2=<nowiki>
Line 113: Line 67:
 
         Option "HorizHysteresis" "100"
 
         Option "HorizHysteresis" "100"
 
         Option "VertHysteresis" "100"
 
         Option "VertHysteresis" "100"
 +
        # fix touchpad scroll speed
 +
        Option "VertScrollDelta" "500"
 +
        Option "HorizScrollDelta" "500"
 
EndSection
 
EndSection
 
</nowiki>
 
</nowiki>
Line 119: Line 76:
 
Setting e.g. the motion-acceleration value in dconf to 2.8 works nicely.
 
Setting e.g. the motion-acceleration value in dconf to 2.8 works nicely.
  
=== Backlight Control Keys ===
+
=== Backlight control keys ===
 +
 
 
{{Note| On most X230 models, backlight works by default without any issues. Use below only in case of any problems.}}
 
{{Note| On most X230 models, backlight works by default without any issues. Use below only in case of any problems.}}
 +
 
Due to an issue with the firmware of several ThinkPads the backlight control keys (fn + F8/F9 on the X230) don't work correctly. Setting the brightness via e.g. the GNOME power control panel or altering the brightness value in sysfs is possible.
 
Due to an issue with the firmware of several ThinkPads the backlight control keys (fn + F8/F9 on the X230) don't work correctly. Setting the brightness via e.g. the GNOME power control panel or altering the brightness value in sysfs is possible.
  
The issue can be temporarily and partially fixed in adding the acpi_osi="!Windows 2012" kernel parameter in
+
The issue can be temporarily and partially fixed in adding the acpi_osi="!Windows 2012" [[kernel parameter]]. The fix is partial in that only 8 steps are accessible via the keys. See [https://bugzilla.kernel.org/show_bug.cgi?id=51231] for details.
 
 
{{hc|/etc/default/grub|2=<nowiki>
 
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi=\"!Windows 2012\""
 
 
 
sudo grub-mkconfig -o /boot/grub/grub.cfg
 
</nowiki>
 
}}
 
 
 
The fix is partial in that only 8 steps are accessible via the keys.
 
 
 
For more information see https://bugzilla.kernel.org/show_bug.cgi?id=51231 .
 
  
 
=== Suspend to ram ===
 
=== Suspend to ram ===
Sleep/suspension and unsuspension can be easily managed by systemd without setting it up in Desktop Environment applet or pm-utils. But there are some modules that must be loaded off and on every time the system is put to sleep or is awaken. There's also a need to kill wpa_supplicant by adding {{ic|<nowiki>systemctl restart wpa_supplicant.service</nowiki>}} in the {{ic|<nowiki>sleep.sh</nowiki>}} file below. And it is quite fast with systemd anyway.
 
 
{{hc|/usr/lib/systemd/system-sleep/sleep.sh|2=<nowiki>
 
#!/bin/bash
 
if [ "$1" = "pre" ]; then
 
killall -9 wpa_supplicant #nm-applet bug's workaround
 
fi
 
 
if [ "$1" = "post" ]; then
 
        /sbin/modprobe -rvf iwldvm
 
        /sbin/modprobe -rvf iwlwifi
 
/sbin/modprobe -v iwldvm
 
/sbin/modprobe -v iwlwifi
 
  
fi
+
There is an issue with system shutdown with power saving tools that cannot distinguish sys devices. You will need to add to the systemd shutdown trigger on this machine or else you'll get a system reboot when you shutdown the machine. Put this in /etc/rc.local.shutdown and update and enable its service, if not already.
  
</nowiki>
 
}}
 
Put vboxdrv in it too, if you use VirtualBox.
 
There is also an issue with system shutdown with power saving tools that cannot distinguish sys devices. You will need to add to the systemd shutdown trigger on this machine or else you'll get a system reboot when you shutdown the machine. Put this in /etc/rc.local.shutdown and update and enable its service, if not already.
 
 
{{hc|/etc/rc.local.shutdown|2=<nowiki>
 
{{hc|/etc/rc.local.shutdown|2=<nowiki>
 
#!/bin/bash
 
#!/bin/bash
Line 162: Line 93:
 
# A script to act as a workaround for the bug in the runtime power management module, which causes thinkpad laptops to restart after shutting down.  
 
# A script to act as a workaround for the bug in the runtime power management module, which causes thinkpad laptops to restart after shutting down.  
 
# Bus list for the runtime power management module.
 
# Bus list for the runtime power management module.
buslist="pci i2c"
+
buslist="pci i2c usb"
 
for bus in $buslist; do                                                             
 
for bus in $buslist; do                                                             
 
   for i in /sys/bus/$bus/devices/*/power/control; do                               
 
   for i in /sys/bus/$bus/devices/*/power/control; do                               
Line 184: Line 115:
 
StandardInput=tty
 
StandardInput=tty
 
RemainAfterExit=yes
 
RemainAfterExit=yes
 +
 +
[Install]
 +
WantedBy=shutdown.target
 
</nowiki>
 
</nowiki>
 
}}
 
}}
  
==== Suspend to ram fails ====
+
=== UMTS Modem ===
  
As of kernel 3.10 and 3.11 suspend may fail because the kernel tries to switch off the onboard ethernet device twice (see http://forums.fedoraforum.org/archive/index.php/t-293457.html).
+
Some models come with an integrated USB UMTS modem.  
  
A workaround is to unload the driver manually and reload it on wake.
+
{{hc|$ lsusb -d 0bdb:1926|
 +
Bus 003 Device 004: ID 0bdb:1926 Ericsson Business Mobile Networks BV H5321 gw Mobile Broadband Driver}}
 +
  
{{hc|/usr/lib/systemd/system-sleep/e1000e-probe.sh|2=<nowiki>
+
In order for it to work with [[NetworkManager]], you will need to install [https://www.archlinux.org/packages/?name=modemmanager ModemManager] from the official repositories.
#!/bin/bash
+
 
# /usr/lib/systemd/system-sleep/e1000e-probe.sh
+
For it to be recognized by ModemManager, you also need to set the kernel module option to:
# handles e1000e driver suspend problems:
+
 
# pci_pm_suspend(): e1000_suspend+0x0/0x20 [e1000e] returns -2
+
{{hc|/etc/modprobe.d/umts-modem.conf|output=
# dpm_run_callback(): pci_pm_suspend+0x0/0x150 returns -2
+
options cdc_ncm prefer_mbim=N
# PM: Device 0000:00:19.0 failed to suspend async: error -2
+
}}
# PM: Some devices failed to suspend
+
 
 +
=== Fan control ===
 +
 
 +
To optimize fan control, install and setup [[Fan_speed_control#ThinkPad_laptops|thinkfan]]. Then use the following configuration:
 +
 
 +
{{hc|/etc/thinkfan.conf|output=
 +
 
 +
tp_fan /proc/acpi/ibm/fan
 +
hwmon /sys/class/thermal/thermal_zone0/temp
  
case "$1" in
+
(0, 0,  60)
  "pre") rmmod e1000e
+
(1, 53, 65)
  ;;
+
(2, 55, 66)
  "post") modprobe e1000e
+
(3, 57, 68)
  ;;
+
(4, 61, 70)
esac
+
(5, 64, 71)
</nowiki>
+
(7, 68, 32767)
 
}}
 
}}
  
=== Microphone ===
+
== Trusted Platform Module ==
 +
 
 +
Laptop has [[Trusted Platform Module|TPM]] 1.2 chip onboard[https://www.st.com/en/secure-mcus/st33tpm12lpc.html][https://trustedcomputinggroup.org/membership/certification/tpm-certified-products/]. It doesn't looks like it can be upgraded to TPM 2.0. Setting an UEFI "Supervisor password" may be necessary in order to clear owner.
 +
 
 +
== USB BIOS update ==
 +
 
 +
You can use {{AUR|geteltorito}} to create bootable USB images from the BIOS update ISO.
 +
It is as easy as:
  
If the built-in microphone is not detected / available when using PulseAudio, the steps here may fix the issue: [[PulseAudio/Troubleshooting#Microphone_not_detected_by_PulseAudio]].
+
$ geteltorito.pl g2uj24us.iso > update.img
 +
# dd bs=512K if=update.img of=/dev/sdX
  
 
== Power Saving ==
 
== Power Saving ==
 
{{Stub|many different tweaks combined into a single section}}
 
  
 
Follow the main article: [[Power saving]]
 
Follow the main article: [[Power saving]]
  
{{Tip|<nowiki>The parameter pcie_aspm may not be needed in the more recent 3.9+ kernels. Don't enable pcie_aspm if dmesg | grep -i "doesn't support pcie aspm" is true because even if you do, kernel will still keep it disabled.</nowiki>}}
+
Power saving [[kernel parameters]] in addition to graphics card power saving, are shown below. {{ic|<nowiki>acpi_backlight=vendor</nowiki>}} loads the vendor specific [[Backlight#ACPI]] driver (i.e. thinkpad_acpi) so the brightness keys (Fn + F8 and Fn + F9) work correctly.
{{Tip|You can select a different patched kernel for desired speed vs performance requirement. See [[Kernels]] for details. There is also [[Power_saving]] wiki for reducing battery usage.}}
 
 
 
One option is to use [[Powerdown]] to save power. On this setup, it gave 14+ hours on a 9 cell battery and 6+ hours on plugable 6 cell external battery, with normal usage of cmus, firefox and thunderbird.
 
Power saving kernel parameters in addition to graphics card power saving, are shown below.
 
{{hc|grep GRUB_CMDLINE /etc/default/grub|2=<nowiki>
 
GRUB_CMDLINE_LINUX_DEFAULT="quiet ipv6.disable=1 elevator=bfq"
 
GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd pcie_aspm=force acpi_backlight=vendor"
 
</nowiki>
 
}}
 
The parameter {{ic|<nowiki>elevator=bfq</nowiki>}} enables the Budget Fair Queueing storage IO scheduler, see http://algo.ing.unimo.it/people/paolo/disk_sched/ for details. {{ic|<nowiki>pcie_aspm=force</nowiki>}} forcefully enables the [[Laptop#PCI-e_ASPM|PCIE Active State Power Management]] and {{ic|<nowiki>acpi_backlight=vendor</nowiki>}} loads the vendor specific [[Backlight#ACPI]] driver (i.e. thinkpad_acpi) so the brightness keys (Fn + F8 and Fn + F9) work correctly. After editing the grub file, make sure to regenerate your grub configuration by the command {{ic|grub-mkconfig -o /boot/grub/grub.cfg}}.
 
  
 
Note that the {{ic|<nowiki>acpi_backlight=vendor</nowiki>}} kernel option also works with the standard Arch kernel (currently 3.7.10-1) and has the additional bonus that (Fn + spacebar) controls the keyboard lighting.
 
Note that the {{ic|<nowiki>acpi_backlight=vendor</nowiki>}} kernel option also works with the standard Arch kernel (currently 3.7.10-1) and has the additional bonus that (Fn + spacebar) controls the keyboard lighting.
Line 245: Line 185:
 
}}
 
}}
  
=== Example Results ===
+
== x230T (tablet version) ==
This section is intended to share average power use of the X230 with different system configurations. Average power use was estimated with the discharge rate reported by [[Powertop]]. Please include links to your configuration files.
+
 
 +
=== Multitouch screen for the x230t (tablet version) ===
 +
 
 +
{{Note| Some x230t models have a multitouch screen in addition to the wacom tablet.}}
 +
 
 +
Works out of the box with {{Pkg|xf86-input-libinput}}.
 +
 
 +
=== Wacom tablet input ===
 +
 
 +
Works out of the box with {{Pkg|xf86-input-wacom}}. See [[Wacom tablet]]
 +
 
 +
== Not Working ==
 +
 
 +
* Microphone on-off key does not work out of the box. [https://makandracards.com/makandra/47162-how-to-enable-the-thinkpad-microphone-mute-key-on-ubuntu-16-04 Solution]
 +
 
 +
{{Note| It works out of the box with GNOME.}}
 +
 
 +
* There is a BIOS bug that gets in the way of the boot process with LUKS and full-disk encryption. The user is stuck at the "Loading initial ramdisk" step, and does not see a password prompt to unlock the encrypted device. You can actually enter your password at this step, and boot-up will continue. However, updating the BIOS will resolve this completely.
 +
 
 +
== See also ==
  
{| class="wikitable sortable"
+
* [https://gist.github.com/bassu/8478346 A Hacker's Ongoing Review for Lenovo ThinkPad X230]
! Model !! DE/WM !! TLP !! GRUB Parameters !! Discharge rate (Watt)
+
* [http://osresearch.net/Installing-Heads.html Installing "Heads" and using TPM]
|-
 
|X230||Pantheon (elementary OS)||[https://gist.github.com/orschiro/7dcb6079091fd413a272#file-tlp yes]||none||9.27
 
|}
 

Latest revision as of 20:09, 11 November 2019

Lenovo ThinkPad X230 official page, datasheet, hardware maintenance manual.

Configuration

Kernel

/etc/mkinitcpio.conf
MODULES="i915"

After saving the above files, make sure to regenerate your init ram image by the command mkinitcpio -p linux, and follow the steps in kernel parameters.

Screen

X230 has IPS or TN screen with 125.37 DPI. Refer to HiDPI page for more information. It can be set with command xrandr --dpi 125.37 using .xinitrc or other autostarts.

See Intel for driver choice.

Brightness

If you experience that your brightness setting is not restored on resume from suspend, then create /usr/share/X11/xorg.conf.d/20-intel.conf with the following content.

/usr/share/X11/xorg.conf.d/20-intel.conf
Section "Device"
Identifier "card0"
Driver "intel"
Option "Backlight" "intel_backlight"
BusID "PCI:0:2:0"
EndSection

Touchpad

The original configuration renders the touchpad quite useless, as it behaves very jumpily. Ubuntu Bugtracker offers a solution for this issue. Add the following

/etc/X11/xorg.conf.d/50-synaptics.conf
Section "InputClass"
        Identifier "touchpad"
        MatchProduct "SynPS/2 Synaptics TouchPad"
        # MatchTag "lenovo_x230_all"
        Driver "synaptics"
        # fix touchpad resolution
        Option "VertResolution" "100"
        Option "HorizResolution" "65"
        # disable synaptics driver pointer acceleration
        Option "MinSpeed" "1"
        Option "MaxSpeed" "1"
        # tweak the X-server pointer acceleration
        Option "AccelerationProfile" "2"
        Option "AdaptiveDeceleration" "16"
        Option "ConstantDeceleration" "16"
        Option "VelocityScale" "20"
        Option "AccelerationNumerator" "30"
        Option "AccelerationDenominator" "10"
        Option "AccelerationThreshold" "10"
	# Disable two fingers right mouse click
	Option "TapButton2" "0"
        Option "HorizHysteresis" "100"
        Option "VertHysteresis" "100"
        # fix touchpad scroll speed
        Option "VertScrollDelta" "500"
        Option "HorizScrollDelta" "500"
EndSection

Setting e.g. the motion-acceleration value in dconf to 2.8 works nicely.

Backlight control keys

Note: On most X230 models, backlight works by default without any issues. Use below only in case of any problems.

Due to an issue with the firmware of several ThinkPads the backlight control keys (fn + F8/F9 on the X230) don't work correctly. Setting the brightness via e.g. the GNOME power control panel or altering the brightness value in sysfs is possible.

The issue can be temporarily and partially fixed in adding the acpi_osi="!Windows 2012" kernel parameter. The fix is partial in that only 8 steps are accessible via the keys. See [1] for details.

Suspend to ram

There is an issue with system shutdown with power saving tools that cannot distinguish sys devices. You will need to add to the systemd shutdown trigger on this machine or else you'll get a system reboot when you shutdown the machine. Put this in /etc/rc.local.shutdown and update and enable its service, if not already.

/etc/rc.local.shutdown
#!/bin/bash
# /etc/rc.local.shutdown: Local shutdown script.
# A script to act as a workaround for the bug in the runtime power management module, which causes thinkpad laptops to restart after shutting down. 
# Bus list for the runtime power management module.
buslist="pci i2c usb"
for bus in $buslist; do                                                             
  for i in /sys/bus/$bus/devices/*/power/control; do                              
    echo on > $i
  done
done
/usr/lib/systemd/system/rc-local-shutdown.service
[Unit]
Description=/etc/rc.local.shutdown Compatibility
ConditionFileIsExecutable=/etc/rc.local.shutdown
DefaultDependencies=no
After=rc-local.service basic.target
Before=shutdown.target

[Service]
Type=oneshot
ExecStart=/etc/rc.local.shutdown
StandardInput=tty
RemainAfterExit=yes

[Install]
WantedBy=shutdown.target

UMTS Modem

Some models come with an integrated USB UMTS modem.

$ lsusb -d 0bdb:1926
Bus 003 Device 004: ID 0bdb:1926 Ericsson Business Mobile Networks BV H5321 gw Mobile Broadband Driver


In order for it to work with NetworkManager, you will need to install ModemManager from the official repositories.

For it to be recognized by ModemManager, you also need to set the kernel module option to:

/etc/modprobe.d/umts-modem.conf
options cdc_ncm prefer_mbim=N

Fan control

To optimize fan control, install and setup thinkfan. Then use the following configuration:

/etc/thinkfan.conf
tp_fan /proc/acpi/ibm/fan
hwmon /sys/class/thermal/thermal_zone0/temp

(0, 0,  60)
(1, 53, 65)
(2, 55, 66)
(3, 57, 68)
(4, 61, 70)
(5, 64, 71)
(7, 68, 32767)

Trusted Platform Module

Laptop has TPM 1.2 chip onboard[2][3]. It doesn't looks like it can be upgraded to TPM 2.0. Setting an UEFI "Supervisor password" may be necessary in order to clear owner.

USB BIOS update

You can use geteltoritoAUR to create bootable USB images from the BIOS update ISO. It is as easy as:

$ geteltorito.pl g2uj24us.iso > update.img 
# dd bs=512K if=update.img of=/dev/sdX

Power Saving

Follow the main article: Power saving

Power saving kernel parameters in addition to graphics card power saving, are shown below. acpi_backlight=vendor loads the vendor specific Backlight#ACPI driver (i.e. thinkpad_acpi) so the brightness keys (Fn + F8 and Fn + F9) work correctly.

Note that the acpi_backlight=vendor kernel option also works with the standard Arch kernel (currently 3.7.10-1) and has the additional bonus that (Fn + spacebar) controls the keyboard lighting.

TLP

Users of TLP need to pay attention to a hardware bug according to which it is recommended to only use either the upper or lower charging threshold. The following configuration is recommended by the developer of TLP.[1]

/etc/default/tlp
START_CHARGE_THRESH_BAT0=67
STOP_CHARGE_THRESH_BAT0=100

x230T (tablet version)

Multitouch screen for the x230t (tablet version)

Note: Some x230t models have a multitouch screen in addition to the wacom tablet.

Works out of the box with xf86-input-libinput.

Wacom tablet input

Works out of the box with xf86-input-wacom. See Wacom tablet

Not Working

  • Microphone on-off key does not work out of the box. Solution
Note: It works out of the box with GNOME.
  • There is a BIOS bug that gets in the way of the boot process with LUKS and full-disk encryption. The user is stuck at the "Loading initial ramdisk" step, and does not see a password prompt to unlock the encrypted device. You can actually enter your password at this step, and boot-up will continue. However, updating the BIOS will resolve this completely.

See also