Skip to content

Monterey/BigSur on Xiaomi NoteBook 14. Only for educational purposes. Open for improvements and suggestions

License

Notifications You must be signed in to change notification settings

XingLplus/Xiaomi-Notebook14-Hackintosh

 
 

Repository files navigation

Xiaomi Notebook 14 Hackintosh

Laptop Image

Model Name Model Name Model Name

Introduction

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

Table of contents

Build

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

System Configuration

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

Current Status

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
What's not working: incompatible Hardware
  • Discrete graphics card (NVIDIA GeForce MX150) is not working, since macOS doesn't support Optimus technology
    • Have used SSDT-DDGPU.aml to disable it in order to save power.
  • Fingerprint sensor is not working
    • Fingerprint readers on Macbooks are managed by T2 chip which has not been very throughly reverse engineered yet
      • Have used SSDT-XHC.aml to disable it (in order to save some power).

Generate your own SMBIOS Information

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.

  • With every EFI update you retrieve from release page, please, remember to transfer your Device details under PlatformInfo -> Generic in your config.plist.

Improvements/Post-Install

Enable Tap (with one finger) for Touchpad

Starting from VoodooI2C v. 2.4.1, the click down action is emulated to force touch, which causes the failure of click down and drag gestures.

For example, you can turn off Force Click in System Preferences -> Trackpad or choose three finger drag in System Preferences -> Accessibility -> Mouse & Trackpad -> Trackpad Options

Suggested configuration:

image

Enable Apple Services

Default SMBIOS settings of this repo is MacBookPro16,3 MacBookPro14,1 MacBookPro15,2

  1. Launch Terminal app

  2. Copy the following script, paste it into the Terminal window, then press Enter

    git clone https://github.com/corpnewt/GenSMBIOS && cd GenSMBIOS && ./GenSMBIOS.command 
  3. Type 2, then press Enter

  4. Drag your config.plist inside the Terminal window

  5. Type 3, then press Enter

  6. Type MacBookPro16,3, then press Enter

Microphone Fix

Download Combojack.

  • Follow given documentation to install combojack.
  • Go to system Preferences > Sound > Input and choose Line In as input device.
  • Insert headphone, combojack pop-up will appear, select headset from the list.
  • If you still face any issue disable ambient noice cancellation.
  • you are good to go.
MacOS HiDPI

⚠️ Warning one-key-hidpi is known to cause Screen underscaled after sleep, HiDPI lag.

MacOS HiDPI One-Key-HiDPI REPO

For Dual Boot Note: After resetting NVRAM, you need to do the steps from 4 to 6.
  1. Make sure that Microsoft is in the same folder as BOOT and OC

  2. Boot to Windows from BOOT MENU

  3. Download EasyUEFI

  4. Open EasyUEFI and click Manage EFI Boot Options

  5. Click the Create a new entry icon (second icon from the center column)

  6. Do the following:

    1. Select the Type: Linux or other OS and write as description: OpenCore
    2. Select EFI as target partition
    3. Click browse and locate the OpenCore.efi file and click OK
    4. Click OK again to add the entry
    5. Once the entry is added, click on OpenCore and start clicking the arrow up button (first button from the center column) until OpenCore appears on the top of the table.
  7. After doing this restart your laptop and you will see opencore booting as priority option.

  8. Boot to Big Sur

  9. Download OpenCore Configurator (OCC)

  10. Open your Config.plist with OCC

  11. Go to Misc and click Entries tab

  12. Click + button on the right bottom. A new entry will be created and you will see a browse button

  13. Click the browse button and for windows users, go to your EFI folder and locate bootmgfw.efi (\EFI\Microsoft\Boot\bootmgfw.efi) and click open

  14. Change the entry name from bootmgfw to Windows

FAQ

My touchpad isn't working after update.

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.

I can't click to drag files 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 gestures. You can turn off Force Click in SysPref - Trackpad or choose 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.- [Xiaomi Notebook 14 Hackintosh]

Changelog

You can view Changelog for detailed information.

Credits

About

Monterey/BigSur on Xiaomi NoteBook 14. Only for educational purposes. Open for improvements and suggestions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • ASL 64.3%
  • Shell 33.3%
  • Python 2.4%