Lenovo ThinkPad Edge E430
The following is regarding the Lenovo Thinkpad Edge E430 with 3rd Generation Ivy Bridge Intel processor, released in mid 2012. The E430 is intended to be an affordable, yet still entirely capable business machine. Unlike some of its siblings, it is not to military specs, but is still a well built and quite durable machine. If you are reading this with the intention of ordering yourself this machine, do yourself a favor and opt for the Intel WiFi card for the extra ~$20. The default Realtek works, albiet with a bit of coaxing. Ergo, this article is meant to suppliment the current Installation guide.
With the release of 2012.07.15 and chroot installation process, the documented installation procedure is recommended.
As of kernel 3.4.6-1
|Video (Intel HD4000)||Yes|
|Ethernet (Realtek RTL8111/8168B)||Yes*|
|Wireless (Realtek RTL8188CE/Thinkpad b/g/n)||Yes*|
|Bluetooth||Centrino 2230 - Yes (01/07/13)|
|Audio (Intel HD Audio)||Yes|
|Finger Print Reader||Yes|
|Card Reader (Realtek RTS5229)||Yes*|
As usual, Realtek devices require a little work. See below.
Realtek Ethernet Compatibility
The Realtek RTL8111/8168B ethernet controller may be relatively unreliable with the r8169 module. Better Ethernet connectivity can be achieved with the Network configuration/Ethernet#Realtek RTL8111/8168B for instructions.module. See
If the Thinkpad in question has the Thinkpad branded WiFi adapter, it semi-works out of the box. There may be a delay preceding any attempted network activity, which can be resolved by disabling the power saving feature. The usual
# ip link <interface> power off
is not a feature of this particular card. Instead, the over aggressive power saving feature may be turned off upon loading the module on boot. (<interface> may no longer be wlan0)
This may be achieved in two ways.
# echo "options rtl8192ce fwlps=0" >> /etc/modprobe.d/modprobe.conf
Or you may add the following to your kernel boot parameters:
This will turn off the firmware lowpowerstate or fwlps.
If you have not yet ordered your computer, it is advisable to spend the extra money to have it include the Intel Centrino wlan/bluetooth 4.0 card, as it is much better supported. Also, because Lenovo is one of a few companies that whitelist wlan cards, replacing/upgarding can be challenging, costly, or just downright impossible. For example, this model with the Ivy Bridge is new, ergo the wlan cards with the proper FRU (Field Replaceable Unit) number to pass the whitelist, can not yet (7-31-2012) be found on sites such as ebay. To find what FRU's this machine accepts, go the the Lenovo support site where you should be able to find the necessary documentation.
If, like me, you failed to realize that the wireless card was a horribly supported Realtek, and you are now kicking yourself because of the above mentioned whitelist, you do have an option to change it without ordering a Lenovo specific card. Some kind souls are willing to help others modify their BIOS' in various ways, one of which is removal of the whitelist. In this thread[dead link 2021-05-13 ⓘ], I was able to get Serg008 to remove the whitelist for the E430. If you go this route, proceed with caution, as upgrading the BIOS (and messing up) can render your machine a brick. Also, there are legitimate warranty concerns with unauthorized BIOS modifications.
SD Card Reader
As of 3.8 a 3rd party module is not needed, device is accessible @ /dev/mccX thanks to rtsx_pci
The card reader will not work out-of-the-box pre-3.8, but thanks to Icetonic, the necessary kernel module, rts5229, can be found from the Realtek website or from the Arch User Repository. Download the tarball and install with makepkg.
Typically with older hardware, one can get the fingerprint reader to function by using one of two open-source fingerprint reader projects. They are [thinkfinger] and [fprint], but unfortunately both are no longer active, so the newest generations are not supported by these projects. Instead, Ubuntu has put together a system that includes drivers included in these previous projects, as well as including proprietary drivers for the newest models. In typical Ubuntu fashion, it is gui driven and appropriately namedAUR and it is available from the [Arch User Repository].
The fingerprint reader included on the newest generation of Thinkpad E430 is a Upek. To verify the model of the device in a given machine, one may use lsusb.
$ lsusb Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 147e:1002 Upek
The '147e:1002 Upek' being the relevant information here. For help setting up this device, see Fingerprint-gui
If you so desire, the Thinkfan may be used to control the fan speed. This is probably not necessary as the BIOS seems to typically handle the fan speed just fine. On top of this, these machines typically have enough power to run fairly cool during typical operation, depending, of course, on what typical is for you, the user.
The thinkpad_acpi kernel module needs to be configured so user space programs can control the fan speed.
options thinkpad_acpi fan_control=1
The thinkfan configuration file also needs to know how to set the fan speed. Replace the default sensor settings with the following.
Direct fan control can be achieved by using "echo" to apply the desired level. Set the speed as shown in the following examples:
# echo engage > /proc/acpi/ibm/fan # echo level auto > /proc/acpi/ibm/fan # echo level 1 > /proc/etc/ibm/fan
Once thinkpad_acpi has been loaded with fan_control=1, available settings can be displayed like so:
$ cat /proc/acpi/ibm/fan
X Crashes with Dual Monitors
Starting X on an E430 with an Intel Core i7-3612QM and monitors plugged into both the HDMI and VGA ports results in a crash. Only "fix" I have found is to wait until starting X before plugging in one of the monitors.