BigSur/Catalina on XiaoMi NoteBook 14. Only for educational purposes. Open for improvements and suggestions
This repo contains information for getting macOS working on a Xiaomi Notebook 14 Horizon Edition laptop.
This is intended to create a “fully” functional (as far as possible) hackintosh for the Xiaomi Notebook 14.
If you would like to get started with creating a hackintosh on your laptop but have non experience, I would highly recommend following Dortania’s OpenCore Install guide and then returning here for troubleshooting.
With each new release of macOS we need to resolve each new “minor issue” we run into. The installation is not perfect yet since it’s a continuos work-in-progress, but I’m glad to say that I learned a lot in the meantime. All of the steps I made to get to this point were a result of countless hours of reading along with trial and error. I am by no means an expert so any help to get this project functional is very appreciated!
If internet is not working at installation then create offline installer.
For privacy reasons, all SMBIOS information has been wiped out in the configuration file EFI/OC/config.plist
. Generate your own SMBIOS Information
You can follow this guide to install MacOS In your Mi Notebook 14 YouTude Guide For Installing
This repository is for personal/educational purposes
Build the latest beta EFI by running the following command in Terminal:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/uttusharma/Xiaomi-Notebook14-Hackintosh/master/makefile.sh)"
Or run the following command in Terminal:
git clone --depth=1 https://github.com/uttusharma/Xiaomi-Notebook14-Hackintosh
cd Xiaomi-Notebook14-Hackintosh
./makefile.sh
Make sure to run ocvalidate
after build finish. since build script will pull latest opencore version config.plist
must be validated first.
Some advanced usages are:
# Build EFI with kexts and OpenCore in Debug version
./makefile.sh --debug_KextOC
# Ignore errors when the script is running
./makefile.sh --ignore_err
# Preserve work files during the building stage
./makefile.sh --no_clean_up
# Use GitHub API
./makefile.sh --gh_api
# Build the latest beta EFI with pre-release kexts
./makefile.sh --pre_release=Kext
# Build the latest beta EFI with pre-release OpenCore
./makefile.sh --pre_release=OC
Specifications | Detail |
---|---|
Computer model | Xiaomi Notebook 14 Horizon Edition 2020 (MX350/GTX) |
Processor | Intel Core i3-10110U/ i5-10210U/ i7-10510U |
Memory | 8GB/16GB Samsung DDR4 2400MHz |
Hard Disk | Samsung NVMe SSD Controller |
Graphics | Intel UHD Graphics 10th Gen, NVIDIA MX350 |
Monitor | BOE NV156FHM-N61 FHD 1920x1080 (15.6 inch) |
Sound Card | Realtek ALC256 |
Wireless Card | Intel Wireless 9560 |
Touchpad | I2C ELAN2304 |
Components\OS | BigSur | Monterey 12.04.0 |
---|---|---|
Touchpad/Gestures | ✅ | ✅ |
Keyboard | ✅ | ✅ |
Audio | 🟢 | 🟢 |
Microphone | 🟢 | 🟢 |
Wifi | ✅ | ✅ |
Bluetooth | ✅ | ✅ |
Sleep/Wake | 🟨 | 🟢 |
Power Management | ✅ | ✅ |
Graphic Acc. | ✅ | ✅ |
Backlight | ✅ | ✅ |
Brightness Key | ✅ | ✅ |
Hibernation | 🤷♂️ | 🟨 |
✅ : Working out of the box
🟢 : Some additional steps required to make it work
🟡 : Working but not perfectly i.e buggy currently
❌ : Not working currently
🤷♂️ : Haven't tested properly yet
SSDT-DDGPU.aml
to disable it in order to save power.SSDT-XHC.aml
to disable it (in order to save some power).For privacy reasons, all SMBIOS information has been wiped out in the configuration file EFI/OC/config.plist
. You need to generate your unique SMBIOS
info by yourself (recommend to use CorpNewt’s GenSMBIOS), and inject them into your config.plist
.
PlatformInfo -> Generic
in your config.plist
.Force Click
in System Preferences -> Trackpad
or choose three finger drag in System Preferences -> Accessibility -> Mouse & Trackpad -> Trackpad Options
MacBookPro16,3
MacBookPro14,1
MacBookPro15,2
Terminal
appTerminal
window, then press Enter
bash
git clone https://github.com/corpnewt/GenSMBIOS && cd GenSMBIOS && ./GenSMBIOS.command
2
, then press Enter
config.plist
inside the Terminal
window3
, then press Enter
MacBookPro16,3
, then press Enter
Microsoft
is in the same folder as BOOT
and OC
Manage EFI Boot Options
Create a new entry
icon (second icon from the center column)Linux or other OS
and write as description: OpenCore
EFI
as target partitionbrowse
and locate the OpenCore.efi
file and click OK
OK
again to add the entryarrow up
button (first button from the center column) until OpenCore appears on the top of the table.+
button on the right bottom. A new entry will be created and you will see a browse buttonbootmgfw.efi
(\EFI\Microsoft\Boot\bootmgfw.efi) and click openbootmgfw
to Windows
You need to rebuild the kext cache after every system update. Use Kext Utility.app
or type sudo kextcache -i /
in Terminal.app
. Then restart. If this still doesn’t work, try to press F9.
Starts from VoodooI2C v2.4.1, the click down action is emulated to force touch, which causes the failure of click down and drag gestures. You can turn off Force Click
in SysPref - Trackpad
or choose three finger drag
in SysPref - Accessibility - Mouse & Trackpad - Trackpad Options
.
If you have black screen for five minutes and get no response from the device, please force restart your laptop(Long press power button) and choose Boot macOS Install from ~
entry.- [Xiaomi Notebook 14 Hackintosh]
<!—
as per latest commit
| Item | Version | Remark |
| :——————————————————————————————————————————————- | :——— | :—————————————————————- |
| MacOS | 12.0.1 | Monterey |
| OpenCore | 0.7.7 | Default Bootloader |
| Lilu | 1.5.9 | Kext/process/framework/library patcher |
| WhateverGreen | 1.5.6 | Handle Graphics card |
| AppleALC | 1.6.8 | Handle/fix onboard audio |
| CPUFriend | 1.2.4 | Power management |
| HibernationFixup | 1.4.5 | Handle hibernate status |
| IntelBluetoothFirmware | 2.1.0 | Handle Bluetooth |
| BlueToolFixup | 2.1.0 | Handle Bluetooth |
| AirportItlwm | 2.1.0 | Handle native Wi-Fi card |
| NullEthernet | 1.0.6 | Fake Ethernet card |
| NoTouchID | 1.0.4 | Disable TouchID |
| NVMeFix | 1.0.9 | Fix for NVMe SSDs |
| VoodooI2C | 2.5.6 | Handle I2C device |
| VoodooI2CHID | 2.5.6 | Touchpad I2C satellite |
| VoodooPS2Controller | 2.2.7 | Enable keyboard, alternative trackpad driver |
| VirtualSMC + plugins | 1.2.8 | SMC chip emulation |
| USBInjectAll | 0.7.6 | Inject USB ports |
—>
You can view Changelog for detailed information.