This guide it's updated to OpenCore 0.8.4 and tested on my sister's device with macOS Big Sur, Monterrey and Ventura
Here's the Amazon Link for this exact model, it cost me 849,99€
when purchased on 16/09/2020
Component | Name |
---|---|
Motherboard: | LNVNB161216 495 |
CPU: | Intel i5-1035G1 |
RAM: | Micron 4ATF51264HZ-3G2J1 2x4GB 3200Mhz |
iGPU: | Intel GT2 32EU LM |
Touch Display: | Chi Mei NMN1406 |
NVMe: | SKHynix HFM512GDHTNI-87A0B 512GB |
Wifi/BT: | Intel Wireless-AC 9560 160MHz (Type CNVi) |
Audio: | RealTek ALC257 |
Trackpad: | HID I2C Trackpad |
Keyboard: | PS/2 Keyboard (ISO Spain) |
Card Reader: | RealTek RTS522A |
Note: Everything is STOCK
-
- All USB Ports
- Built-In Display
- DC-IN & Battery
- NVMe
- Camera
- Keyboard
- WiFi
- Bluetooth
-
- Continuity Features (Apple Ecosystem Fancy Things)
- SignIn with Apple ID gives and error on Setup but doing that you can SignIn after instalation on System Preferences.
- Jack 3.5mm, Speakers & Microphone
-
- Trackpad
- Touchscreen
- Fingerprint
- HDMI Port
Name | Solution |
---|---|
Built-In Display | Works thanks to WhateverGreen.kext (iGPU Fixes) and all DeviceProperties for the 10th Gen iGPU. |
All USB Ports | Thanks to USBMap.aml (Ports mapped for macOS) and SSDT-EC-USBX.aml . |
Jack 3.5mm, Speakers & Microphone | Thanks to AppleALC.kext (Audio Driver) however you need to search another layout because microphone is not working. |
DC-IN & Battery | VirtualSMC.kext with SMCBatteryManager.kext allows management off charging and Battery Info. |
NVMe | It used to be something tricky but having SATA on AHCI Mode on BIOS/UEFI and maybe NVMeFix.kext is enough. |
Camera | Is connected via Internal USB and it works. |
Keyboard | Thanks to VoodooPS2.kext (Driver for PS2 devices). |
Trackpad | Not working at all even with custom SSDT-GPI0.aml or SSDT-XOSI.aml with config.plist patch. Tried all VoodooI2C combinations but none worked. Good luck with this. |
TouchScreen | Not working at all even with custom SSDT-GPI0.aml or SSDT-XOSI.aml with config.plist patch. Tried all VoodooI2C combinations but none worked. Good luck with this. |
PowerOff, Reboot & Sleep | Currently sleep not working. |
WiFi | Thanks to AirportItlwm.kext (Driver for Intel WiFi Card) and loading from system the kext: IO80211Family.kext . |
Bluetooth | Thanks to IntelBluetoothFirmware.kext and BlueToolFixup.kext. |
HDMI Port | |
Continuity Features | With the exception of "AirDrop" And "Apple Watch AutoLogin" all other Features work thanks to AirportItlwm.kext,IntelBluetoothFirmware.kext,FeatureUnlock.kext; Sidecar, AirPlay to Mac, NightShift and Universal Control are working (More Info). |
Fingerprint | Never would. |
Download installers: Monterrey - Big Sur - Catalina - Mojave - High Sierra
- Connect a >=16 GB pendrive.
- Open Disk Utility and Erase the USB with the name: MyVolume.
- Open Terminal and use the proper commands for your macOS installer:
- Monterrey:
sudo /Applications/Install\ macOS\ Monterey.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- Big Sur:
sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- Catalina:
sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- Mojave:
sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- High Sierra:
sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- Make Sure you have Latest BIOS vECCN41WW
- After Updating the BIOS, you need to make sure these setting are setted like here:
Drive/Storage Mode: ACHI
Secure Boot: Disabled
Here (Under these Dropdown Menus) are written only Enabled Parameters, Leave everything default on a supposedly new
sample.conf
, I have explained what does and why every parameter, I hope you understand something.
NEED UPDATE
ACPI
ACPI are related mainly to modifying or patching the device firmware (DSDT).
SSDT-PLUG.aml
(Allows for native CPU power management)SSDT-PMC
(Enable Native NVRAM for HM370 MotherBoard)SSDT-dGPU-Off.aml
(PowerOff GTX 1050Ti)SSDT-EC-USBX.aml
(Fix the embedded controller and USB power)SSDT-PNLF-CFL.aml
(Backlight support for Coffee Lake machines)SSDT-XOSI.aml
(This is for Trackpad ELAN HID)SSDT-USBMap.aml
(All Ports Mapped Correctly)
Rename _OSI to XOSI
(Important for trackpad (Without this patch trackpad is not gonna work))
0 | Dictionary | 12 key/value pairs |
---|---|---|
Comment | String | Change _OSI to XOSI |
Find | Data | 5F4F5349 |
Replace | Data | 584F5349 |
Enabled:
ResetLogoStatus
(Recomended for correctly displaying Apple logo on Boot)
Booter
Booter related when booting.
Enabled:
AvoidRuntimeDefrag
(Fixes for common NVRAM properties)EnableSafeModeSlide
(Needed for something called KASLR)ProvideCustomSlide
(Needed for something called KASLR)RebuildAppleMemoryMap
(Makes the current Memory Map compatible to Apple's Expected one)SetupVirtualMap
(Fix for virtual memory accessing)SyncRuntimePermissions
(Fix for permission memory over OpenRuntime)
DeviceProperties
DeviceProperties is related to explaining to the SO the devices you have and info you want to "fake" to them.
Audio Card Properties:
PciRoot(0x0)/Pci(0x1F,0x3) | Dictionary | Keys / Values | Info about |
---|---|---|---|
AAPL,slot-name | String | Internal@0,31,3 | Indicates Virtual Slot for Audio Card |
device-id | Data | 70A10000 | Giving it a Unique ID |
device_type | String | Audio device | Just to know what it is |
hda-gfx | String | onboard-1 | Indicates board that is located (1) |
layout-id | DATA | 1E000000 | Best layout for the best Jack 3.5 and Speakers audio quality |
iGPU (Integrated Graphics Processing Unit) Properties:
PciRoot(0x0)/Pci(0x2,0x0) | Dictionary | Keys / Values | Info about |
---|---|---|---|
AAPL,ig-platform-id | DATA | 00009B3E | Indicates iGPU ID for macOS |
AAPL,slot-name | String | Internal@0,2,0 | Indicates Virtual Slot for iGPU |
device-id | DATA | 9B3E0000 | Fake iGPU ID (Just in case / Futureproof) |
agdpmod | DATA | 01000000 | Disable port checking so HDMI output works |
disable-external-gpu | DATA | 1000000 | Disables All GPUs Except iGPU |
enable-backlight-registers-fix | DATA | 1000000 | Fix for Backlight Display |
framebuffer-patch-enable | DATA | 01000000 | Switch for next patches |
framebuffer-unifiedmem | DATA | 000080BE | Makes VRAM be 3048 MB instead of the 1500 MB |
framebuffer-con1-enable | DATA | 01000000 | |
framebuffer-con1-index | DATA | 01000000 | |
framebuffer-con1-busid | DATA | 01000000 | |
framebuffer-con1-pipe | DATA | 12000000 | |
framebuffer-con1-type | DATA | 00080000 | Indicates that Connector 1 is HDMI |
framebuffer-con1-flags | DATA | 87010000 | I have no idea |
enable-lspcon-support | DATA | 01000000 | Switch for Enabling LSPCON Drivers |
framebuffer-con1-has-lspcon | DATA | 01000000 | Indicate that con1 has LSPCON |
framebuffer-con1-preferred-lspcon-mode | DATA | 01000000 | Makes LSPCON Default for con1 |
hda-gfx | String | onboard-1 | Indicates board that is located (1) |
model | String | Intel UHD 630 | Name Displayed Under → About this Mac |
Kernel
Kernel are things related with kernel an ".kext"(kernel extension).
ORDER MATTER! Think about which kexts should load before which.
- Lilu.kext (Allows kernel injection and modification )
- VirtualSMC.kext (Allows monitoring and controlling of system parameters)
- SMCProcessor.kext (Allow monitoring and controlling of CPU)
- SMCSuperIO.kext (Allow monitoring and controlling of IO(fans,WhaterPumps,etc..))
- SMCBatteryManager.kext (Allow monitoring and in some cases controlling battery)
- WhateverGreen.kext (Graphics Driver)
- AppleALC.kext (Audio Driver)
- RealtekRTL8111.kext (RJ45 Driver)
- VoodooPS2Controller.kext (PS/2 Driver)
- VoodooI2C.kext (I2C Devices Driver)
- VoodooI2CHID.kext (Driver for this specific trackpad)
- Airportitlwm.kext (Intel WiFi Driver)
- IntelBluetoothFirmware.kext (Intel Bluetooth Driver)
- IntelBluetoothInjector.kext (Required Enabled on Big Sur or lower, now just required but Disabled)
- BlueToolFixup.kext (Bluetooth Fix for Monterrey)
- BrightnessKeys.kext (Fix some of fn Keys like Brightness or Audio)
- FeatureUnlock.kext (Bring Back Handoff, UniversalControl, and other Apple Fancy Features)
We need to force IO80211Family.kext
from System/Library/Extensions
to have complete support of WiFi with Airportitlwm.kext.
0 | Dictionary | Keys / Values | Info about |
---|---|---|---|
BundlePath | String | System/Library/Extensions/IO80211Family.kext | Location of the Driver Loaded by Force |
Identifier | String | com.apple.iokit.IO80211Family | Internal Identifier |
ExecutablePath | String | Contents/MacOS/IO80211Family | Location of the Executable File |
Enabled:
AppleXcpmCfgLock
(We don't have options to unlock de CFG-Lock on the BIOS so this option will create a virtual CFG)DisableLinkeditJettison
(Let Lilu.kext and other kexts run better)PowerTimeoutKernelPanic
(Prevents kernel panics because Apple Drivers)
Misc
Misc things related with Visual and security also Boot Picker of OpenCanopy.
Enabled:
DisableWatchDog
(Disables Timeouts on Boot wen Debug
Enabled:
2. AllowSetDefault
(Allow setting a Default Boot entry on the picker)
3. BlacklistAppleUpdate
(Stop reciving firmware updates intended for real Mac hardware)
DmgLoading
SignedScanPolicy
0SecureBootModel
DefaultVault
Optional
Remove from EFI/OC/Tools
everything. This should be a clean key
NVRAM
NVRAM things for the Non-volatile memory
7C436110-AB2A-4BBB-A880-FE41995C9F82 | Dictionary | Keys / Values |
---|---|---|
boot-args | String | |
csr-active-config | DATA | 00000000 |
prev-lang:kbd | String | en-US:0 |
PlatformInfo
*PlatformInfo is mainly for "faking" your macOS model so it fits better with macOS expected specifications.
Download GenSMBIOS (opens new window), and open the GenSMBIOS.command with Right-Click > Open, follow the intructions on the Terminal Window.
Only 2 posibilities for SMBIOS:
SMBIOS | CPU Type | GPU Type | Display Size |
---|---|---|---|
MacBookAir9,1 | Dual/Quad Core 12W | iGPU: G4/G7 | 13" |
MacBookPro16,2 | Quad Core 28W | iGPU: G4/G7 | 13" |
Generic | Dictionary | Keys / Values |
---|---|---|
AdviseWindows | Boolean | False |
SystemMemoryStatus | String | Auto |
MLB | String | Generate your own with GenSMBIOS |
ProcessorType | Number | 0 |
ROM | DATA | Your own MAC Address |
SpoofVendor | Boolean | True |
SystemProductName | String | MacBookPro15,3 |
SystemSerialNumber | String | Generate your own with GenSMBIOS |
SystemUUID | String | Generate your own with GenSMBIOS |
These values are masked from the provided config file, make sure you enter your own before testing!
UpdateDataHub Boolean
Enable
UpdateNVRAM Boolean
Enable
UpdateSMBIOS Boolean
Enable
UpdateSMBIOSMode String
Create
UEFI
UEFI have multiple porpouses for all things.
Enabled:
- EnableJumpStart (Load APFS driver from APFS Container)
- HideVerbose (Hide APFS Verbose on boot)
Enabled:
- GraphicsInputMirroring (Fixes for Keyboard input on certain stages)
OpenRuntime.efi
(OpenCore Engine)HFsPlus.efi
(Driver for HFsPlus on every hadrware)OpenCanopy.efi
(Fancy Boot Picker)
Enabled:
KeySupport
Enabled:
ProvideConsoleGop
Enabled:
FirmwareVolume
Enabled:
EnableVectorAcceleration
ReleaseUsbOwnership
(Mainly for USB fixes)RequestBootVarRouting
(Redirects some Variables for macOS)
Open Terminal.app and run those commands:
sudo pmset autopoweroff 0
sudo pmset powernap 0
sudo pmset standby 0
sudo pmset proximitywake 0
sudo pmset tcpkeepalive 0
These 5 commands help fixing possible Sleep/Wake Issues
- sudo rm /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
- sudo rm /Library/Preferences/SystemConfiguration/preferences.plist
These 2 commands help fixing possible iCloud Ban/iMessages Ban or WiFi/Ethernet Issues (Use only if you want or need)
Apple (macOS)
OpenCore Team (Bootloader)
@andrehessels (a light of some parameters on Booter that needed to be disabled for be able to boot)
Dortania (Guide for config.plist)
If this guide has been useful for you, don't forget to give me a star ⭐️❤️