diff --git a/README.md b/README.md index 513db1b..22ec934 100644 --- a/README.md +++ b/README.md @@ -28,10 +28,10 @@ > ## SUMMARY: | Fully functional | Non-functional | Semi-functional. Additional pulls needed and welcomed. | |-------------------------------------------------------------------|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------| -| WiFi, Bluetooth, Apple Continuity \*need card replacement ⚠️| Fingerprint Reader (not needed, DISABLED at BIOS) ❌| HDMI, currently only outputs at 1080p.Though capable of 4K 4096x2150. ⚠️| +| WiFi, Bluetooth, Apple Continuity ✅ \*need card replacement| Fingerprint Reader (not needed, DISABLED at BIOS) ❌| HDMI, currently only outputs at 1080p.Though capable of 4K 4096x2150. ⚠️| | USB A, USB C, Webcam, Audio Playback/Recording Sleep, Ethernet, Intel Graphics, TrackPoint and Trackpad ✅ | Wireless WAN (DISABLED at BIOS) *ENABLED if you have a 2nd drive connected❌ | Thunderbolt 3 Hotplug: partially working [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002) ⚠️| | iCloud suite: App Store, iMessage, FaceTime, iCloud Drive, etc... ✅ | Hibernation ❌ | Power management and optimizations. See [Issue #28](https://github.com/tylernguyen/x1c6-hackintosh/issues/28) ⚠️| -| Since some Fn functions, such as Mic Mute, Network Toggle do not have equivalent in macOS, these keys are assigned F14-F20 which can then be programmed to a preferred shortcut by you. ⚠️ | | USB power property injection - unsure of real values. ⚠️| +| Multimedia Fn keys ✅ *need [Karabiner Elements](https://ke-complex-modifications.pqrs.org/) and [BetterTouchTool](https://folivora.ai/) | | USB power property injection - unsure of real values. ⚠️| | MicroSD card reader ✅| | | > ## NEEDED: diff --git a/docs/3_README-POSTinstallation.md b/docs/3_README-POSTinstallation.md index 6596c92..2dc820c 100644 --- a/docs/3_README-POSTinstallation.md +++ b/docs/3_README-POSTinstallation.md @@ -11,21 +11,21 @@ For the kexts you will be using, make sure to create matching entries within `Op 5. Refer to the table below for the other post installtion configurations for each particular issue. Some issues are easy to fix, simply requiring a kext installtion or running a script, while others are my involved and require SSDT patching. 6. For those other, more complicated issues, proceed to `4_README-ACPIpatching.md` -| Feature | Status | Dependency | Remarks | -| :----------------------------------- | ------ | ------------------------------------------------------------ | ------------------------------------------------------------ | +| Feature | Status | Dependency | Remarks | +| :----------------------------------- | ------ | ------------------------------------------------------------ | ------------------------------------------------------------ | | macOS (10.14.x or 10.15.x) | ✅ | `VirtualSMC.kext`, `Lilu.kext`, Clover or OpenCore Bootloader | OpenCore is preferred. | | iMessage/ FaceTime | ✅ | Whitelisted Apple ID, Valid SMBIOS | [Guide](https://www.tonymacx86.com/threads/an-idiots-guide-to-imessage.196827/) | | Siri | ✅ | Apple ID, Working audio recorder | Needs `AppleALC` | | iTunes Video Playback | ✅ | `WhateverGreen.kext`, Apple ID (*Optional*) | - | | Sidecar | ✅ | iPad with iPadOS 13 | Tested with iPad Mini with iPadOS 13.1.2 | -| WiFi | ✅ | Native with BCM94360CS2. `AirportBrcmFixup` otherwise. | | -| Bluetooth | ✅ | Native with BCM94360CS2. `BrcmFirmwareRepo.kext`, `BrcmPatchRAM3.kext`, and `BrcmBluetoothInjector.kext` otherwise. | - | -| Continuty | ✅ | Native with BCM94360CS2. `BT4LEContiunityFixup.kext` otherwise. Working Blutetooth and WiFi setup | - | -| AirDrop | ✅ | Native with BCM94360CS2. `BT4LEContiunityFixup.kext` otherwise. Working Blutetooth and WiFi setup | - | +| WiFi | ✅ | Native with BCM94360CS2. `AirportBrcmFixup` otherwise. | See `patches/OpenCore Patches/` for specific network card. | +| Bluetooth | ✅ | Native with BCM94360CS2. `BrcmFirmwareRepo.kext`, `BrcmPatchRAM3.kext`, and `BrcmBluetoothInjector.kext` otherwise. | See `patches/OpenCore Patches/` for specific network card. | +| Continuty | ✅ | Native with BCM94360CS2. `BT4LEContiunityFixup.kext` otherwise. Working Blutetooth and WiFi setup | See `patches/OpenCore Patches/` for specific network card. | +| AirDrop | ✅ | Native with BCM94360CS2. `BT4LEContiunityFixup.kext` otherwise. Working Blutetooth and WiFi setup | See `patches/OpenCore Patches/` for specific network card. | | TrackPoint | ✅ | Patched `VoodooPS2Controller.kext` | - | | TrackPad | ✅ | `VoodooPS2Controller.kext` | - | | Built-in Keyboard | ✅ | `VoodooPS2Controller.kext` | - | -| Battery Percentage Indication | ✅ | `SSDT-OCBAT0-TP_re80_tx70-80_x1c5th-6th_s12017_p51.aml` | Use [MaciASL](https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/) | +| Battery Percentage Indication | ✅ | `SSDT-OCBAT0-TP_tx80_x1c6th.aml` | Use [MaciASL](https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/) | | CPU Power Management (SpeedShift) | ✅ | `XCPM` and `CPUFriend.kext`, generate your own CPUFriendDataProvider with [CPUFriendFriend](https://github.com/corpnewt/CPUFriendFriend_ or [one-key-cpufriend](https://github.com/stevezhengshiqi/one-key-cpufriend). | | IGPU Power Management | ✅ | `XCPM` | - | | PCIe Ethernet | ✅ | `IntelMausi.kext` | - | | @@ -36,9 +36,9 @@ For the kexts you will be using, make sure to create matching entries within `Op | Brightness Adjustments | ✅ | `WhateverGreen.kext` and `SSDT-PNLF-SKL_KBL.aml` | - | | Micro SD Card Reader | ✅ | Custom `USBPorts.kext` See current OpenCore-EFI kext folder. You can create your own with Hackintool. | - | | USB 3.1 | ✅ | Custom `USBPorts.kext` See current OpenCore-EFI kext folder. You can create your own with Hackintool. | - | -| DisplayPort on Thunderbolt 3 Dock | ⚠️ | `SSDT-TB3.aml`, `IOElectrify.kext` | [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002)| +| DisplayPort on Thunderbolt 3 Dock | ⚠️ | `SSDT-TB3.aml`, `IOElectrify.kext` | [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002)| | Thunderbolt 3 Dock (Port Replicator) | ✅ | `SSDT-TB3.aml`, `IOElectrify.kext` | - | -| Thunderbolt 3 Hotplug | ⚠️ | `SSDT-TB3.aml`, `IOElectrify.kext` | [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002)| +| Thunderbolt 3 Hotplug | ⚠️ | `SSDT-TB3.aml`, `IOElectrify.kext` | [More details](https://github.com/tylernguyen/x1c6-hackintosh/issues/24#issuecomment-603183002)| | ThinkPad TB3 Dock (40AC) Ethernet | ✅ | `AppleRTL815XComposite109.kext`, `AppleRTL815XEthernet109.kext` | [Item page](https://support.lenovo.com/au/en/solutions/acc100356) | | CalDigit TS3 Plus Dock | ✅ | | [Item page](https://www.apple.com/shop/product/HMX12ZM/A/caldigit-ts3-plus-dock) | | HiDPI *(Optional)* | ✅ | [xzhih/one-key-hidpi](https://github.com/xzhih/one-key-hidpi) | Scaling issues post-sleep fixed with AAPL, ig-platform `BAAnWQ==` | diff --git a/docs/5_README-other.md b/docs/5_README-other.md index 9211f82..dc158aa 100644 --- a/docs/5_README-other.md +++ b/docs/5_README-other.md @@ -6,10 +6,22 @@ By default, Windows, Left Alt, and Right Alt are mismapped. An easy fix for this is to install [Karabiner-Elements](https://karabiner-elements.pqrs.org/) and configure it as: ![karabiner_modifier](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/assets/img/macOS%20Settings/karabiner_modifier.png) +## Multimedia Fn Key Patching: +Since macOS doesn't not natively support some multimedia Fn key actions. BetterTouchTool is required to program these actions. Keyboard Mastero is also an alternative but I've found that BetterTouchTool is a simpler and easier option. +Simply import `patches/BetterTouchTool/x1c6-functions.bttpreset`. My settings are as followed: +* F7 = Screen Mirroring On/Off +* F9 = Open System Preferences +* F10 = Toggle Bluetooth On/Off +* F11 = Switch Keyboard Input Language (Set in System `Preferences/Keyboard`) +* F12 = Open Terminal +* PrtSc = Window Screen Capture +Of course, feel free to change this to your preference in BetterTouchTool. + + ## Touchpad Settings in macOS: * Force Click is enabled by default, which turns any click on the trackpad into a force touch. I suggest you turn this off. * In addition, I prefer to have tap to click on. -See my touchpad settings: +See my touchpad settings: ![touchpad](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/assets/img/macOS%20Settings/touchpad.png) ## Headphone Patch: diff --git a/patches/ALCPlugFix/README.md b/patches/ALCPlugFix/README.md index 6d093f9..7901155 100644 --- a/patches/ALCPlugFix/README.md +++ b/patches/ALCPlugFix/README.md @@ -1,11 +1,11 @@ ## **Use Hackintool to determine your audio layout's pin configuration. For x1c6 owners with `ALC285`, it will most likely be the same and you can simply install my prebuilt files.** -![alc285_pin](https://github.com/tylernguyen/x1c6-hackintosh/tree/master/docs/references/alc285_pin.png) +![alc285_pin](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/references/alc285_pin.png) Build ------- -By default its code command is for **Lenovo ThinkPad X1 Carbon 6th Gen** with **`ALC285`** Audio Codec with Combo Jack, you may need to change that in `fixAudio` function: -![ALCPlugFix_fixAudio](https://github.com/tylernguyen/x1c6-hackintosh/tree/master/docs/img/ALCPlugFix_fixAudio.png) +By default its code command is for **Lenovo ThinkPad X1 Carbon 6th Gen** with **`ALC285`** Audio Codec with Combo Jack, you may need to change that in `ALCPlugFix/main.m`'s `fixAudio` function: +![ALCPlugFix_fixAudio](https://github.com/tylernguyen/x1c6-hackintosh/blob/master/docs/img/ALCPlugFix_fixAudio.png) After `fixAudio` has been adjusted according to your pin layout, run: ``` diff --git a/patches/BetterTouchTool/x1c6-functions.bttpreset b/patches/BetterTouchTool/x1c6-functions.bttpreset new file mode 100644 index 0000000..d69c331 --- /dev/null +++ b/patches/BetterTouchTool/x1c6-functions.bttpreset @@ -0,0 +1,182 @@ +{ + "BTTPresetName" : "x1c6-functions", + "BTTPresetColor" : "78.353000, 224.400000, 65.076000, 255.000000", + "BTTPresetUUID" : "638322AA-15F8-437F-A884-69D474E856F7", + "BTTPresetContent" : [ + { + "BTTAppBundleIdentifier" : "BT.G", + "BTTAppName" : "Global", + "BTTAppAutoInvertIcon" : 1, + "BTTTriggers" : [ + { + "BTTTriggerType" : 630, + "BTTTriggerTypeDescription" : "Group", + "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut", + "BTTPredefinedActionType" : -1, + "BTTPredefinedActionName" : "No Action", + "BTTEnabled2" : 1, + "BTTKeyboardShortcutKeyboardType" : 0, + "BTTRepeatDelay" : 0, + "BTTUUID" : "41C56E38-AFF2-47DE-A652-8C40D498BC80", + "BTTTriggerOnDown" : 1, + "BTTNotesInsteadOfDescription" : 0, + "BTTGroupName" : "x1c6-functions", + "BTTEnabled" : 1, + "BTTModifierMode" : 0, + "BTTShortcutKeyCode" : -1, + "BTTShortcutModifierKeys" : -1, + "BTTOrder" : 0, + "BTTDisplayOrder" : 0, + "BTTAutoAdaptToKeyboardLayout" : 0, + "BTTAdditionalActions" : [ + { + "BTTGestureNotes" : "F7 = Toggle Display Mirroring", + "BTTTriggerType" : 0, + "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut", + "BTTPredefinedActionType" : 266, + "BTTPredefinedActionName" : "Toggle Display Mirroring On\/Off", + "BTTAdditionalConfiguration" : "8388608", + "BTTEnabled2" : 1, + "BTTKeyboardShortcutScope" : 1, + "BTTKeyboardShortcutKeyboardType" : 0, + "BTTRepeatDelay" : 0, + "BTTUUID" : "2B2A7AB6-EA55-4896-AC67-B9F10E7048A0", + "BTTTriggerOnDown" : 1, + "BTTNotesInsteadOfDescription" : 0, + "BTTLayoutIndependentChar" : "F16", + "BTTEnabled" : 1, + "BTTModifierMode" : 0, + "BTTShortcutKeyCode" : 106, + "BTTShortcutModifierKeys" : 8388608, + "BTTOrder" : 0, + "BTTDisplayOrder" : 0, + "BTTAutoAdaptToKeyboardLayout" : 0, + "BTTTriggerConfig" : { + "BTTKeyboardShortcutScope" : 1 + } + }, + { + "BTTGestureNotes" : "F9 = Launch System Preferences", + "BTTTriggerType" : 0, + "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut", + "BTTPredefinedActionType" : 49, + "BTTPredefinedActionName" : "Launch Application \/ Open File \/ Start Apple Script …", + "BTTLaunchPath" : "file:\/\/\/System\/Applications\/System%20Preferences.app", + "BTTAdditionalConfiguration" : "8388608", + "BTTEnabled2" : 1, + "BTTKeyboardShortcutScope" : 1, + "BTTKeyboardShortcutKeyboardType" : 0, + "BTTRepeatDelay" : 0, + "BTTUUID" : "CEE18E36-8CBA-4D0B-B480-8C9027F034CC", + "BTTTriggerOnDown" : 1, + "BTTNotesInsteadOfDescription" : 0, + "BTTLayoutIndependentChar" : "F19", + "BTTEnabled" : 1, + "BTTModifierMode" : 0, + "BTTShortcutKeyCode" : 80, + "BTTShortcutModifierKeys" : 8388608, + "BTTOrder" : 1, + "BTTDisplayOrder" : 0, + "BTTAutoAdaptToKeyboardLayout" : 0, + "BTTTriggerConfig" : { + "BTTKeyboardShortcutScope" : 1 + } + }, + { + "BTTGestureNotes" : "F10 = Toggle Bluetooth", + "BTTTriggerType" : 0, + "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut", + "BTTPredefinedActionType" : 279, + "BTTPredefinedActionName" : "Toggle Bluetooth Enabled\/Disabled", + "BTTAdditionalConfiguration" : "0", + "BTTEnabled2" : 1, + "BTTKeyboardShortcutScope" : 1, + "BTTKeyboardShortcutKeyboardType" : 0, + "BTTRepeatDelay" : 0, + "BTTUUID" : "609D822A-B55F-46FB-8F90-DFDBDE09ED92", + "BTTTriggerOnDown" : 1, + "BTTNotesInsteadOfDescription" : 0, + "BTTLayoutIndependentChar" : "", + "BTTEnabled" : 1, + "BTTModifierMode" : 0, + "BTTShortcutKeyCode" : 90, + "BTTShortcutModifierKeys" : 8388608, + "BTTOrder" : 2, + "BTTDisplayOrder" : 0, + "BTTAutoAdaptToKeyboardLayout" : 0, + "BTTTriggerConfig" : { + "BTTKeyboardShortcutScope" : 1 + } + }, + { + "BTTGestureNotes" : "PrtSc = Window Screen Capture", + "BTTTriggerType" : 0, + "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut", + "BTTPredefinedActionType" : 169, + "BTTPredefinedActionName" : "Capture Screenshot (Configurable)", + "BTTScreenshotOptions" : "-i;;-w;;-t;;png;;BTTAdditionallyCopyToClipboard;;\/Users\/jessica\/Pictures\/Screenshot_{datetime}_{random}.png;;", + "BTTScreenshotDateFormat" : "yyyy-MM-dd HH.mm.ss", + "BTTAdditionalConfiguration" : "8388608", + "BTTEnabled2" : 1, + "BTTKeyboardShortcutScope" : 1, + "BTTKeyboardShortcutKeyboardType" : 0, + "BTTRepeatDelay" : 0, + "BTTUUID" : "523CDC75-1C67-43A9-BFA9-7A38AFE1BBC1", + "BTTTriggerOnDown" : 1, + "BTTNotesInsteadOfDescription" : 0, + "BTTLayoutIndependentChar" : "F13", + "BTTEnabled" : 1, + "BTTModifierMode" : 0, + "BTTShortcutKeyCode" : 105, + "BTTShortcutModifierKeys" : 8388608, + "BTTOrder" : 3, + "BTTDisplayOrder" : 0, + "BTTAutoAdaptToKeyboardLayout" : 0, + "BTTTriggerConfig" : { + "BTTKeyboardShortcutScope" : 1 + } + }, + { + "BTTGestureNotes" : "F12 = Favorite App", + "BTTTriggerType" : 0, + "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut", + "BTTPredefinedActionType" : 49, + "BTTPredefinedActionName" : "Launch Application \/ Open File \/ Start Apple Script …", + "BTTLaunchPath" : "file:\/\/\/System\/Applications\/Utilities\/Terminal.app", + "BTTAdditionalConfiguration" : "8388608", + "BTTEnabled2" : 1, + "BTTKeyboardShortcutScope" : 1, + "BTTKeyboardShortcutKeyboardType" : 0, + "BTTRepeatDelay" : 0, + "BTTUUID" : "0B36F550-8965-43E7-AF7A-EAFFCF5CBC9B", + "BTTTriggerOnDown" : 1, + "BTTNotesInsteadOfDescription" : 0, + "BTTLayoutIndependentChar" : "F18", + "BTTEnabled" : 1, + "BTTModifierMode" : 0, + "BTTShortcutKeyCode" : 79, + "BTTShortcutModifierKeys" : 8388608, + "BTTOrder" : 4, + "BTTDisplayOrder" : 0, + "BTTAutoAdaptToKeyboardLayout" : 0, + "BTTTriggerConfig" : { + "BTTKeyboardShortcutScope" : 1 + } + } + ] + } + ] + }, + { + "BTTAppBundleIdentifier" : "com.apple.finder", + "BTTAppName" : "Finder", + "BTTAppAutoInvertIcon" : 1, + "BTTTriggers" : [ + + ] + } + ], + "BTTPresetSnapAreas" : [ + + ] +} \ No newline at end of file