GNU/Linux Free Software & Open Source

Debian on Lenovo Thinkpad X240

I recently got myself a new computer, the Lenovo Thinkpad X240. It’s my first Thinkpad so I cannot compare it to previous models. My old laptop is a Dell XPS m1530 that’s about 5 years old by the time of this writing. Still very functional but I wanted an upgrade in hardware and a lighter computer to travel with.

The pros:

– weight
– matte screen and higher resolution
– keyboard
– speed (processor, RAM, SSD, USB3)

The cons:

– GNU/Linux compatibility
– wireless
– brightness controls
– FN key and FN Lock

So let’s go and review the whole thing:

### BIOS

It came with Windows 8 pre-installed, but I immediately installed Debian Testing (Jessie) on it. This machine comes with UEFI boot, but fortunately it has a Legacy mode to behave like normal BIOS. Installing like normal boot instead of UEFI boot is a lot easier and you don’t have to struggle with the disk partitions and boot options. On the boot configuration settings, disable secure boot and set it to legacy boot first instead of UEFI boot first.

### Hardware

Lenovo X240 open

The X240 is very light, even with the additional 6 cell battery instead of the default 3 cell battery. It is a 12.5″ computer, so it can be comparable to a Macbook Air or similar computer. The case is plastic, but feels very well built and durable.

X240 width

There are no indicating LEDs anywhere except for the power button LED that indicates if the computer is on, off or suspended (blinking). There are no hard disk writing indication, battery charging indicator, wireless, bluetooth or any. Just an additional led behind the screen, the dot in the “ThinkPad” logo lights following the power button LED and that’s it.

This is a bit confusing specially when charging the laptop, since the charger also lacks any LED indicator, so the only way to know if your computer is charging is with the software indicators in your desktop environment (the battery monitor icon in your system tray).

It has no HDMI port, but it has the old VGA adapter and a mini digital port for external monitors. Only 2 USB ports, both are USB 3.0, and one with power over USB. My model came with a fingerprint reader, an SD card reader, a 720p webcam and an Ethernet port.

### Keyboard

Lenovo X240 Keyboard

It seems that all new Lenovo models are coming with the new “chicklets” style keyboard and its new layout. I’ve heard some criticism about it, but since this is my first Thinkpad, I’m not biased. Comparing to other laptop keyboards, it is nice. The keys feel good and not fragile and is very silent. My only compliant was the strange placement of the Fn key where I usually expect the Ctrl key. Fortunately for me as an Emacs user I map my CapsLock key to an additional Ctrl and use that instead, so my key stroke memory doesn’t get much affected by that. What I didn’t like is that the F keys are now by default media keys and to use them as F keys you need to press Fn+key or Fn+Esc to activate ‘Function key lock’ then press the F key you need. So, for example, if you want to reload your browser and immediately lower the volume of the speakers, you have to strike additional keys.

The screen brightness control keys by default didn’t work for me, but there is a fix. You need to load the thinkpad acpi kernel module on boot. So edit /etc/modules file and add:


Then you’ll need to add this to your /etc/default/grub file and check that your kernel options are as follows:

RUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi=!Windows2012 acpi_backlight=vendor"

This will enable the volume, mute, brightness and wireless media keys. I haven't been able to make the microphone mute button work.

The keyboard backlight works by default using FN+spacebar and it looks nice. It has three states: dim, bright and off.

### Pointers

As many other previous ThinkPads, the X240 still keeps the nipple mouse or clit mouse or however you've heard it's called. The downside is on the trackpad, now called clickpad which has no hardware buttons but does have a larger surface area. By default on Debian Jessie + KDE the clickpad works but it's not precise. When trying to press for a click it inevitably moves from the target area, so clicking is hard. Right click worked out of the box for me by just pressing the pad on its bottom right area. Clicking can be fixed by addding:

sudo apt-get install kde-config-touchpad

and configure single tap clicking, two-finger scrolling and three finger tap for middle click. If you like to use the /nipple/ pointer and miss the buttons for it on the top of the pad, you can configure the button area to be on the top part instead of the bottom part in the X config file.

Make sure you have the following in your file /usr/share/X11/xorg.conf.d/50-synaptics.conf

    # This option enables the bottom right corner to be a right button on
    # non-synaptics clickpads.
    # This option is only interpreted by clickpads.
    Section "InputClass"
            Identifier "Default clickpad buttons"
            MatchDriver "synaptics" 
            #Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
            Option "SoftButtonAreas" "60% 0 0 5% 40% 60% 0 5%"
    #       To disable the bottom edge area so the buttons only work as buttons,
    #       not for movement, set the AreaBottomEdge
            #Option "AreaBottomEdge" "82%"
            Option "AreaTopEdge" "4%"

