Skip to content

Instantly share code, notes, and snippets.

@dguerri
Created July 5, 2021 19:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dguerri/90a4ffbad1a23122a3f23797372f98f6 to your computer and use it in GitHub Desktop.
Save dguerri/90a4ffbad1a23122a3f23797372f98f6 to your computer and use it in GitHub Desktop.
// Read current external display brightness
data[0] = 0x82;
data[1] = 0x01;
data[2] = BRIGHTNESS;
err = IOAVServiceWriteI2C(avService, 0x37, 0x00, data, 3);
if (err) {
NSLog(@"Something went wrong: %s", mach_error_string(err));
return 1;
}
usleep(35000);
err = IOAVServiceReadI2C(avService, 0x37, 0x00, data, 12);
if (err) {
NSLog(@"Something went wrong: %s", mach_error_string(err));
return 1;
}
usleep(35000);
NSLog(@"External display brightness read: %d", data[9]);
if (data[9] != out_brightness) {
NSLog(@"Setting brightness to %d for %@", out_brightness,
avService);
data[0] = 0x84;
data[1] = 0x03;
data[2] = BRIGHTNESS;
data[3] = 0x00;
data[4] = out_brightness;
err = IOAVServiceWriteI2C(avService, 0x37, 0x00, data, 5);
if (err) {
NSLog(@"Something went wrong: %s", mach_error_string(err));
return 1;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment