[해결완료] 밝기 조절 Fn 키가 동일한 _Q6E 내의 EC Query 에서 처리하는 경우의 Fn Key Remap 관련 문의
shl628님의 기기정보
추가사양 및 설치(할)OS | Mac OS Catalina 10.15.5 버전, LG 15U480 - KA56K 노트북, CPU : Intel Core i5 - 8250U, Intel UHD Graphics 620 내장 그래픽 (외장 그래픽 장치 비활성화) |
---|---|
공지숙지/증상설명 | 숙지 |
shl628
댓글 28
답변 감사합니다. :)
기존의 VoodooPS2Controller.kext 를 삭제하고 ACPIKeyboard.kext 를 추가하고
DSDT 에 Device (RMKB) 를 인젝션하고 Config.plist 에 Kext 변경 사항을 수정하고 다시 부팅하였지만
노트북의 키보드가 인식되지 않아서 로그인 화면에서 사용자 계정의 비밀번호를 입력할 수 없게 되었습니다.
그래서, ACPIKeyboard.kext 를 삭제하고 다시 VoodooPS2Controller.kext 를 추가하여 원래의 상태로 돌아왔습니다.
그리고, 키보드의 F1 ~ F12 키 중에서 사용하지 않는 남는 Fn 키를 노트북 디스플레이의 밝기 조절 기능키로 작동하도록
VoodooPS2Keyboard.kext 의 Info.plist 에서 PS2 Map 을 직접 수정하여 Remapping 하는 방식으로 한번 시도해 보았습니다.
https://github.com/acidanthera/VoodooPS2/blob/master/VoodooPS2Keyboard/ApplePS2ToADBMap.h
그 결과, 노트북 디스플레이의 밝기 조절이 가능하게 되어서 이 방식으로 패치하여 사용하기로 하였습니다.
답변 감사드립니다. :)
VoodooPS2 업데이트 할 때마다 Info.plist 패치하셔야 할텐데 SSDT에 Name(\_SB.PCI0.LPCB.PS2K.RMCF,Package()...로 SSDT로 대신하시면 업데이트마다 Info.plist 패치 안 하셔도 됩니다. https://github.com/acidanthera/VoodooPS2/tree/master/Docs/ACPI 살펴보시면 도움이 되실 것 같습니다. Info.plist에 PS2 to ADB를 하셨는지 PS2 to PS2를 하셨는지에 따라 "Custom ADB Map" 또는 "Custom PS2 Map"으로 진행하시면 됩니다.
아니에요, 아래의 댓글도 참고해보려고 합니다. :)
아래의 댓글에서 설명해주신 내용으로도 한번 패치해보려고 합니다.
덕분에 많은 정보와 지식을 얻게 되는 것 같습니다. ㅎㅎ
자세한 설명과 답변 감사합니다. :)
화이팅하셔요~
다만 맥에서는 키보드를 통한 밝기 조절이 불가능한데(맥에서 PS/2가 네이티브가 아니라서 그런걸로 알고 있습니다. PS2 scancode인 경우 PS2 켁스트 Info.plist 안에 밝기 조절 코드를 넣어놔서 작동하는 경우가 있고 ACPI Querry로는 패치하기 전에는 안 되는 걸로 알고 있습니다.) _Q6E를 패치하셔야죠.(_Q11과 _Q12는 밝기Up과 밝기Down을 디버깅 했을 때 얻은 Method에 해당합니다. shl628님은 밝기Up과 밝기Down 디버깅으로 _Q6E를 얻으셨기 때문에 _Q6E를 패치하셔야 합니다.) Case(0x33)과 Case(0x34) 아래에 각각 밝기Up과 밝기Down에 해당하는 Notify들을 넣어서 테스트해보세요.(노트북에 따라 Up에 대해서는 Notify(~,0x10) Notify(~,0x0286) Notify(~,0x0206) Notify(~0x0406) Notify(~0x0366) 등이 있고 Down은 20, 0285, 0205, 0405, 365 등이 있습니다.)
Case (0x33) 에 Notify (PS2K, 0x0365) 를 입력하고
Case (0x34) 에 Notify (PS2K, 0x0366) 를 입력하여 해결했습니다. :)
처음에 0x10/0x20, 0x0206/0x0205, 0x0286/0x0285 를 차례대로 시도해보다가
Case (0x33) 에 Notify (PS2K, 0x0366) 를 입력하고
Case (0x34) 에 Notify (PS2K, 0x0365) 를 입력하였을 때 드디어 밝기 조절 Fn 키가 작동하였습니다.
그런데, Fn + Up 을 누르면 디스플레이의 밝기가 증가해야 하는데 감소하고
Fn + Down 을 누르면 반대로 디스플레이의 밝기가 증가해서 Notify 구문을 서로 바꿔주었습니다.
Case (0x33) 이 Fn + Down 이고 Case (0x34) 가 Fn + Up 인 것 같아요. ㅎㅎ
덕분에 디스플레이의 밝기를 Fn + Up / Down 키로 조절할 수 있게 되었습니다.
이제, 디스플레이 밝기 조절을 담당하는 _Q6E EC Query 를 SSDT Hot Patch 방식으로 한번 적용해보려고 합니다.
감사합니다. :)
오 잘 되었네요 ㅎㅎ 나머지 작업도 화이팅하세요~
사실 이제와서이긴 한데, Case (0x33)와 Case (0x34)가 Up인지 Down인지는 shl628님이 Notify(~0x86)과 0x87을 보시고 유추하셨던 건데 각각의 Case 아래에 EC querry 디버깅처럼 rmdt.p1("EC _Q6E(0x33) enter") 등으로 했으면 완벽했을 거라는 생각이 드네요 ㅎㅎ
❝[LG Ultra PC 15U480-KA56K 노트북] i5 - 8250U, UHD 620, Mac OS Catalina 10.15.5 설치와 안정화 중점 후기 + OpenCore r0.5.9❞
콘솔과 터미널에서도 EC Query 관련 Log 가 나오지 않는다면
밝기 조절 Fn 키를 EC Query 에서 담당하지 않고 PS2 Scan Codes 인 경우일 수도 있습니다.
아래의 사이트에서 PS2 Scan Codes 부분을 참고해보세요.
그리고, 다른 노트북의 OEM DSDT 에서 _Q6E Method 가 존재한다고 해도
_Q6E Method 라는 EC Query 가 무조건 밝기 조절을 담당하는 것은 아닙니다.
Debug 버전의 VoodooPS2Controller.kext 를 사용하여 Log 를 출력하고 코드를 확인하여
Custom ADB Map 에 해당 코드를 Remapping 해주세요.
❝삼성 노트북9 메탈 빅서 RC2 업데이트❞
본문에 기본 화면 밝기 줄이는 키는 Fn+NumLk 입니다. 제 키보드와 구성이 같다면요. 같을 겁니다. 저는 15UB470 이니까요..
지금
Fn+Pause 는 화면 밝기 증가
Fn+NumLk 는 화면 밝기 감소
입니다.
Fn + <-(화살표키 왼쪽) , ->(화살표키 오른쪽)은 소리 감소 증가가 먹습니다.
shl님의 aml 적용해 보았지만 똑같습니다. 화살표 상하로는 밝기 조절이 안됩니다.
좀 더 찾아 봐야 겠습니다.
아 그리고 노트북 키보드에 키패드 부분 NumLk 버튼이 먹나요? 저는 숫자키보다 home, end 같은 걸 쓰고 싶은데
일반 노트북 키보드에서 확장된 키패드 부분은 그냥 숫자만 되네요(넘버락키가 안먹음)
밝기 조절 Fn 키를 담당하는 EC Query 를 직접 확인해보셨나요?
LG 노트북이어도 완전히 동일한 모델이 아닌 이상 _Q6E Method 가 아닐 수도 있습니다.
ACPI 패치를 하지 않고 BrightnessKeys.kext 를 사용하는 방법도 있습니다.
https://github.com/acidanthera/BrightnessKeys
감사합니다.
네. 메서드는 완전히 동일합니다.
비슷한 기종이라 제가 자주 괴롭혀드릴거 같네요.
미리 죄송합니다.
_Q6E Method 에서 Switch 문의 조건에 해당하는 Object 가 WHOK 가 아닌 다른 변수이거나 Case 구문의 값이 다를 수도 있습니다.
그래서, DSDT 에 아래의 패치를 적용하고
- Add DSDT Debug Methods
- Instrument EC Queries
이 부분을 오픈코어(ssdt)에서 하는 방법을 알 수 있을까요?
일단 _Q6E 이게 하나 이니 모든게 어려운 상황이 인데, 이런 경우 HKNO (HotKey Value) 값을 사용하라고 하는데
https://www.insanelymac.com/forum/topic/305030-guide-how-to-fix-brightness-hotkeys-in-dsdt/?do=findComment&comment=2139810
근데 문제는 shl628 님 DSDT 에서도 hkno 값 마저도 안 보입니다.
그래서 VoodooPS2Controller.kext 가 아니라 ACPIKeybord.kext 로 설치 하여 kernel.log 에서 구분된 값이 기록 되어 나오는지
시도는 해볼수도 있겠습니다... 아래는 rebabman 의 관련 언급중 하나 입니다.
https://www.insanelymac.com/forum/topic/305030-guide-how-to-fix-brightness-hotkeys-in-dsdt/?do=findComment&comment=2121389
For example, there are not always two separate methods for each key (in the case of the u430 they are separate, yet the HP Envy shares one method for more than one key). And you'll need to send different codes and ACPIKeyboard.kext if you're using a PS2 driver other than mine. There is more details at my ACPIKeyboard.kext README at github.
한줄결론 : 왜 !! 하나 인 것인가!!