I found this solution at this blog

### Wireless

The wireless card is an Intel 7620 rev 6. After having to struggle with a Broadcom card for many years I thought my wireless card struggle days were going to be over. Well, turns out that the 7620 card is a very recent card and is not very well supported yet. By default it doesn't work with Debian. To make it work you need to enable the non-free repository and install

sudo apt-get install firmware-iwlwifi

This will enable your card and make it work, but if you suspend the computer, you'll loose bluetooth conectivity. To fix that you need to disable the 802.11n compatibility in the driver configuration. Add this to a file in a new file called: /etc/modprobe.d/wifi-disable11n.conf

options iwlwifi 11n_disable=1

I have experienced some instability with it. At random times the driver would just stop working and your card will seem working and connected but no traffic goes on. If you suspend the computer with the card in that state, it will not suspend and will hang the system. Once the wifi card is stuck the only way to bring it back is with a restart. I've tried rfkill, unloading and loading the module, but nothing works.

Another issue is that it will not connect to a wireless-n router, even when disabling n-band in the driver configurations. I had to configure my home router to only use b/g bands for it to connect.

**UPDATE**: Debian Jessie has upgraded to the Linux kernel 3.13, enabling the use of the iwlwifi driver version, which doesn't need any of the changes mentioned and doesn't crash anymore.

### Conclusion

Not being able to compare to other previous Series X Thinkpad models, I cannot say if the X240 is an improvement or not. I've seen a lot of criticism to it, and I don't blame them. Some indicating LEDs would be nice to have, and why does a new computer model in 2014 doesn't have an HDMI port and has the old VGA port instead? There are weird hardware choices in this, but overall I'm enjoying the portability and speed of the computer. I'm hoping that my GNU/Linux compatibility issues (specially the WiFi card issues) get fixed over time.

Do you have some other configuration or fix tips for Debian on the X240? What to you think of this model? Share some ideas with me on the comments.

By Gabriel Saldaña

Gabriel Saldaña is a web developer, photographer and free software advocate. Connect with him on and Twitter

28 replies on “Debian on Lenovo Thinkpad X240”

I think the lack of HDMI is because we now broadcast to Smart TVs via WiFi, and the VGA is intended for projectors 🙂

You do realize that with a $10 passive adapter, you can connect HDMI via the Mini-DisplayPort output on the unit, right? I have the older X220, and I bought a DisplayPort to HDMI adapter cable for maybe $10 not long after I got it. It works great. Search on Amazon, they’re quite readily available.

Considering how awesome the X220 was, the X240 is an enormous disappointment.

Some of my most beloved features of the X220 are no longer present on the X240:
1) middle-click button at the top of the touchpad is gone
2) dedicated left-click and right-click buttons at the top of the touchpad are gone
3) a non-chicklet keyboard that has a dedicated context menu key (accessed by right-click when using mouse) is gone
4) dedicated volume buttons that don’t require Fn key use are gone
5) the buttons that appeared above the left/right arrow keys on the X220 (which serve as back/forward keys) are gone
6) is there a suspend key? (I use Fn+F4 every day to suspend my X220–it’s one of my most used functions)

What is so upsetting is that Lenovo had a winner with the X220 design. And I have had none of the issues you are suffering from with the X240.

I wish there was some way to complain to Lenovo and beg them to bring back the X220 design. Lenovo is starting to suck like all the other laptop makers out there. Why are they copying all the shoddy designs that all the other laptop makers are designing? IBM had a sweet design with its Thinkpads. Lenovo has slowly been abandoning everything great about it. They’ve lost my business if they keep putting out designs like the X240.

The missing buttons on the top of the pad can be configured with the setup I mention in the post. Right, middle and left clicks. What can’t be configured is middle area scrolling. You have to configure two-finger scrolling and use that instead.

There is no suspend button, no play, pause, etc media keys anywhere, no forward and back keys either. I configured KDE to suspend when closing the lid, and suspend works as expected.

The specs say it has mini displayport? You can get a mini dp -> hdmi adapter pretty cheap on monoprice or pretty much anywhere that sells video cables.

On some laptops it is possible to swap Fn and left Ctrl, and also revert the Fn+F-keys behavior to normal via BIOS. Is it not the case with this one?

It’s definitely possible to switch Fn and Ctrl in the bios, I haven’t checked about the function keys (as mine are currently set to their F[0-12] version) 🙂

Thanks for the continued review. Based on your time with it: Are you happy with the money you spent? Would you still purchase it again? Or would you purchase something else instead? I’m also curious why you picked the 240 over the 220/230.

