Difference between revisions of "ThinkLight"

From ThinkWiki
Jump to: navigation, search
(Applications)
(added category)
 
(37 intermediate revisions by 20 users not shown)
Line 4: Line 4:
 
|style="vertical-align:top" |
 
|style="vertical-align:top" |
 
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
 
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
The ThinkLight is a little LED light integrated into the top edge of the display frame in the A, R, T, X, Z and i Series ThinkPad models. It illuminates the ThinkPad's keyboard so that one can type in the dark without using an external light source. The ThinkLight can be controlled via the {{key|Fn}}{{key|PageUp}} key combination or via ACPI on some of the newer models. The LED is amber on some models (e.g. X30s, X40s), and white on others (e.g. T40s).
+
===ThinkLight===
Note that the ThinkLight is not available on the G series ThinkPads, nor on the X41 Tablet.
+
The ThinkLight is a small 5-volt LED integrated into the top left or middle area of the display bezel in some of the older ThinkPads. It illuminates the ThinkPad's keyboard so that one can type in the dark without using an external light source.
 +
 
 +
It has been effectively replaced by the backlit keyboard, which rendered it redundant. Although, there were models that featured both the ThinkLight and a backlit keyboard together.
 
</div>
 
</div>
 
|}
 
|}
==Linux Support==
+
==Linux support==
Controlling the ThinkLight with the keyboard works on all systems since it relies on the BIOS exclusively. Just press {{key|Fn}}{{key|PageUp}} to toggle its state between on and off.
+
Controlling the ThinkLight with the keyboard works on all systems since it relies on the embedded controller exclusively. Just press {{key|Fn}}+{{key|PageUp}} to toggle its state between on and off.  
  
===Software Control via ibm-acpi===
+
Starting with the xx30 series models (T430, T530, W530, etc), the keystroke was changed to {{key|Fn}}+{{key|Space}} in order to better accommodate the 6-row chiclet keyboard layout. On models with backlit keyboards, there are 4 states: <code>off</code>, <code>dim backlit</code>, <code>full backlit</code>, and <code>full backlit w/ ThinkLight</code>. Models without backlit keyboards only have <code>ThinkLight on</code> and <code>ThinkLight off</code>, which can be obtained by disabling the backlit keyboard in the UEFI of models with backlit keyboards installed.
Support for controlling the light with ACPI is provided by [[ibm-acpi]]. After installing it, a simple
+
 
:{{cmdroot|echo on > /proc/acpi/ibm/light}}
+
===Software control via thinkpad-acpi===
 +
Support for controlling the ThinkLight with ACPI is provided by [[thinkpad-acpi]]. After installing it, a simple
 +
:{{cmdroot|echo 255 > /sys/class/leds/tpacpi\:\:thinklight/brightness}}
 
switches it on and a
 
switches it on and a
:{{cmdroot|echo off > /proc/acpi/ibm/light}}
+
:{{cmdroot|echo 0 > /sys/class/leds/tpacpi\:\:thinklight/brightness}}
 
switches it off again.
 
switches it off again.
  
This allows one to control the light in scripts. Unfortunately, no known ThinkPad comes with a light sensor (yet). ;)
+
This allows one to control the ThinkLight in scripts.
 +
 
 +
To use these controls in scripts without root permissions, you should run
 +
:{{cmdroot|chmod 666 /sys/class/leds/tpacpi\:\:thinklight/brightness}}, which is probably best done using udev.
  
 
===Applications===
 
