Jump to content

Fn HotKey and ALS sensor driver for Asus Notebooks


EMlyDinEsH

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.

Link to comment
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 !

Link to comment
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.

Link to comment
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. 

Link to comment
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 !

Link to comment
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

Link to comment
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.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...