Awesome
<img src="Docs/img/XiaoMi_Hackintosh_with_text_Small.png" width="679" height="48"/>English | 中文
Contents
Configuration
TM1701 & TM1707
Specifications | Detail |
---|---|
Computer model | Xiaomi NoteBook Pro 15.6'' (MX150/GTX) |
Processor | Intel Core i5-8250U / i7-8550U Processor |
Memory | 8GB/16GB Samsung DDR4 2400MHz |
Hard Disk | Samsung NVMe SSD Controller PM961 / |
Integrated Graphics | Intel UHD Graphics 620 |
Monitor | BOE NV156FHM-N61 FHD 1920x1080 (15.6 inch) |
Sound Card | Realtek ALC298 (layout-id: 30/99) |
Wireless Card | Intel Wireless-AC 8265 |
Trackpad | ETD2303 |
SD Card Reader | Realtek RTS5129 / RTS5250S |
TM1905 & TM1963
Specifications | Detail |
---|---|
Computer model | Xiaomi NoteBook Pro 15.6'' (MX250/MX350) |
Processor | Intel Core i5-10210U / i7-10510U Processor |
Memory | 8GB/16GB Samsung DDR4 2666MHz |
Hard Disk | Intel SSD 660P Series |
Integrated Graphics | Intel UHD Graphics 620 |
Monitor | LQ156M1JW01 SHP14C3 1920x1080 344x194mm 15.5-inch |
Sound Card | Realtek ALC256 (layout-id: 69/ |
Wireless Card | Intel Wireless-AC 9462 |
Trackpad | ELAN2303 |
SD Card Reader | Realtek RTS5129 |
Current Status
- Hibernation may trigger serious boot problems on CML machines, view #661 and #694
- Users should run
sudo pmset -a hibernatemode 0
to disable hibernate mode, also see README_CML
- Users should run
- HDMI may not work when you first-time plug it in
- You have to re-plug it, or close the lid for about five seconds and reopen the lid
- Ethernet may not work on macOS10.15+, view #256
- On macOS10.15+, you need to update Wireless-USB-Adapter Driver
- If you are not using macOS10.15+, it's still recommended to update the driver above
- Discrete graphic card is not working, since macOS doesn't support Optimus technology
- Have used
SSDT-DDGPU
to disable it in order to save power
- Have used
- Fingerprint sensor is not working
- Have used
SSDT-USB
to disable it in order to save power
- Have used
- Intel Bluetooth does not support some Bluetooth devices
- On macOS12+, Intel Bluetooth supports more Bluetooth 4.x devices
- View Work-Around-with-Bluetooth
- You can also try IOBluetoothFixup, IntelBluetoothFamily, and OpenFirmwareManager from AppleBluetooth; read IntelBluetoothFamily Usage
- Intel Wi-Fi works with low performance
- macOS Big Sur or higher is recommended; macOS version < 11 needs to rebuild kextcache and restart if Intel Wi-Fi does not work
- Buy a USB Wi-Fi dongle or supported wireless card
- Read Frequently Asked Questions for more information
- Realtek USB SD Card Reader works with some setups
- Read FAQ for more information and add RealtekCardReader + RealtekCardReaderFriend
- Or you can instead use VMware to let it work, see 2.0 Setup SD Card Reader
- Everything else works well
Clover
- TM1701 & TM1707: Supports macOS10.15 ~ macOS14
- v1.5.9 is the last EFI version that supports macOS High Sierra & Mojave
- TM1905 & TM1963: Supports macOS10.15 ~ macOS14
- Should Clean NVRAM after using OpenCore
- Press
Space
in OpenCore boot page, and then selectReset NVRAM
entry - Then reboot and use Clover
- Press
- r5127 do not support Intel Wi-Fi on macOS version < Big Sur due to incomplete ForceKextsToLoad functionality (Only v1.4.7 supports Intel Wi-Fi on old macOS versions, or you can add
IO80211Family.kext
to the kext folder)
OpenCore
- TM1701 & TM1707: Supports macOS10.15 ~ macOS15
- v1.5.9 is the last EFI version that supports macOS High Sierra & Mojave
- TM1905 & TM1963: Supports macOS10.15 ~ macOS15
- Should Clean NVRAM after using Clover
- Press
Space
in OpenCore boot page, and then selectReset NVRAM
entry
- Press
- Limited theme
- Some people have trouble updating to Windows 11, see #665
- Recommend Reading: Security and FileVault | OpenCore Post-Install and OpenCore Configuration, especially the UEFI Secure Boot section
Installation
Identify Your Model
If you are using XiaoMi-Pro with 8th Gen CPU, then it's a KBL (Kaby Lake) machine. (Actually Kaby Lake Refresh)
If you are using XiaoMi-Pro with 10th Gen CPU, then it's a CML (Comet Lake) machine.
You will need this information when you download the EFI release.
First-time installation
- Please refer to the following installation tutorials
- or video tutorials
- Complete EFI packs are available in the releases page.
- Please don't clone or download the main branch for daily use.
Build
Build the latest beta EFI by running the following command in Terminal:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/daliansky/XiaoMi-Pro-Hackintosh/main/makefile.sh)"
Or run the following command in Terminal:
git clone --depth=1 https://github.com/daliansky/XiaoMi-Pro-Hackintosh.git
cd XiaoMi-Pro-Hackintosh
./makefile.sh
Some advanced usages are:
# Build EFI with Clover and OpenCore bootloaders (1. --BL=CLOVER Only Clover 2. --BL=OC Default, only OpenCore 3. --BL=CLOVEROC Both Clover and OpenCore)
./makefile.sh --BL=CLOVEROC
# Build EFI with kexts and OpenCore in Debug version
./makefile.sh --DEBUG_KEXTOC
# Ignore errors when the script is running
./makefile.sh --IGNORE_ERR
# Bundled with Chinese verison Docs (1. --LANG=en_US Default 2. --LANG=zh_CN Docs in Chinese)
./makefile.sh --LANG=zh_CN
# Generate EFI release for both 10th and 8th Gen (1. --MODEL=CML Only 10th Gen 2. --MODEL=KBL Default, only 8th Gen 3. --MODEL=CMLKBL Both 10th and 8th Gen)
./makefile.sh --MODEL=CMLKBL
# 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 and OpenCore (1. --PRE_RELEASE=Kext Pre-release kexts 2. --PRE_RELEASE=OC Pre-release OpenCore 3. --PRE_RELEASE=KextOC Both pre-release kexts and OpenCore)
./makefile.sh --PRE_RELEASE=KextOC
Upgrade
- If you are using XiaoMi-Pro with 8th Gen CPU, then it's a KBL (Kaby Lake) machine. (Actually Kaby Lake Refresh)
- If you are using XiaoMi-Pro with 10th Gen CPU, then it's a CML (Comet Lake) machine.
- Download the latest EFI release from the release page or beta EFI release from artifacts in the action page.
- Mount EFI partition by running
sudo diskutil list
first to find your EFI partition identifier and then runningsudo diskutil mount diskXsX
(X is extracted from your EFI partition identifier) - A complete replacement of
BOOT
andOC
(orCLOVER
) folders is required. Delete these two folders and copy them from the release pack.
Improvements
- Use Hackintool to inject EDID (AAPL00,override-no-connect)
- Change
#enable-backlight-smoother
toenable-backlight-smoother
inconfig.plist
to adjust the panel brightness smoothly - Use xzhih's one-key-hidpi to improve quality of system UI
- Support 1424x802 HiDPI resolution
- TM1701: On macOS > 10.13.6, to enable higher HiDPI resolution (can not exceed 1520x855), you need to use DVMT_and_0xE2_fix to set DVMT to 64mb
- Enable
AppleVTD
by patching OEMDMAR
table according to How to Fix DMAR Table on macOS | Memory Mapping; user has to update the patching after every BIOS update - Add
forceRenderStandby=0
inconfig - NVRAM - Add - 7CXXX - boot-args
(OpenCore) orconfig - Boot - Arguments
(Clover) if NVMe Kernel Panic CSTS=0xffffffff occurs - Use NVMeFix to enable APST on NVMe SSDs
- TM1701 & TM1707: Use ALCPlugFix to fix unworking jack after replug
- TM1701: Use DVMT_and_0xE2_fix to enable 4K external monitor and more "native" power management
- TM1905 & TM1963: Change
enable-backlight-registers-fix
toenable-backlight-registers-alternative-fix
if macOS Version = 13.4
FAQ
I can't click to drag or right click using the trackpad.
Starts from VoodooI2C v2.4.1, the click down action is emulated to force touch, which causes the failure of click down and drag and right click gestures. You can turn off Force Click
in SysPref - Trackpad
, and I recommend enabling three finger drag
in SysPref - Accessibility - Mouse & Trackpad - Trackpad Options
.
My screen turns to black and has no response during the updating process.
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.
Stuck on Apple logo or fail to boot.
A reset of NVRAM is recommended. For Clover users, press Fn+F11
when you are in Clover boot page.
For OC users, press Space
key when you are in OpenCore boot page and choose Reset NVRAM
. If this does not work, you can try to set SecureBootModel
to Disabled
in config.plist
.
No OEM update from SysPref.
For OC users, on macOS11+, SecureBootModel
has to be Default
to get OEM update from SysPref. However, some machines can not boot when SecureBootModel = Default
. In this case, go to App Store
and search Monterey (or newer macOS)
.
My device is locked by Find My Mac
and can't be booted, what should I do now?
For Clover users, press Fn+F11
when you are in Clover boot page. Then Clover will refresh nvram.plist
, and lock message should be removed.
For OC users, press Esc
to enter the boot menu during startup. Then, press Space
key and choose Reset NVRAM
.
[Clover] I opened the FileVault
, and I can't find macOS partition in Clover boot page, how can I solve it?
It is not recommended to open FileVault
. You can press Fn+F3
in the Clover boot page and choose the icon with FileVault
. Then you can boot in the system and close FileVault
.
[OC] How to skip the boot menu and automatically boot into the system?
First, in macOS, open SysPref - Startup Disk
. Choose the target system.
Then, open /EFI/OC/config.plist
, and turn off ShowPicker
.
When you want to switch OS, press Esc
during startup to call the boot menu.
[OC] How to not make the OpenCore the default bootloader?
Open config.plist
and change value of LauncherOption
from Full
to System
.
[OC] How to enable startup chime? (TM1701 & TM1707)
Enable AudioDxe.efi
in config.plist - UEFI - Drivers
.
Enable AudioSupport
in config.plist - UEFI - Audio
.
If you are using macOS Big Sur, go to SysPref - Sound
and turn on Play sound on startup
.
For macOS version < Big Sur, open Terminal.app
and run sudo nvram StartupMute=%00
.
Please refer to detailed FAQ in wiki FAQ.
Changelog
You can view Changelog for detailed information.
Credits
- Thanks to 0xFireWolf for providing RealtekCardReader and RealtekCardReaderFriend.
- Thanks to Acidanthera for providing AppleALC, BrcmPatchRAM, HibernationFixup, Lilu, NVMeFix, OcBinaryData, OpenCorePkg, RestrictEvents, VirtualSMC, VoodooInput, VoodooPS2, and WhateverGreen.
- Thanks to agasecond and htmambo for valuable suggestions on 10th Gen model.
- Thanks to apianti, blackosx, blusseau, dmazar, and slice2009 for providing Clover.
- Thanks to daliansky for providing OC-little.
- Thanks to FallenChromium, jackxuechen, Javmain, johnnync13, IlikemacOS, ManuGithubSteam, MarFre22, Menchen, Pasi-Studio, qeeqez, and williambj1 for valuable suggestions on 8th Gen model.
- Thanks to hieplpvip and syscl for providing samples of DSDT patches.
- Thanks to OpenIntelWireless for providing AirportItlwm and IntelBluetoothFirmware.
- Thanks to RehabMan for providing OS-X-Clover-Laptop-Config, and OS-X-Null-Ethernet.
- Thanks to RehabMan and Sniki for providing EAPD-Codec-Commander.
- Thanks to VoodooI2C for providing VoodooI2C.
For more detail, please go to Reference page.
Support and discussion
Mi Notebooks supported by other projects:
- Mi-Gaming-Laptop by johnnync13
- Mi-NB-Air-125-6y30 by johnnync13
- Mi-NB-Air-125-7y30 by influenist
- Mi-NB-Air-133-Gen1 by johnnync13
- Mi-NB-Air-133-2018 by johnnync13
tonymacx86.com:
QQ:
- 247451054 小米PRO黑苹果高级群
- 137188006 小米PRO黑苹果
- 689011732 小米笔记本Pro黑苹果