There are various threads like this one that are sharing files and configs, and quite frankly, it has become copy pasta, and a ton of legacy configurations from past MacOS versions (10.13/10.14) make things extremely complicated and hard to understand exactly what is happening.
I recently started from scratch and had a barebones clean install of MacOS Catalina without issues. I’ll list out the steps here so that this can be a starting off point for more specific issues like WIFI/BT, audio, HDMI, etc. I will attempt to explain as much as possible how I came to the specifics of the configuration so that if you are a newbie, you can follow logically how to get a bootable install on the new version of the LattePanda Alpha, OR if you are experienced, then you can message me with updates and changes so that the final configuration can be reproducible by anyone without sending arbitrary zip files here and there (which btw is just plain risky). So yeah, no more of this “don’t worry, trust me” process. Here are the steps to make a clean working Catalina install:
Latest Edit (02/19/2020)
- Download Install MacOS Catalina from the AppStore (you will need an existing Mac or Hackintosh)
- Once complete, use Disk Utility to erase a flash/thumb drive of at least 32gb (maybe 16gb?). Format it as MacOS Journaled / GUID Partition Map
- Open up the Terminal app and enter
sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/usb/ --nointeraction; this will prompt you for your password. Enter it and let it run (10-15mins)
- Now your thumbdrive as the install media in it, but has no bootable partition. Get the latest clover pkg – and double click on the installer.
- Just like in Don’s original video, make sure you
Change Install Locationto your thumbdrive as the install location; and click
UEFI Driver > Recommended Driverskeep the defaults (I tried slimming it down, but then the boot media either panicked or didn’t boot) and add:
- DataHubDxe (might not be necessary, but the description says it might be mandatory so I added it in)
Download the Clover Configurator (or google search it, I believe mackie100 is the source) and launch it.
Your EFI drive should be mounted already, but if it is not, click
Mount EFIon the side bar and look for your thumbdrive (should be named Install MacOS Catalina) and click
Load the config.plist from your EFI drive by clicking the import configuration button (should be in the bottom left corner with and arrow going into the file),
Head to install drivers and check VirtualSmc on the UEFI section (bottom). (Notice that you should already have everything selected from the clover.pkg install already installed (apfsdriverloader, aptiomemoryfix, fsinject, etc…).
On the BIOS section, I’m not 100% sure here (you can experiement) but I tried to mirror the UEFI part and included XhciDxe. (let me know if you can slim these down without issue).
Head to Kexts installer, for OS Version, select
Otherand select to install:
- VirtualSMC (and select to install everything that pops up later)
- CPUFriend 
- RealtekRTL8111 
These were selected based on trial and error and also knowing that the first 3 are critical for a bootable drive.
 CPUFriend is not necessary. But the default min CPU frequency is
1.2/1.3 ghzwhile the listed min frequency is
1.1 ghzfor the M3-8100y. Also, according to @syaburu after sleep/wake-up it seems that the min frequency jumps to
1.6 ghz. Using the link provided by @syaburu you can generate a CPUFriendDataProvider.kext that you copy/paste into your
EFI/Clover/kexts/Otherfolder using Clover to normalize the min CPU frequency that, in theory should be more in line and normal.
- For more granular control over other CPU options, you can use this script instead.
 Based on @syaburu’s comments below it seems that this is required for LAN. Since I’m exclusively using wireless, I didn’t install this one. (Update 02/19/2020: confirmed that if you want to use LAN/Ethernet, please include this kext)
- Now we’re going to go to the configuration section by section:
- Uncheck everything
- In patches DSDT, remove all the entries that have disabled checked, I had these as my final patches
|Comment||Find* [HEX]||Replace [HEX]||Reasons|
|change H_EC to EC||485F4543||45435F5F||link|
|Rename GFX0 to IGPU||47465830||49475055||link|
|Rename oem _DSM to ZDSM||5F44534D||5A44534D||link|
|Rename HECI to IMEI||48454349||494D4549||link|
- In patches RenameDevices, I think this was already there (default)
- If not, don’t include it and see if you can get your LPA to boot
- (if it does, let me know so I can cross if off the guide)
|Find Device*||Replace Device*|
- In Drop Tables, I added an entry for
MATS– (click on the
+and select it from the dropdown)
AutoMerge(I believe this was from a Unibeast generated config.plist)
- (if it isn’t necessary, let me know to cross if off the guide)
- The patches are there for successful boot, the H_EC to EC is needed otherwise the installer panics (Catalina issue, see link in table above). The other stuff I believe helped change the pink hue to normal colors when the installer launched.
- The last two DSDT patches were either defaulted there, from a Unibeast config.plist, or from another working release. Try to remove them and see if the LPA boots (always better to have less clutter)
- The Drop Table entry is actually from a default when Unibeast released it’s Catalina configurator (note: if you want to skip steps 1-9, you can use Unibeast 10 but be aware if you do, you might be better off following tonymac’s guide)
- right click the arguments section and add:
- Relates to HDMI – monitor would shut off after successful boot into installation tool
- Uncheck everything except debug, legacy is No, other settings are if you want to change the timeout when you get into Clover Boot menu
skip CPU and Boot Graphics
- For FakeID > IntelGFX – 0x12345678
- For USB uncheck all
- For audio I had inject 1
- Also, took some defaults from Unibeast config.plist creator
- this won’t prevent booting, but might help with either pink screen or other issues – feel free to tinker (and let me know your results with/without it)
skip Disable Drivers
- This is purely aesthetic, set your theme and how many entries you want
- Here’s what mine looks like:
- Uncheck everything and include this as Custom EDID:
00FFFFFF FFFFFF00 58B30037 00000000 011B0103 80794478 0AF061A9 52409F24 0D5054AF EF80B300 9500A940 90408100 81808140 010108E8 0030F270 5A80B058 8A00501D 7400001E 023A8018 71382D40 582C4500 501D7400 001E0000 00FC0035 35554844 5F4C4344 5F54560A 000000FD 00303E0F 463C000A 20202020 2020018F
- TODO: (not sure where I originally found this – help finding a source/explanation for this would be nice)
Kernel and Kext Patches
- There should be these by default if not, add them:
- (or if the LPA boots without them, let me know so I can cross it off)
|Name *||Find* [HEX]||Replace* [HEX]||Comment|
|com.apple.iokit.IOUSBHostFamily||83FB0F0F||83FB3F0F||USB port limit patch #1 10.15.x by pmheart, daliansky and ydeng|
|com.apple.driver.usb.AppleUSBXHCI||83F90F0F||83F93F0F||USB port limit patch #2 10.15.x by pmheart, daliansky and ydeng|
- for KernelToPatch*: this also should be there, if not, add it:
|20B9E200 00000F30||20B9E200 00009090||MSR 0xE2 _xcpm_idle instant reboot© Pike R. Alpha|
- If I recall correctly, these were there either default from Unibeast, and I just copied them over or from a past config.plist (maybe from Don that was required to work)
- Try not including it and if it works without it, don’t include it (please let me know if this is the case so I can cross it out from the guide)
RT Variables, SMBIOS, System Parameters
- These are needed so that Apple can believe your hackintosh is a legit Mac device.
- The thing you need to adjust are CSRActiveConfig is 0x67 Reason - disable SIP
- The rest of the sections you can generate the uuids where they allow you to, but you’ll have to take the other data from a real device (google is your friend here)
- In system parameters, I selected
Yesto Inject Kexts just to be explicit about loading the kexts we’ve downloaded…it might not be necessary, but I think I experienced issues when I had it on the default value of
- Exit the app. You should have a working MacOS Catalina drive.
I’ll post updates and edits as they come up. For the LattePanda Alpha v2 (m3-8100y) I believe there wasn’t any BIOS changes as many of the options that existed in the 7y30 version do not in the 8100y.
I disabled the internal WIFI/BT as I’m using an official apple BCM card with the NGFF adapter. I also had a Broadcom NGFF card as well as recommended by Don, but I had a nightmare getting BT to work out of the box. Follow this repo for instructions. Use kextbeast to correctly install kexts into the
System vs injecting them on boot.
Please let me know if this helps. I didn’t focus on formatting just to get the content out there. I’ll edit and update this post as necessary.
hibernation seems (sleep/hibernate works well where the fans stop, and the LED pulses, but after a few hours, seems like the LPA switches to a higher consumption mode where the fan spins periodically and the LED stays blue)
- links for add’l info: link 1, link 2, link 3
- @syaburu suggested this patch – I’ve not tested this nor used the application recommended in the github repo to apply such things BUT Rehabman is a well known contributor to hackintosh builds. If you do decide to use this, please let me know if there are any side effects or consequences.
- I seemed to have “fixed” this by disabling Wake for network access in Settings > Energy Saver, but it may not be as comprehensive as the patch listed above.
bluetooth not working with the Broadcom BCM94352Z (unofficial but supported) wifi/bt chip
sound through hdmi or the audio jack
- (requesting help – as I don’t really use sound for my daily use…)
others – (let me know!)