Since it’s my first Thinkpad, I don’t know if this is better or worse than any other model. After the upgrades I got (CPU, SSD, RAM), maybe I would’ve spent $200 more and get a similar but more powerful T440s which has the larger screen. I’m getting to like the small screen and size and the lightness of the device. I haven’t seen a T440s model to compare it physically. I also enjoy the very long battery life.

Did you remove the windows partitions?

Can you post the steps you took to install the Debian? Specifically the partitionning and boot loader steps.
I have the same model but having difficulties understanding how the Windows 8 bootloader, and Grub should work harmoniously.

Hi, what sort of battery life are you getting under active use? My use case is similar to yours: web development (although I’m a Vim fan myself :P).


Hi. I also installed Debian testing on a Thinkpad X240. Do you have any suspend/hibernate issues? Like black screen on resume?

No, I have no issues with suspend/hibernate, but suddenly the trackpoint and the keyboard backlight stopped working after kernel upgrade to 3.13-1, but using the old 3.12 kernel doesn’t solve the issue, so I must’ve changed something else.

When I bought my X220 about 2 1/2 years ago, Lenovo still had a site where you could order machines Windows-free. All I had to do was ask one of their reps via live chat, and they gave me a link to it. If you want a Windows-free Lenovo machine, I think they still do that. Admittedly, from what I’m hearing and seeing, I’m not rushing to replace my X220.

Thanks for the tip. Next time I order a Lenovo I’ll check that out. I’ve heard that in other countries with student discounts you get that option too. Since this was my first purchase, I was not aware of it.

So. After all this time with the machine? How do you like it? Still worth the purchase or do you wish you went with something else? Are you still running Linux?

I’d be very interested in a follow up review.

I don’t know if I have enough to say to write a post as a follow up review. I’m linking the small format and the low weight of the laptop. That part is great, also the matte IPS screen. I still use Linux since it’s the only OS I’ve been running on my machines for the past 12 years. The wifi driver has improved and I got used to the touchpad by now. I still wonder if paying a little extra for the Lenovo T440s would’ve been a better purchase. It has a larger screen (better for my photo editing), 16Gb RAM limit instead of 8 and a faster processor. But overall I like my machine very much, specially loving the battery life of 10-14 hours.

Hi all,

I was working this morning on battery with my X240 (There was not electricity). The battery went down then (i was using battery stretch option) and the X240 shut down. Since the electricity gets back, my laptop is on alimentation, but is not booting anymore… 🙁
Any idea of what’s going on?

Hi there,thanks for your post~It helped me a lot.
What I want to ask is that did you have a video instable issue?
Now I am using elementaryOS, and I suggest you have a try on it,this distribut is nice and good to use.Except the issues I got on WIFI and video,If you have some solutions, can you share with me ?thank you!

I have no problems with video. I just had problems with the WiFi driver, but after the latest kernel updates and its corresponding WiFi driver updates I’ve had no problems at all.

Thanks for the post. My use case is similar to yours. I happened to use an old netbook (Atom N570, 9 cell battery). I immediately fell in love with the long battery life. At home I have a 23″ FHD monitor. Now I am looking for a laptop under $1000 with proper Linux support for the next few years to come. I have no time to waste on UEFI and the crap. If it is difficult to install Linux, I might send it back. My choices are xps 240 and System 76 Galago or Darter. XPS and Darter come with the *U processors, which means great battery life. XPS has the advantage of going for 6 cell battery which System 76 does not have. On the other hand I get wonderful spec (i7 processor + IPS display) for under $1000. And they are indeed Linux preloaded. Why can’t system76 provide a bigger battery? Shame!

I have been using my x240 for the last couple of months and I was happy except for the quickly draining battery on ubuntu 15. The real issue now is that I connected a second samsung monitor via the HDMI and the monitor screen is flickering and sometimes randomly turning off. How do i fix this?

I’ve never experienced battery drain or monitor flickering. I would first make sure the HDMI cable is in good conditions.

About the battery drain, I use Debian instead of Ubuntu, so I don’t know if that makes a difference. Try running powertop or tlp (or both) to tune your settings for optimal battery performance.

I have the 6 cell external battery and combined with the internal 3 cell battery it gives me ~10-14 hours of battery.

Yes, I just straightened the HDMI cable and rebooted the system which fixed the flickering problem I mentioned in my previous post. Regarding the battery problem, I will try to follow your suggestions and perhaps use a different distro like debian.

I was struggling getting the brightness controls Fn+F5 and Fn+F6 to work until I realized that the reason was that I was working with an external monitor. It works perfectly fine with the laptop monitor. I am not sure whether it is supposed to also work with an external monitor. For me it is solved now, because I only need the brightness control for the laptop monitor.

Thanks for the blog. I found it useful for some other tweaks.


Comments are closed.