Contribute
Register

Native Brightness working without 'blinkscreen' using patched AppleBacklight.kext

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,974
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Just a quick question Rehabman. :) Having enabled brightness control using your provided patches, I've noticed that if I lower screen brightness to it's minimum using the system display slider, it essentially turns the display off. Is that the intended effect or is such a low level of brightness supposed to be reserved for situations such as display sleep?
That is as intended by the folks in Cupertino.
 
Joined
May 17, 2013
Messages
8
Mac
Classic Mac
Mobile Phone
hi, i dont know if you good folks can solve a problem i am facing, i have a macbook pro with a replacement LCD panel from a polycarbonate macbook, the issue is the brightness controls for the new screen seem to be miscalibrated, i.e lowest brightness is still too bright and the remaining steps make a very small difference, I can recall the brightness going much lower on the polycarbonate macbook, so i was wondering there is anything from your patches i can use to recalibrate the brightness controls, sorry if OT.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,974
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
hi, i dont know if you good folks can solve a problem i am facing, i have a macbook pro with a replacement LCD panel from a polycarbonate macbook, the issue is the brightness controls for the new screen seem to be miscalibrated, i.e lowest brightness is still too bright and the remaining steps make a very small difference, I can recall the brightness going much lower on the polycarbonate macbook, so i was wondering there is anything from your patches i can use to recalibrate the brightness controls, sorry if OT.
Maybe...

Post ioreg: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html. Please, use the IORegistryExplorer v2.1 attached to the post! DO NOT reply with an ioreg from any other version of IORegistryExplorer.app.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,974
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Thanks for the quick reply, Heres my ioreg
Yup. Easy to see that ApplePanel at PNLF->AppleIntelPanelA is using 'Default' because it does not recognize the display.

You should follow the instructions in post #1 to build a custom injector kext that will override this setting specifically for your display (vendor 0x610, device 0x9cc1).

It would be helpful if you knew the device-id of the original screen, because you could find the data that might work in AppleBacklight.kext's Info.plist (inside of ApplePanels).

Note: Your _UID is 14, so your panel key is probably going to be F14T9cc1. This makes sense as if you look at the ApplePanels data, you'll see F14T9cc3, 9cc5, 9cc7, 9cc9, etc. And all those data sets have a range that makes sense for the max of 0x710 that is typically used for HD3000.
 
Joined
May 17, 2013
Messages
8
Mac
Classic Mac
Mobile Phone
Yup. Easy to see that ApplePanel at PNLF->AppleIntelPanelA is using 'Default' because it does not recognize the display.

You should follow the instructions in post #1 to build a custom injector kext that will override this setting specifically for your display (vendor 0x610, device 0x9cc1).

It would be helpful if you knew the device-id of the original screen, because you could find the data that might work in AppleBacklight.kext's Info.plist (inside of ApplePanels).

Note: Your _UID is 14, so your panel key is probably going to be F14T9cc1. This makes sense as if you look at the ApplePanels data, you'll see F14T9cc3, 9cc5, 9cc7, 9cc9, etc. And all those data sets have a range that makes sense for the max of 0x710 that is typically used for HD3000.
Thanks alot... Will give it a shot, wondering if this info could make it easier for me though:
Did some digging,here is what i found: the original panel that came with the macbook was an LP133WX3 (9cc5) and the panel I currently have installed is a n133i6 (9ca0)
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,974
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Thanks alot... Will give it a shot, wondering if this info could make it easier for me though:
Did some digging,here is what i found: the original panel that came with the macbook was an LP133WX3 (9cc5) and the panel I currently have installed is a n133i6 (9ca0)
The data for F14T9cc5 is:
Code:
 <00110000 00200034 004d006e 009600c8 01060151 01ad020c 027b0300 039d045d 053e064c>
I just pulled that data directly from AppleBacklight.kext/Contents/Info.plist.

Your current panel is not 9ca0. Your ioreg shows it 9cc1.
 
Joined
May 17, 2013
Messages
8
Mac
Classic Mac
Mobile Phone
The data for F14T9cc5 is:
Code:
 <00110000 00200034 004d006e 009600c8 01060151 01ad020c 027b0300 039d045d 053e064c>
I just pulled that data directly from AppleBacklight.kext/Contents/Info.plist.

Your current panel is not 9ca0. Your ioreg shows it 9cc1.
Hi RehabMan thanks for the help so far, I decided to try fixing my macbook backlight today, but even despite reading your instructions in post one im still stuck as i am a total noob when it comes to macs, if its not too much to ask can you please clarify on what i need to do step by step, i do i have to patch the dsdt? and if so are there any values that need to be edited as i can see the patch is for the probook, and what else do i need to edit for the patched kext?
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,974
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Hi RehabMan thanks for the help so far, I decided to try fixing my macbook backlight today, but even despite reading your instructions in post one im still stuck as i am a total noob when it comes to macs, if its not too much to ask can you please clarify on what i need to do step by step, i do i have to patch the dsdt? and if so are there any values that need to be edited as i can see the patch is for the probook, and what else do i need to edit for the patched kext?
No DSDT patch necessary (couldn't install one anyway on a real mac without "hacking" it with hack bootloader).

Run the script to create the injector. Then edit as I described previously. Important part is to have the correct display key F14T9cc1. You can then experiment with the data...

Install the generated injector kext (after editing) with Kext Wizard. Make sure you repair permissions (Disk Utility) and rebuild cache (DPCIManager).

You will also need to set kext-dev-mode=1 as your kext will be unsigned and will be rejected otherwise. On a real Mac you do that with nvram:
Code:
sudo nvram boot-args=kext-dev-mode=1
You can clear the setting with:
Code:
sudo nvram -d boot-args
Note: If you remove the kext-dev-mode=1, your injector kext will no longer load.
 
Joined
May 17, 2013
Messages
8
Mac
Classic Mac
Mobile Phone
No DSDT patch necessary (couldn't install one anyway on a real mac without "hacking" it with hack bootloader).

Run the script to create the injector. Then edit as I described previously. Important part is to have the correct display key F14T9cc1. You can then experiment with the data...

Install the generated injector kext (after editing) with Kext Wizard. Make sure you repair permissions (Disk Utility) and rebuild cache (DPCIManager).

You will also need to set kext-dev-mode=1 as your kext will be unsigned and will be rejected otherwise. On a real Mac you do that with nvram:
Code:
sudo nvram boot-args=kext-dev-mode=1
You can clear the setting with:
Code:
sudo nvram -d boot-args
Note: If you remove the kext-dev-mode=1, your injector kext will no longer load.

Thanks a lot, worked like a charm, my brightness is much better now,

a few more things i would like to know, whenever i want to change the data, do i have to do it through the script and reinstall the kext, fix permissions, rebuild cache and reboot every time, or is there an easier way, I'm assuming i can fix permissions for just the installed kext right? I also want to know what is the lowest and highest values my panel can take and how to go about editing the values manually.
 
Top