Skip to Content

Thinkpad X230

Posted on

I have a new(ish) machine as my daily driver: a Lenovo Thinkpad X230.


  • Intel Ivy Bridge Core i5-3320M CPU (2.60GHz)
  • 8GB RAM (two slots)
  • 128 GB SSD
  • Intel HD Graphics 4000
  • 12.5” IPS display (1366x768)
  • Intel Centrino Advanced-N 6205 wireless
  • Gigabit ethernet
  • 2xUSB3.0, 1xUSB2.0 ports
  • Built in 2012

With a bit of love it makes a great Linux laptop!

0. SSD and Debian

Replaced the SSD with a higher capacity Samsung 850 EVO SSD. Solid state drives deliver a noticeable performance bump. Installed Debian Buster with Openbox.

1. Update BIOS

Before …

UEFI BIOS Version   G2ET82WW (2.02)
UEFI BIOS Date      2012-09-11

1.1 Goto and search for “lenovo x230 bios”. From the BIOS Update (Utility & Bootable CD) page for the Thinkpad X230, download the latest update iso and run a checksum on the image.

1.2 Install the geteltorito utility and convert the ISO image into a .img file …

$ sudo apt install genisoimage
$ geteltorito -o bios.img g2ujVERSION_NUMBER.iso

1.3 Write bios.img to an unmounted USB storage device using dd as root. BE VERY CAREFUL TO NOTE THE PROPER DEVICE. ALL DATA ON THE DEVICE WILL BE OVERWRITTEN.

Example: On a Linux system, if a USB stick appears as sde1, then write the installer to sde (no partition number) using …

$ sudo dd bs=1M if=path/to/bios.img of=/dev/sde status=progress oflag=sync

1.4 Reboot laptop. After the Lenovo logo appears press ENTER. Press F12 for the boot device menu and select the USB stick.

Make sure the laptop has its power supply plugged in (it will refuse to update otherwise). Follow the onscreen instructions.

After …

UEFI BIOS Version   G2ETB5WW (2.75)
UEFI BIOS Date      2019-04-09

Link: Updating the BIOS on Lenovo laptops from Linux

2. Battery

Battery only held about 15 minutes of charge. Replaced with a 9-cell 44++ battery bought off eBay. Run upower to view battery info …

$ upower -i /org/freedesktop/UPower/devices/battery_BAT0

Running with a moderate workload yields between 6-7 hours battery life.

3. Trackpoint

Trackpoint was jittery and zooming all over the place. [To fix] Find the name/id of the trackpoint using xinput

$ xinput list

On the X230 it is …

TPPS/2 IBM TrackPoint                     id=13   [slave  pointer  (2)]

List the properties that can be modified …

$ xinput list-props 13

Add to a script sourced by ~/.xinitrc, or to ~/.bashrc

xinput --set-prop 13 "libinput Accel Speed" 0.50
xinput --set-prop 13 "libinput Accel Profile Enabled" 0 1

Much better!

Link: Change trackpoint speed

4. Sticker

Putting a Tux sticker on the lid makes everything perform a wee bit better! 🐧


Happy hacking!