설치가 급하신분은 중간의 큰 제목으로 넘어가시면 됩니다.
안녕하세요 눈팅만 하던 햌린이입니다.
우선 제가 사용하고 있는 랩탑 모델은 삼성노트북 9 PEN입니다. (모델명 : nt940x5m-x78s)
예전부터 트랙패드를 잡아서 사용하고 싶었지만 수많은 시간을 날릴것을 알기에 그냥 무선 마우스/키보드 세트를 구매하여 사용해왔습니다.
그러다가 이번에 다시 시도를 하여 성공했습니다.
처음에는 트랙패드 제조사 알아내는것도 어렵더군요.
윈도우로 부팅 후 장치관리자에서 막 여기 저기 눌러보다가,
I2C이란 단어가 들어간 장치의 속성을 살펴보다가 ELAN이라는 단어를 보게 되어서 제 노트북의 트랙패드가 ELAN패드라는 사실을 알게 되었습니다.
그 뒤로는 엑팔육에서 ELAN트랙패드에 관한 수많은 글을 읽어보다가
Signic님의 글을 참고하여 트랙패드를 잡았습니다. 잡긴 잡았는데, 부팅을 할때마다 어떨땐 잡히고, 어떨땐 안 잡히더군요..
대체 왜 이렇게 랜덤하게 트랙패드가 잡혔다 안잡혔다 하는건지 하루를 꼬박 바쳐서 알아냈습니다.
결론부터 말씀드리면 원인은 켁스트의 충돌 (VoodooI2CFTE.kext가 ELAN트랙패드를 가로채는..)이였습니다.
https://voodooi2c.github.io/#Satellite%20Kexts/Satellite%20Kexts
위의 사이트는 VoodooI2C 켁스트에 대한 공식 도큐멘트입니다.
진작에 도큐멘트를 읽어볼걸 그랬네요...
(여기는 제가 어떻게 에러의 원인을 알아냈는지에 대해 다룬 글입니다)
도큐멘트의 Common Errors 탭에 들어가면 부팅시 VoodooI2C에 관련된 에러를 찾아볼수 있는 터미널 명령어를 알려줍니다.
log show --predicate 'process == "kernel"' --last 10m
그러나 단순히 이렇게만 명령어를 사용하면 10분(위에서 명령어 사용할 때 10m 으로 했기 때문) 동안 발생한 모든 에러가 나옵니다.. 가독성이 떨어지죠.
그래서 파이프라인으로('|') grep이란 명령어를 사용하여 제가 원하는 키워드에 대한 에러만 뽑아 냈습니다.
log show --predicate 'process == "kernel"' --last 10m | grep "키워드"
VoodooI2C에 대한 에러를 보기 위해서는 당연히 키워드 자리에 VoodooI2C가 들어가면 되겠지요.
그렇게 에러를 분석하던 중.. 트랙패드가 잡혔을 때와 안잡혔을 때의 로그 차이를 발견했습니다.
터치패드가 작동 안할때는 VoodooI2CFTE가 ELAN트랙패드를 발견했다는 로그가 존재하더군요
순간 아차 싶었습니다. 그래서 빠르게 도큐멘트의 Satelite탭에 들어가서 각 켁스트에 대한 설명을 읽어봤습니다.
VoodooI2CCFTE.kext는 FTE프로토콜을 사용하는 FTE1001트랙패드 전용 켁스트였던겁니다....
그래서 이 켁스트를 S/L/E에서 지워주고 EFI의 켁스트에서도 지워주자.. 마법처럼 터치패드가 항상 잡히기 시작했습니다.
저 외에도 많은 분들이 VoodooI2C로 트랙패드를 잡으려고 시도했으나, 잡히지 않고 포기하는 경우가 많으셨을 겁니다.
아마 저처럼 해당 켁스트에 대한 이해도 없어 한움큼 넣었다가 실패하셨던게 아닌가 싶습니다.
아마 이렇게 했는데도 됐던 분들은 운이 좋으셨던겁니다..ㅎㅎ
아래는 본격적인 설명입니다.
VoodooI2C로 트랙패드(ELAN, Synaptics, FTE) 잡는 법
1. S/L/E에서 AppleIntelpssI2C 관련 켁스트 삭제
우선 해킨을 좀 해보신 분이라면 다들 아시겠지만 S/L/E는 /System/Library/Extensions와 디렉토리를 칭하는 용어입니다.
터미널을 통해서 해당 디렉토리로 이동한 후 (cd /System/Library/Extensions 을 입력하시면 됩니다.) AppleIntelpssI2C 관련 켁스트 있는지 확인해 보셔야 하는데,
ls | grep AppleIntelLpssI2C 를 터미널에 입력하시면 아마도 터미널 창에 AppleIntelLpssI2C.kext AppleIntelLpssI2CController.kext 가 출력될겁니다.
만약에 없다면 따로 삭제 작업을 안해주셔도 되지만 있다면 sudo rm -r AppleIntelpssI2C.kext AppleIntelpssI2CController.kext 를 입력해서 삭제해주십시오.
2. kext 설치
- VoodooPS2Controller.kext (https://github.com/acidanthera/VoodooPS2/releases)
- VoodooI2C관련 켁스트들 (https://github.com/alexandred/VoodooI2C/releases)
- 필수 켁스트 : VoodooPS2Controller, VoodooI2CHID, VoodooI2CAtmelMXT(필수일지는 모르겠으나 이 켁스트가 충돌을 일으킬 일은 없어보입니다)
- 선택 켁스트 : VoodooI2CElan, VoodooI2CSynaptics, VoodooI2CFTE (이 켁스트들이 같이 들어가면 충돌을 일으킬 확률이 큽니다)
(본인 트랙패드에 맞게 넣으시면 됩니다)
(본인 트랙패드 확인은 윈도우에서 '장치 관리자'에 들어가서 확인하시면 됩니다)
많은 분들이 VoodooPS2Controller와 VoodooI2C에 대해 설명할 때 Rehabman의 켁스트를 갖고 오시더군요.
그러나 릴리즈 날짜를 확인해보면 개발이 중단/지연된지 꽤 되었다는 사실을 알 수 있습니다.
실제로 Rehabman의 것으로 터치패드를 잡으면 사소한 버그들이 많습니다(갑자기 포인터가 화면 상단으로 튄다던가..)
그러나 제가 소개한 git repo들은 현재도 활발하게 개발이 되고 있는 프로젝트들 입니다. 그리고 훨씬 안정적이고요.
위의 다운받은 kext들을 clover의 kext 폴더로 옮겨주면 됩니다.
위의 kext들을 받아서 kext wizard와 같은 유틸리티 프로그램을 이용하여 S/L/E에 설치합니다.
그리고 권한 수정도 해주셔야 합니다.
아 그리고 위의 켁스트들을 EFI/Clover/kexts/Other로 옮겨줘야합니다.
이렇게 옮겨주지 않으면 시스템 환경설정에서 트랙패드가 잡히지 않더군요.
+ 추가 ) System Preferences의 Trackpad 패널을 정상적으로 사용하기 위해서는 배터리 패치를 해줘야합니다.
그렇지 않으면 패널에 들어가도 트랙패드 옵션 설정창이 뜨지 않고 블루투스 장치를 기다리고 있다는 안내만 나옵니다.
(배터리 유무 여부로 랩탑과 데스크탑을 구별지어, 그에 맞게 트랙패드 옵션 설정을 제공하는 메커니즘인것 같습니다 )
그래서 어떤 방법을 이용하던(1. ACPIBatteryManager.kext + DSDT패치 / 2. SMCBatteryManager.kext) 배터리 상태바가 뜨기만 하면 됩니다.
각자 본인의 노트북에 적용되는 걸로 하시면 됩니다.
저는 개인적으로 SMCBatteryManager.kext가 작동하지 않아서 ACPIBatteryManager.kext와 DSDT패치를 사용하여 적용 완료했습니다.
3. DSDT 패치
이 부분은 우선 DSDT 패치가 무엇인지 알고 계셔야하는데, 많은 분들이 그렇듯 저도 원도리님의 글을 읽고 배웠습니다.
저와 같은 모델을 쓰고 있는 분들을 위한 DSDT 패치 팁
ACPI덤프파일 생성 후 DSDT.aml 파일을 DSDT.dsl 파일로 디스어셈블하고 나서 컴파일을 해주면, 컴파일 에러가 발생합니다.
컴파일 에러를 잘 살펴보면 영문모를 zero가 들어가 있다는 건데, 이를 해결하기 위해서 에러 문구를 클릭하면 에러가 발생한 지점으로 포커스가 옮겨집니다.
그래서 가보면 많은 zero들이 연속적으로 적혀있는 것을 발견하실 수 있는데 그 zero들을 전부 지워주시면 됩니다.
하나의 에러를 해결하셨다면 다시 컴파일을 눌러서 에러를 확인하고 나타난 에러를 고치시는것을 추천드립니다.
이제 DSDT패치가 뭔지 알게 되셨다고 생각하겠습니다.
저희가 건드릴 DSDT 패치는 VoodooI2C-Patches입니다. 그 중에서도
- [GPIO] Controller Enable [SKL+]
- 본인의 윈도우 버전에 맞는 Windows Patch
이 두가지 패치 후에 .aml 파일로 저장하여 EFI/Clover/ACPI/patched로 옮겨 주시면 됩니다.
이 글을 통해서 랩탑 유저분들이 고유의 트랙패드를 사용하셨으면 좋겠습니다.
나중에 해킨을 완벽하게 성공하면 EFI파일과 함께 다시 찾아오겠습니다.
감사합니다.
그렇군요 ㅎㅎㅎㅎ 저의 경우에는 켁스트 충돌로 인해서 지울수 밖에 없었습니다
원래는 켁스트끼리 자동적으로 알아서 작동하려나요
아직 많이 부족합니다 계속 공부해야겠네요!!
본인이 겪었던 시행착오 절차 그대로 공유하실려는 마음도 아름답습니다. 다른 분들에게 많은 도움이 될 겁니다
저도 엑팔육에서 많이 배우고 있기에, 제가 알게된 사실을 다른 분들에게도 알려드리고 싶네요 ㅎㅎ
배터리가 원래는 잡혔는데..!! 다른거 시도하다가 커널패닉이 일어난 뒤로는 작동을 안하네요 ㅠㅠ
배터리가 잡혀야 System Preferences - Trackpad 패널에서 트랙패드 옵션 조작을 할 수 있다고 합니다
그래서 다시 열심히 삽질해서 잡아보려구요 ㅎㅎ
레벨제한으로 잠겨도 대댓글을 남기면 볼수 있네요...? 저도 사실 배터리 잡으려는게 RehabMan 댓글중에서 배터리 잡아야 트랙패드 옵션 만질수있다는 말이 있어서 ㅋㅋㅋㅋ nt930qaa 쓰는중인데 탭핑이 너무 쓰고싶어 배터리 삽질중입니다 ㅋㅋ
저도 저녁 즈음에 삽질 끝내서 다 잡히네요 ㅎㅎ 이제 cpu 스피드스탭이랑 키보드 레이아웃만 잡으면 완벽할거같습니다! 다만 이쪽은 진짜 봐도봐도 모르겠는게 문제지만요 ㅋㅋㅋ
이상하게 카탈리나 쓰는 데탑에는 항목이 있는데 모하비 쓰는 노트북에는 display / 디스플레이 항목이 없네요 ㅋㅋ 아직 삽을 더 들어야되나봅니다 ㅋㅋㅋㅋㅋ
그럼 밝기가 완벽하게 잡힌게 아닌모양이네요. 두드려패서(?) 잡아줘야겠습니다 ㅋㅋㅋㅋㅋ
<key>framebuffer-fbmem</key>
<data>
AACQAA==
</data>
<key>framebuffer-patch-enable</key>
<integer>1</integer>
<key>framebuffer-stolenmem</key>
<data>
AAAwAQ==
</data>
<key>framebuffer-unifiedmem</key>
<data>
/////w==
</data>
config.plist 파일을 코드 에디터로 여신 다음 위의 <key> 값을 찾아서 해당 데이터 값을 위와 같이 바꿔 주시면 vram이 4기가 정도로 늘어날거에요
안녕하세요.....내일 출근 해야하는데.....
도움주신덕에...https://github.com/RehabMan/OS-X-Clover-Laptop-Config 여기서 config를 받아서 옮기기만 하면... 그래픽이 잡힙니다..
근데 사운드가 날라가 버리네요.... alc 256도 알아내고... 1, 5, 11, 13, 14, 21,22, 28 , 56, 57, 66, 96 다 때려봤는데도....
사운드가 안잡히네요...인젝션 넘버지정 하는거 말고 다른 방법으로 잡아야 할까요? ㅜㅜ 조언부탁드립니다...
저의 기종은 NT950QAA-X58A 이며 plist파일 첨부 드렸습니다.
"님의 댓글"
이 댓글을 신고 하시겠습니까?
제목 | 조회 수 | 날짜 | 글쓴이 |
---|---|---|---|
macOS Sequoia 15.0.1 24A348 정식버젼 고스트 이미지 OC 1.0.2 ft: 전체공개 +29 | 938 | 24.10.1121:10 | 좌절금지 |
오픈코어 1.0.2 +23 | 575 | 24.10.0900:22 | 줌바이퍼 |
[중급편] 노트북 해킨 +16 | 1403 | 24.07.1219:19 | Stultus |
macOS Ventura 13.7 22H123 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체 공개 +17 | 575 | 24.09.1917:09 | 좌절금지 |
macOS Sonoma 14.7 23H124 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체공개 +31 | 909 | 24.09.1723:58 | 좌절금지 |
[초급편] 문제 스스로 해결하기 +20 | 4003 | 24.03.2920:07 | Stultus |
[입문편] 첫 해킨 길라잡이 +40 | 5087 | 24.01.1218:54 | Stultus |
[필독 - 안정화] macOS 해킨토시 설치 후 안정화 작업 목록 및 글타래 모음 총정리 📋 +67 | 5.1만 | 23.01.0913:39 | shl628 |
Hot AMD Sequoia용 AppleALC 1.9.2 +3 | 107 | 24.10.2319:04 | 사노라맨 |
Hot [Sequoia 15.0.1, OC r1.0.2] ASUS TUF B550-PLUS / RYZEN 5 5600X / RX470 +2 | 104 | 24.10.2322:26 | 뿌엥 |
Hot OCLP로 지원되지 않는 기기/dGPU를 사용하는 해킨토시의 사이드카 품질 문제 해결방법 +1 | 120 | 24.10.2321:29 | 해킨도전자 |
104 | 24.10.2322:26 | 뿌엥 | |
120 | 24.10.2321:29 | 해킨도전자 | |
107 | 24.10.2319:04 | 사노라맨 | |
786 | 24.10.1412:27 | shl628 | |
671 | 24.10.1316:00 | 수박 | |
344 | 24.10.1222:56 | Stultus | |
938 | 24.10.1121:10 | 좌절금지 | |
733 | 24.10.1115:53 | 수박 | |
575 | 24.10.0900:22 | 줌바이퍼 | |
1403 | 24.07.1219:19 | Stultus | |
1213 | 24.10.0500:31 | 줌바이퍼 | |
569 | 24.10.0410:49 | Tamy | |
749 | 24.09.2923:48 | 머트 | |
628 | 24.09.2822:28 | 머트 | |
463 | 24.09.2808:22 | Tamy | |
894 | 24.09.2321:32 | Stultus | |
994 | 24.09.2210:59 | 좌절금지 | |
644 | 24.09.2203:23 | 누림어멈 | |
1191 | 24.09.1919:17 | 좌절금지 | |
575 | 24.09.1917:09 | 좌절금지 | |
498 | 24.09.1813:37 | Stultus | |
909 | 24.09.1723:58 | 좌절금지 | |
601 | 24.09.1722:40 | 좌절금지 | |
453 | 24.09.1717:13 | 맥가즈아 | |
562 | 24.09.1708:13 | 김경석 | |
234 | 24.09.1617:47 | Panictosh | |
768 | 24.09.1504:35 | Tamy | |
584 | 24.09.1319:18 | Stultus | |
706 | 24.09.1019:44 | 치토 | |
484 | 24.09.0118:13 | 머핀X | |
462 | 24.09.0112:54 | 해킨도전자 | |
546 | 24.08.3115:34 | 머핀X | |
306 | 24.08.2601:42 | 화정큐삼 | |
305 | 24.08.2422:59 | 하나브 | |
318 | 24.08.2316:25 | 화정큐삼 | |
415 | 24.08.1810:56 | CanBe | |
363 | 24.08.1800:04 | 화정큐삼 | |
300 | 24.08.1722:03 | 화정큐삼 | |
201 | 24.08.1710:14 | jbhlyk | |
312 | 24.08.1622:06 | Stultus | |
218 | 24.08.1511:16 | hackillious | |
169 | 24.08.1421:30 | 세유니 | |
419 | 24.08.1419:58 | Stultus | |
377 | 24.08.1311:26 | 오디세이 | |
270 | 24.08.1115:46 | 좌절금지 | |
186 | 24.08.1111:21 | 티타보르 | |
233 | 24.08.1022:46 | Stultus | |
538 | 24.08.1022:10 | 오디세이 | |
168 | 24.08.1019:05 | jbhlyk | |
200 | 24.08.0923:20 | RogerT |
내장 kext는 일부 필요한 경우만 지우는겁니다