[ TechnoCage | Caskey | acdctl ]
acdctl is a command-line utility to control the
otherwise inaccessible brightness
levels of an Apple Cinema Display on any system with libusb support.
I have tested this under Linux, but libusb claims to work on OSX
as well so presumably this will work there as well. I have not yet
tested on my OSX laptop, though I will soon.
This project was born of the fact that I was frustrated at the inability to control the brightness of my cinema display connected to my linux box. It was perpetually bright and vibrant, outshining my other displays and having otherwise quite noticable color differences between it and the adjacent displays.
The tool works by manipulating the display's USB HID interface. You must have the usb cable connected from your display in order to use this tool. That is how the display is controlled. The display does offer up four different controls from a software perspective, but I haven't been able to figure out what the other three are. They are listed as 'Usage' 214, 231 and 228. These are not standard USB monitor control classes, so if anyone knows anything about them, please do drop me an email.
NOTE: acdctl should work to control any VESA compliant USB display.
This is very, very easy to use. First, download the program, compile it by typing 'make', then run it. NOTE: You must have libusb and libusb-dev packages installed to build the program.
$ sudo ./acdctl --list Found Apple Cinema Display on USB bus 002 device 007
sudo ./acdctl --brightness Current brightness of ACD 002:007 = 170
sudo ./acdctl --brightness=170
$ sudo ./acdctl --brightness=250 --verbose Searching for USB device matching 0x9218:0x05ac Current brightness of ACD 002:007 = 150 Setting brightness of ACD 002:007 to 250 New brightness of ACD 002:007 = 250
The current version is 1.1 (2005-08-13).
You will need libusb installed to use this. Since it is source, you'll need the 'developer' version of the package from your distribution. (Debian/Ubuntu: libusb-dev.)
You can download the source for all versions here. Each package has a GPG signature signed by the distributor, Caskey L. Dickson. You can get a copy of my key for verification here. For those without GPG, here are the checksums of the distribution. These are available in the file checksums.txt in the download directory.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 5882b0ae07c2ccb3b901ca85e873c329 acdctl-1.0.tar.bz2 a1d2f28e7abed12978c5e7ae1daedc6b acdctl-1.1.tar.bz2 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) Comment: http://www.technocage.com/~caskey/pubkey.txt iD8DBQFC/0IbPU2b1GM6XVsRAmtoAJ9AeYcPkZHbHG6MXZz2u9qxWjzZkgCfeh3a Si2E3nF1Gk5lehDpovMXXzc= =h7cE -----END PGP SIGNATURE-----
acdctl is written and is maintained by Caskey L. Dickson.
It includes code contributed by Michael Hanselmann.