===Applications===
*'''gaim-thinklight''': If you are using [http://gaim.sf.net GAIM], the [http://www.joachim-breitner.de/blog/archives/38-Created-gaim-thinklight.html gaim-thinklight] plugin will enable you to use the ThinkLight as an indicator for new messages. This depends on [[ibm-acpi]].
+
*'''led-notification''': Pidgin plugin to use any LED to indicate new messages. I've forked [http://github.com/Sitwon/led-notification led-notification] to support the ThinkLight via [[thinkpad-acpi]]. The plugins below either weren't compatible with the latest pidgin or didn't compile for me. The original author of led-notification seems MIA. Another fork [http://github.com/xmw/pidgin-led-notification pidgin-led-notification] to write user defined strings (added to Gentoo/Linux)
 +
*'''gaim-thinklight''': If you are using [http://gaim.sf.net GAIM], the [http://www.joachim-breitner.de/blog/archives/38-Created-gaim-thinklight.html gaim-thinklight] plugin will enable you to use the ThinkLight as an indicator for new messages. This depends on [[thinkpad-acpi]].
 
*'''gaim-lighthink''': [http://www.chris-lamb.co.uk/code/gaim-lightthink/ gaim-lightthink] is an alternative to gaim-thinklight.
 
*'''gaim-lighthink''': [http://www.chris-lamb.co.uk/code/gaim-lightthink/ gaim-lightthink] is an alternative to gaim-thinklight.
 +
*'''pidgin-blinklight''':[http://packages.debian.org/unstable/net/pidgin-blinklight pidgin-blinklight] is a replacement for gaim-lighthink intended for use with [http://pidgin.im/ Pidgin].
 
*'''rocklight''': [http://hunz.org/ rocklight] is a xmms visualization plugin that makes the ThinkLight flash to the beat of your music. The package also includes a standalone stroboscope mode program.
 
*'''rocklight''': [http://hunz.org/ rocklight] is a xmms visualization plugin that makes the ThinkLight flash to the beat of your music. The package also includes a standalone stroboscope mode program.
 
*'''thinkblinkd''':[http://badcode.de/downloads/thinkblinkd-0.1.7.tar.gz] Thinkblinkd is a python daemon to control the thinklight (and possibly other lights on your Thinkpad) it comes with the daemon and a control script.
 
*'''thinkblinkd''':[http://badcode.de/downloads/thinkblinkd-0.1.7.tar.gz] Thinkblinkd is a python daemon to control the thinklight (and possibly other lights on your Thinkpad) it comes with the daemon and a control script.
 
*The [[script for theft alarm using HDAPS]] optionally flashes the ThinkLight when the alarm is armed (disabled by default, to enable set <tt>$use_light=1</tt>).
 
*The [[script for theft alarm using HDAPS]] optionally flashes the ThinkLight when the alarm is armed (disabled by default, to enable set <tt>$use_light=1</tt>).
 
*'''kopete-thinklight''':[http://kde-apps.org/content/show.php?content=47886] This plugin for kopete will enable the usage of the thinklight as notifiaction for new messages.
 
*'''kopete-thinklight''':[http://kde-apps.org/content/show.php?content=47886] This plugin for kopete will enable the usage of the thinklight as notifiaction for new messages.
 +
*'''stupid little hack to blink the ThinkLight''': [http://paste.lisp.org/display/37500]  A little C program that may be set SUID so that you can use it from non-privileged programs that needs to do a little notification.
 +
*'''thinkalert''': [http://www.mike.tl/view/Main/ThinkAlert] Another C program that may be set SUID to allow non-privileged programs to manipulate the ThinkLight.  Adds some features over the "stupid little hack to blink the ThinkLight" program.
 +
*'''thinklight-notification''': This [http://ubuntuforums.org/showthread.php?t=1017263 Evolution plugin] notifies the user with a blinking light whenever a new message has arrived.
 +
*'''ThinkBlink''': [http://pikeypl.com/index.php?show=blink_en blink.sh] is an universal bash script making ThinkLight blink. It can be used with any application.
 +
 +
==Windows support==
 +
Likewise, controlling the ThinkLight with the keyboard works without any additional software. The Hotkey Features software from IBM/Lenovo adds OSD icons that appear when the ThinkLight is turned on/off.
 +
 +
===Software Control via Hotkey Features===
 +
The Hotkey Features software exposes an interface that allows (among other things) to control the ThinkLight. See [[Python script for Windows to control ThinkPad features]] for more information.
 +
 +
===Software Control via Embedded Controller===
 +
By writing 2 pre-defined values to register 0x3B on the embedded controller, the ThinkLight can be controlled manually with this method. Writing the value as 0x10 will disable the ThinkLight, while writing the value as 0x12 will enable the ThinkLight.
  
==Models featuring this Technology==
+
==Models featuring this technology==
*ThinkPad {{I1460}}, {{I1480}}, {{I1482}}, {{I1483}}, {{I1492}}
+
===featuring a white ThinkLight===
*ThinkPad {{A Series}}
+
*{{i1460}}, {{i1480}}, {{i1482}}, {{i1483}}, {{i1492}}, {{i1560}}, {{i1562}}, {{i1592}}, {{i1620}}, {{i1800}}
*ThinkPad {{R Series}}
+
*{{W500}}, {{W510}}, {{W520}}, {{W530}}
*ThinkPad {{T Series}}
+
*{{A20m}}, {{A20p}}, {{A21e}}, {{A21m}}, {{A21p}}, {{A22e}}, {{A22m}}, {{A22p}}, {{A30}}, {{A30p}}, {{A31}}, {{A31p}}
*ThinkPad {{X20}}, {{X21}}, {{X22}}, {{X23}}, {{X24}}, {{X30}}, {{X31}}, {{X32}}, {{X40}}, {{X41}}, {{X60}}, {{X60s}}
+
*{{T20}}, {{T21}}, {{T22}}, {{T23}}, {{T30}}, {{T40}}, {{T40p}}, {{T41}}, {{T41p}}, {{T42}}, {{T42p}}, {{T43}}, {{T43p}}, {{T60}}, {{T60p}}, {{T61}}, {{T61p}}, {{T400}}, {{T400s}}, {{T410}}, {{T410i}}, {{T410s}}, {{T410si}}, {{T420}}, {{T420i}}, {{T420s}}, {{T420si}}, {{T430}}, {{T430i}}, {{T430s}}, {{T430si}}, {{T430u}}, {{T500}}, {{T510}}, {{T510i}}, {{T520}}, {{T520i}}, {{T530}}, {{T530i}}
*ThinkPad {{Z60m}}, {{Z60t}}, {{Z61m}}
+
*{{X20}}, {{X21}}, {{X22}}, {{X23}}, {{X24}}, {{X60}}, {{X60s}}, {{X61}}, {{X61s}}, {{X200}}, {{X200s}}, {{X201}}, {{X201i}}, {{X201s}}, {{X201si}}, {{X220}}, {{X220i}}, {{X230}}, {{X230i}}, {{X300}}, {{X301}}
*ThinkPad {{S30}}, {{S31}}
+
*{{R30}}, {{R31}}, {{R32}}, {{R40}}
 +
*{{S30}}, {{S31}}
 +
===featuring an amber ThinkLight===
 +
*{{X30}}, {{X31}}, {{X32}}, {{X40}}, {{X41}}
 +
*{{R50}}, {{R50e}}, {{R50p}}, {{R51}}, {{R51e}}, {{R52}}, {{R60}}, {{R60e}}, {{R60i}}, {{R61}}, {{R61e}}, {{R61i}}, {{R400}}, {{R500}}
 +
*{{Z Series}}
 +
===featuring two white ThinkLights===
 +
*{{W700}}, {{W700ds}}, {{W701}}, {{W701ds}}
  
[[Category:Glossary]]
+
[[Category:Glossary]] [[Category:ThinkPad Technologies]]

Latest revision as of 16:05, 22 January 2021

ThinkLight

ThinkLight

The ThinkLight is a small 5-volt LED integrated into the top left or middle area of the display bezel in some of the older ThinkPads. It illuminates the ThinkPad's keyboard so that one can type in the dark without using an external light source.

It has been effectively replaced by the backlit keyboard, which rendered it redundant. Although, there were models that featured both the ThinkLight and a backlit keyboard together.

Linux support

Controlling the ThinkLight with the keyboard works on all systems since it relies on the embedded controller exclusively. Just press Fn+PageUp to toggle its state between on and off.

Starting with the xx30 series models (T430, T530, W530, etc), the keystroke was changed to Fn+Space in order to better accommodate the 6-row chiclet keyboard layout. On models with backlit keyboards, there are 4 states: off, dim backlit, full backlit, and full backlit w/ ThinkLight. Models without backlit keyboards only have ThinkLight on and ThinkLight off, which can be obtained by disabling the backlit keyboard in the UEFI of models with backlit keyboards installed.

Software control via thinkpad-acpi

Support for controlling the ThinkLight with ACPI is provided by thinkpad-acpi. After installing it, a simple

# echo 255 > /sys/class/leds/tpacpi\:\:thinklight/brightness

switches it on and a

# echo 0 > /sys/class/leds/tpacpi\:\:thinklight/brightness

switches it off again.

This allows one to control the ThinkLight in scripts.

To use these controls in scripts without root permissions, you should run

# chmod 666 /sys/class/leds/tpacpi\:\:thinklight/brightness, which is probably best done using udev.

Applications

  • led-notification: Pidgin plugin to use any LED to indicate new messages. I've forked led-notification to support the ThinkLight via thinkpad-acpi. The plugins below either weren't compatible with the latest pidgin or didn't compile for me. The original author of led-notification seems MIA. Another fork pidgin-led-notification to write user defined strings (added to Gentoo/Linux)
  • gaim-thinklight: If you are using GAIM, the gaim-thinklight plugin will enable you to use the ThinkLight as an indicator for new messages. This depends on thinkpad-acpi.
  • gaim-lighthink: gaim-lightthink is an alternative to gaim-thinklight.
  • pidgin-blinklight:pidgin-blinklight is a replacement for gaim-lighthink intended for use with Pidgin.
  • rocklight: rocklight is a xmms visualization plugin that makes the ThinkLight flash to the beat of your music. The package also includes a standalone stroboscope mode program.
  • thinkblinkd:[1] Thinkblinkd is a python daemon to control the thinklight (and possibly other lights on your Thinkpad) it comes with the daemon and a control script.
  • The script for theft alarm using HDAPS optionally flashes the ThinkLight when the alarm is armed (disabled by default, to enable set $use_light=1).
  • kopete-thinklight:[2] This plugin for kopete will enable the usage of the thinklight as notifiaction for new messages.
  • stupid little hack to blink the ThinkLight: [3] A little C program that may be set SUID so that you can use it from non-privileged programs that needs to do a little notification.
  • thinkalert: [4] Another C program that may be set SUID to allow non-privileged programs to manipulate the ThinkLight. Adds some features over the "stupid little hack to blink the ThinkLight" program.
  • thinklight-notification: This Evolution plugin notifies the user with a blinking light whenever a new message has arrived.
  • ThinkBlink: blink.sh is an universal bash script making ThinkLight blink. It can be used with any application.

Windows support

Likewise, controlling the ThinkLight with the keyboard works without any additional software. The Hotkey Features software from IBM/Lenovo adds OSD icons that appear when the ThinkLight is turned on/off.

Software Control via Hotkey Features

The Hotkey Features software exposes an interface that allows (among other things) to control the ThinkLight. See Python script for Windows to control ThinkPad features for more information.

Software Control via Embedded Controller

By writing 2 pre-defined values to register 0x3B on the embedded controller, the ThinkLight can be controlled manually with this method. Writing the value as 0x10 will disable the ThinkLight, while writing the value as 0x12 will enable the ThinkLight.

Models featuring this technology

featuring a white ThinkLight

featuring an amber ThinkLight

featuring two white ThinkLights