Locked out of my own hardware

No, this is not a post about the iPad. I don't own one.

I recently acquired an ASUS EEE Top 1602, a nice touch-screen all-in-one PC. I bought it to serve as a music player for my stereo. So far, Ubuntu Netbook Remix works almost completely out of the box. Almost completely, except for the nice "brightness", "volume", "webcam" buttons, and the blue LED that brightly lights up the bottom of the machine, somewhat undermining its intended use as an auditory appliance instead of Center of Digital Media Attention. Under the preinstalled Windows, there is an application which can conveniently adjust the LED bar brightness through software. Wanting to stay the master of my hardware, I downloaded the crafty IDA Pro, which I discovered comes as a free version nowadays which is far more advanced than the last pay version I bought some years ago. With it, I disassembled some of the ASUS device drivers and sure enough found some magic numbers. But what I didn't find was where the port banging and bit twiddling happened, which I presumed must be part of any interaction with hardware that affects the Real World Outside of the PC. But it seems that all such interaction is nowadays handed off to a secondary embedded processor, to which one can only talk by acting through the intermediary that is ACPI. Unfortunately, ACPI documentation is quite scant and I found no convenient way to do what I presume must be some simple sequence of ioctl() calls to pass my information down to ACPI. So, it seems that even I think that I found the information I need to pass, and even though I have a "completely open+Free(tm)" Debian system, it's not possible for me to control the LED bar and to enable OS notifications about the pressed special keys, at least not without mastering ACPI, about which I found little example code or documentation.

In the end, I found that the BIOS allows me to disable the annoying LED bar. So I did just that and am happy with my white yet nonlucent media player.

Leave a comment

About Max Maischein

user-pic I'm the Treasurer for the Frankfurt Perlmongers e.V. . I have organized Perl events including 9 German Perl Workshops and one YAPC::Europe.