Jump to content
EMlyDinEsH

Fn HotKey and ALS sensor driver for Asus Notebooks

Recommended Posts

On 3/7/2018 at 4:38 PM, bisk said:

Just to close the loop on correcting K/B backlight functionality for the Asus Q500a, I have included a simple recipe here.

 

Please note that if your DSDT reveals that you make a function call similar to ...

 

^^PCI0.LPCB.EC0.WRAM (0x044B, Local0)

 

to set your K/B backlight levels then the currently published keyboard backlight patches are probably for you.

 

However, if your DSDT reveals that you make function calls more similar to ...

 

^^PCI0.LPCB.EC0.ECXT (0xB6, 0xFF, Zero, Zero, Zero, Zero)

 

to set your K/B backlight levels, you might want to have a glance at the file enclosed below.

 

The modifications within are what I used to get the K/B backlight working properly on the Ivy-Bridge Asus Q500a.

 

Happy hacking ;)

 

AsusQ500aKBbacklightFix.txt

 

Thank You Bisk you are the man, I looked at your code and applied it to my Q551LN Laptop DSDT.aml along with a few modifications. I now have functioning FN+F3 and FN+F4 keys for keyboard brightness. The only thing left for me is to have the keyboard illumination auto sleep after inactivity.

Share this post


Link to post
Share on other sites

I'm glad to hear that it worked out for you. To save your level of illumination b4 going into sleep and resume it after wake you need to find those 2 methods in your DSDT. Sounds like probably you have that working and are just trying to get your illumination to cut off after some amount of time w/o a key touch to return instantly with use. That would be cool if you figure that one out. Pls post that procedure if you do !

Share this post


Link to post
Share on other sites

Hey Bisk, I have the auto save illumination working. I had to use my kext though in order for it to work. I  attached my kext below. I will try to work on the auto keyboard backlight timeout tonight and post my results tomorrow. I doubt that I will get it to working though. But we will see.

AsusNBFnKeys and ApplePS2SmartTouchPad.zip

Share this post


Link to post
Share on other sites

Aloha ajcoupe5,

 

Cool u got "illumination autosave" working. If by this you mean saving the current illumination state before going to sleep when the K/B backlight shuts off and then resetting it back to where it was upon wake so that it lights up to the same level again, then there are 2 DSDT functions that you need to find and modify to accomplish this. I have this detailed in my example code. I didn't need a kext for that. But you do have a different laptop so if that is where your solution took you, fair enough. Yea, I have no clue where to even start to get K/B backlight autodimming/touch resuming to work.

Share this post


Link to post
Share on other sites

I have one other issue's right now that I'm trying to fix. My F5(display back-light illumination decrement ) and F6(display back-light illumination increment) keys for display back-light illumination. They only work when I press F5 or F6 without holding FN. I want them to work only when I hold FN + F5 or FN + F6 . Im unsure how to fix it. 

Share this post


Link to post
Share on other sites

Ah yes, the dreaded key remapping. I have read through several discussions/explanations on this subject and none have helped me accomplish any success. In the case where I can copy someones's work that usually gets it done. But otherwise, nada. Good luck and if you do nail it, pls write a mini-guide !

Share this post


Link to post
Share on other sites

Hi everybody.

 

Got everything working using v2.6 on 10.13.5.

 

Only thing I'm not sure of is ALS. The Auto set brightness box in Monitor preference pane is there, but checking it or unchecking doesn't seem to make any difference, and keyboard backlight (4 levels) always turns on at boot. There's clearly something I'm not understating in DSDT patching to get ALS to work correctly.

 

In IOReg ALS always reports the same Status 0xb.

 

Attached are my dsl files and the patched aml.

 

Thanks!

dsl.zip

patched.zip

Share this post


Link to post
Share on other sites

I have an Asus N550JV running High Sierra 10.13.5.

After weeks of struggling to get the keyboard backlight controls working using EMlyDinEsH's AsusNBFnKeys.kext & ApplePS2SmartTouchpad.kext with the 4-levels DSDT patch,  I can finally control the keyboard backlight levels using Fn+F3 and Fn+F4.

 

Although EMlyDinEsH's instructions indicate (if I read the instructions correctly) that the 4-levels patch for "Haswell/Ivy" should have worked for my laptop, which has an i7-4700HQ processor (Haswell), it turned out that I actually needed the "Sandy/Ivy" patch instead.

 

The difference boils down to this line:

                ^^PCI0.LPCB.EC0.WRAM (0x04B1, Local1) // Haswell/Ivy

versus

                ^^PCI0.LPCB.EC0.WRAM (0x044B, Local1) // Sandy/Ivy

I noticed that my native DSDT extracted via Clover used 0x044B in method SLKB, not the 0x04B1 that the Haswell patch was using for method SKBL. It was only after I decided to try the Sandy value that the keyboard backlight finally started working.

 

The Asus N550JV is an older-model laptop, so it's possible that my experience won't help anyone else. But who knows? There might be one or two out there who can use this info.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×