ACPIKeyboard.kext by RehabMan

The purpose of this kext is to allow keystrokes to be generated from ACPI code in response to ACPI events, primarily EC queries. Many modern laptops use ACPI EC queries when special “media” function keys are pressed, such as the “Brightness Up” and “Brightness Down” keys. This kext can be used to turn those events into ADB keystroke events that are interpreted by OS X as normal key presses.

In order to use the kext, you must: – patch DSDT to add a very simple RMKB0000 device to which the kext can attach – determine which ACPI events are generated when the keys are pressed, and replace those methods with a small amount of code that generates “notifications” to the RMKB device, to which ACPIKeyboard.kext is attached. – install the ACPIKeyboard.kext

If you’re using my version of VoodooPS2Controller.kext (eg. you have a Synaptics trackpad), you do not need this kext as the functionality to handle ACPI notifications is already built-in to that kext. Unlike this kext, with VoodooPS2Controller.kext, the notifications contain PS2 scan code data instead of ADB codes. This is advantageous as the PS2 codes sent can be translated with the scan code mapper that is part of VoodooPS2Controller.kext.

The primary users of this kext will be those that are using another PS2 kext because they have a different trackpad not well supported by my version of VooodooPS2Controller.kext (eg. those with ELAN trackpads).

Another good source of information on backlight control (including keyboard control) is here:


Downloads are available on bitbucket: