I am a full time student, who has limited knowledge about hackintosh. any help or improvement towards the existing problem of this hackintosh patch is appreciated.
Recent
2021-1-5
Completely Rebuilt based on Tyler Nguyen's ThinkPad X1 Carbon 6th OC Patch thanks to the two machine's hardware similarities:
- Applied The latest TB3 Patch: Theoretically TB3 can be recognized right in the System Information App, and hotplug will work fine.
- NOTE: all USB 3.1 functionalities & TB3 hotplug is EXCLUSIVE at the moment, make your own choice!
- Now the default patch is for non-BIOS modded machines.
- Applied YogaSMC and updated all other patches to the latest version. Now you can ctrl battery wear level, yogamode and FANSPEED right inside the OS!
- Implemented smooth screen brightness adjustment.
- Added Support for Hibernation Mode 25. As with normal macOS machines, mode 3 is default, but if you want, mode 25 is now also an option.
- Updated OC to 0.6.3
- Completely fixed sleeping issues in theory
config.plist
's file structureEFI
file can be used as Installation Boot file. DW1560 Wireless Card Support
With the help of @Jamesxxx1997 , we successfully completed the adaptation of the patch to Non-BIOS Modded Machines, and introduced a new way to enable TB3 support.
However, this new method still need you to turn off Thunderbolt 3 BIOS Assist Mode, which cut the battery life at about 50%.
We are continuing investigating the ways to enable USB-C support without the cost of battery life.
Besides, the notification center gesture problem has successfully solved by using the DEBUG
version of VoodooRMI
.
Requested by @Jamesxxx1997, I'm now diving in to fix touchscreen support.
TouchScreen successfully driven. Now both fingertouch and pentouch can work flawlessly.
Adjust ForceTouchMinPressure
in the configuration file of VoodooRMI.kext
to 5
to enable ForceTouch Support
IOEletricity.kext
and SSDT-TB3.aml
and turn "Thunderbolt BIOS Assist Mode" in BIOS from DISABLE
to ENABLE
. SUMMARY:
x1y gen3-hackintosh is currently stable and fully functioning except for USB-C and Thunderbolt 3 Support.
Fully functional | Non-functional | Semi-functional. Additional pulls needed and welcomed. |
---|---|---|
Native Power Management✅ *Need BIOS modding | - | Thunderbolt 3 hotplug (Must disable TB3 BIOS assist mode, No TB3 Device for testing)⚠ |
Wi-Fi, Bluetooth, All Apple Continuity Functions including Sidecar, iCloud Suite(Generate your own SMBIOS information)✅ *Network Card Replacement (DW1820A) Needed | Fingerprint Reader and WWAN Card❌ (Disable them in BIOS) | |
USB-A 3.0/2.0 Ports, WebCam and Complete Audio Functions, Sleep, Ethernet, iGPU, MicroSD Card Reader✅ | - | Thunderbolt and full USB-C Support ⚠*(TB3 Hotpatch Can be enabled at the cost of Battery life, Turn them on at your own risk; USB-C partial support is present) |
Full TouchScreen Support, Full TrackPoint and TrackPad Support, Up to 5 finger gestures, Ultra Smooth Experience ✅*Using Voodoo RMI | - | |
BIOS Mod, unlocking Advanced Menu. ✅ |
Unable to patch WWAN Whitelist❌ | |
HIDPI (1680*945) using One-key HIDPI, HDMI Output & Hotplug✅ | - | 4K UHD via HDMI Port and USB-C port: currently displays cannot recognize the output signal correctly, need further diving |
Note:
(2021-1-5)
The latest patch dropped support for other wireless cards. If you are using a different card, you need to edit the config file by YOURSELF to make the card recognized by the OS.
For BIOS-Modded users, you simplly need to delete these two lines inside the patch: (These patches are for stealing mem for more vram). Since you have already set DVMT to 64MB in BIOS Advanced Setting tab, that patches are redundant for you.
<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>framebuffer-fbmem</key>
<data>AACQAA==</data>
<key>framebuffer-stolenmem</key>
<data>AAAwAQ==</data>
</dict>
(2020-9-4)
(2020-8-20)
By completely removing Thunderbolt 3 support, I was able to achieve less than 0.9W CPU Package idle power consumption and 8W overall power consumption of the system (7h+ Battery Life).
Now the goal turns to achieve full USB-C support, while keeping Thunderbolt 3 from preventing deeper CPU C-States.
(2020-8-19)
Currently the biggest problem of this post that I cannot solve by myself is the abnormally high power consumption of this machine.
The Power Consumption Problem remain to be solved. Under my current Hardware & Software settings, the typical idle power consumption with Wi-Fi and Bluetooth ON is around 8.5-9 Watt, results in merely 5-6hrs Battery life, While in Windows 10 1903, The figure is usually around 5-6W.
Under this circumstance, The CPU Package Power Consumption is around 2W when idle and 3.3-3.6w with Wechat in the background and Safari Opening 4 tabs + playing Online Video, almost exactly the same as the initial circumstance described in THIS POST.
Although X1Y3 shares almost the same hardware spec with X1C6, turning on "Thunderbolt 3 BIOS Assist Mode" has barely no effect on CPU Package consumption, and turning it off cause completely NO USB-C functionality in macOS. The 2W average CPU Packge power consumption is the best case I can achieve via BIOS Modding (Undervolt, Disabling CFG Lock, set FCLK Frequency to 400Mhz, Enabling PCIe ASPM, etc. ).
Besides, I have already applied USB Mapping and using NVMeFix.kext to enable ASPM of the NVMe SSD. The temperature of the ssd under macOS is identical to Windows 10. Without appropriate knowledge and experience, I'm unable to continue discovering which hardware is consumpting extra power or preventing the processer from entering deeper C-States.
NOTICE:
- If you encountered any problem while booting, you may want to add
-v
inconfig.plist
-NVRAM
-Add
--7C436110-AB2A-4BBB-A880-FE41995C9F82
--boot-args
to figure out what is going on. This variable is present in every config files I provided, you can manually delete it after everything is all set.- For Private reasons, I erased my SMBIOS Serials in the post. Please generate your SMBIOS using GenSMBIOS to enjoy iCloud Suite and Apple Continuity Functions.
- The network card I prefer and used in this post is
DW1820A
, which is far cheaper thanDW1830
, and working flawlessly in X1 Yoga 3rd. If you are using a different network card such asDW1560
, please choose the rightconfig.plist
to power your card correctly.- For best performance and bettery life, you may want to do BIOS Modding to unlock the Advanced menu of the BIOS. Detailed BIOS modding instructions and Modded BIOS Configs can be found at HERE.
- The reason why I prefer using
BIOS Ver1.30
is that for me it is the only BIOS version that can drive touchscreen after S3 sleep. (There is a hardware designing flaw in X1 Yoga 3rd that the WACOM Touchscreen will disapper from the Device Manager in Windows 10 after recovering from S3 Sleep). You may apply BIOS Modding to any BIOS version, as it is not dependent on BIOS versions.- HIDPI (1680*945)can be enabled through One-Key HIDPI
- The explaination of implementing USB-C hotpatch to ThinkPad X1 (8th Gen Kaby Lake CPU) laptops:
X1 Yoga Gen3's TB3 controller also act as USB-C (USB 3.1) controller. However, macOS require TB3 controller to be always online to maintain USB-C hotpatch. There are two ways to achieve USB-C hotpatch:- Force USB-C controller power on all the time, which cause CPU-C storm, and consume a large amount of battery.
- Mask USB-C controller as an ExpressCard expansion USB-C card. The controller will be powered on when using USB-C port, and can be turned off manually to save battery life. The cost is described in the first part of the document.
Therefore, it is not possible to get USB-C working 'as perfect as real macs'.- You can use the EFI patch as to do installations. I've enabled boot selection menus by default. After the install and troubleshooting, you may want to disable them.
NEEDED:
PROCEDURES
Download .dmg
installation file of macOS 10.15.6 Catalina.
Use Balena Etcher to flash the .dmg
file into your USB disk.
Mount the EFI partition of the USB disk, replace the entire EFI
Folder with EFI-Install
.
Reboot and install macOS 10.15.6 Catalina.
Put /EFI-Opencore/OC
to "Your SSD's EFI Partition"/EFI
, done.
SPECIFICATIONS
My ThinkPad X1 Yoga 3rd Gen configurations:
Processor Number | # of Cores | # of Threads | Base Frequency | Max Turbo Frequency | Cache | Memory Types | Graphics |
---|---|---|---|---|---|---|---|
i7-8650U | 4 | 8 | 1.9 GHz | 4.2 GHz | 8 MB | LPDDR3-2133 | Intel UHD 620 |
Peripherals:
Two USB 3.1 Gen 1 (Left USB Always On)
Two USB 3.1 Type-C Gen 2 / Thunderbolt 3 (Max 5120x2880 @60Hz)
HDMI 1.4b (Max 4096x2160 @30Hz)
Ethernet via ThinkPad Ethernet Extension Cable Gen 2: I219-LM Ethernet (vPro)
WWAN: Fibocom L850-GL (Intel XMM7360 LTE-A WWAN Modem)
TrackPoint: Synaptics PS/2
TrackPad: Synaptics PS/2
SSD: WD Black SN720 NVMe SSD
Display:
14.0" (355mm) WQHD (2560x1440) AUO B140QAN02.0 500nit HDR
Audio:
ALC285 Audio Codec
Thunderbolt:
Intel JHL6540 (Alpine Ridge 4C) Thunderbolt 3 Bridge
Additional used resources:
laptop
guidedesktop
guidemultiboot
USB map
guideOTHER
Create a pull request if you like to be added, final decision at my discreation.
CONTACT:
Luyi1720839132@Gmail.com
Credits and Thank You:
- VoodooRMI Team for providing outstanding touchpad driver for ThinkPad series
- @Jamesxxx1997 for friendly discussion and the testing the config for non-BIOS Modding Machines
- @Colton-Ko for the great features template and OpenCore Configuration Reference.
- @tylernguyen for Power Consumption Improvement reference and BIOS Modding Reference.
- @daliansky for all the hotpatches.
- @corpnewt for GibMacOS, EFIMount, and USBMap.
- @Sniki and @goodwin for ALCPlugFix.
- @xzhih for one-key-hidpi. paranoidbashthot and \x for the BIOS mod to unlocked Intel Advance Menu.
- @FlasHRender for CPU Friend Preference file from - here
The greatest thank you and appreciation to @Acidanthera, without whom's work, none of this would be possible.