Toshiba Hotkeys

This page describes the usage of the hotkeys found on some Toshiba laptops. More specifically it describes the usage of the Satellite Pro 2100 hotkeys under Linux 2.4 and/or 2.6.

Feb 28 2004 Some kind person pointed me to the fnfx project that does what I attempt but is more advanced. E.g. it already supports a client-server model that I too was planning to use. So I'll stop working on my version and use theirs instead.


Access to the buttons is provided by the toshiba_acpi module so it has to be configured and loaded. You can enable it in your kernel with the General setup -> ACPI -> Toshiba Laptop Extras option. (It's different from the toshiba module found under Processor type and features -> Toshiba Laptop support.)

When loaded it provides some files under the /proc/acpi/toshiba directory:

% ls /proc/acpi/toshiba
total 0
-rw-r--r--    1 root     root            0 Jan 10 14:55 fan
-rw-r--r--    1 root     root            0 Jan 10 14:55 keys
-rw-r--r--    1 root     root            0 Jan 10 14:55 lcd
-rw-r--r--    1 root     root            0 Jan 10 14:55 version
-rw-r--r--    1 root     root            0 Jan 10 14:55 video

The hotkeys are reported through the keys file:

% cat /proc/acpi/toshiba/keys
hotkey_ready:            0
hotkey:                  0x0000

If you see something like that and also changes to the hotkey value when you press a button you're set.


First download the tarball and unpack it. After that make should be all that's necessary. If everything works well you should now have two executables toshiba_hotkey and handsoff. You can install them to /usr/local by running make install as root.

Attention make install installs the toshiba_hotkey exec as root with setuid-bit set so that it can write to /proc/acpi/toshiba/keys. Just in case you want to keep an eye on what's happening on your system...

toshiba_hotkey provides the interface and acts as a daemon. It prints the pressed button to stdout.

handsoff reads a simple config file and waits for button presses from toshiba_hotkey. It then starts configured applications and sends X events to the appropriate applications.

A simple config file that hopefully demonstrates the syntax is included.

Last modified: Feb 28 2004
Copyright ©2004 Ulrich Hertlein