Jump to content
ludufre

[GUIDE] Asus VivoBook S400CA (CA206H & CA178H) - Catalina 10.15.4

28 posts in this topic

Recommended Posts

Installing macOS Catalina 10.15.4 on Asus VivoBook S400CA

image.png.9b9edc7c787430c6af65ec163c108291.png 

 

There are several versions of this laptop.

 

These are the versions I've seen so far:

- S400CA-BRA-CA206H = i3-2375M with ALC269VB

- S400CA-BRA-CA178H = i5-3317U with VT1802P

 

I believe that all models are practically identical except the variations i3 and i5 that have particularities, because one is Sandy Bridge platform and another Ivy Bridge.

 


Changelog:

 

03/24/2019 20:35h GMT-0

- Added update 10.15.4 instructions.

 

12/11/2019 04:35h GMT-0

- Added update 10.15.2 instructions.

 

11/11/2019 04:41h GMT-0

- Merged Core i3 and i5 config.plist.

  • Same SMBIOS now.
  • Core i3 version need to remove: Devices - Properties - PciRoot(0x0)/Pci(0x2,0x0).

- Just one USBPorts.kext now, since SMBIOS are same. 

 

11/10/2019 20:41h GMT-0

- Updated USB 3.0 injection. (Removed USBInjectAll.kext and SSDT-UIAC.aml and added USBPorts.kext)

- Replaced AtherosE2200Ethernet.kext with version 2.3.0 RELEASE. (Previously was DEBUG build)

 

11/10/2019 00:22h GMT-0

- Added Battery's DSDT patch.

- Fixed USB 3.0. (Replaced USB's DSDT patch, removed FakePCIID.kext and FakePCIID_XHCIMux.kext and added SSDT-EC.aml and SSDT-UIAC.aml)

- Updated config.plist. (Removed PNP0C09 to PNPFFFF, not needed with SSDT-EC.aml)

 

11/08/2019 14:33h GMT-0

- First version.

 

What works and what does not
 

Core i3 Version specific
- Processor: Intel Core i3-2375M -> Tick.png Work. All SpeedStep stages.

- Video Card: Intel HD3000 -> Tick.png Work. QE/CI without Metal. (additional step bellow)

- Audio: ALC269VB -> Tick.png Work. But no earphone. (more details)

 

Core i5 Version specific

- Processor: Intel Core i5-3317U -> Tick.png Work. All SpeedStep stages.
- Video Card: Intel HD4000 -> Tick.png Work. QE/CI and Metal.

- Audio: VT1802P -> Tick.png Work.

 

Common
- Chipset: Intel HM76 -> Tick.png Work.
- HDMI -> Tick.png Work.

- VGA -> Cross.png Not work. Normal.

- WiFi/Bluetooth: Intel AC 3160 -> Cross.png Not work. Replaced with DW1560 / AW-CE123H.

- Ethernet: Intel AR8161 -> Tick.png Work.

- Card Reader: Unknow -> Cross.png Not work.

- Keyboard and Touchpad -> Tick.png Work.

FN keyboards keys -> Cross.png Not work yet.
- Webcam -> Tick.png Work.

- Battery -> Tick.png Work.

- Touch screen -> Cross.png Not work.

- USB3.0 -> Tick.png Work.
- Sleep -> Tick.png Work.

- Airdrop, Handoff and Continuity -> Tick.png Work after replaced wireless.

- Instant Hotspot -> Cross.png Not work even after replaced wireless.

 

 

Todo

 

- Make earphone work in Core i3 version.

- Fix FN keyboard keys.

- Convert DSDT patches to hotpatch.

- Make touch screen work.

- Make card reader work.

- Make trackpad appear in System Preferences

 

 

What you need to install

- Running install of macOS
- One USB flash drive of 8GB or bigger
- macOS Catalina install app
- Clover EFI

- Clover Configurator

- Some KEXTs and SSDT patches


How create create the install flash drive
 
Prepare install flash drive


Format the flash drive with GUID partition mapping and name it "Install".

- Open Disk Utility.
- Click in View, then "Show All Devices".
- Select the destination flash drive, then Erase.
- Name: Install, Format: Mac OS Extended (Journaled) and Scheme: GUID Partition Map

 

Create install flash drive

Open terminal and run this command:

sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/Install --nointeraction

This will take about 30 minutes.

 

image.png.dbfbb044438583c128d2b973252bc02e.png


Install bootloader

Download the CloverEFI from official repository (used 5098) and install only with these options on "Install macOS Catalina":

 
- Install for UEFI booting only
- Install Clover in the ESP
- UEFI Drivers - Recommended Drivers - FSInject (I still don't know if it's really necessary)

- UEFI Drivers - File System drivers - ApfsDriverLoader (Support to APFS partitions)

- UEFI Drivers - File System drivers - VBoxHfs (Support HFS/HFS+ partitions)

- UEFI Drivers - Memory fix drivers - AptioMemoryFix (Fix the memory management of de UEFI/BIOS)

- UEFI Drivers - Additional drivers - CsmVideoDxe

 

FileVault 2

 

If you plan to use FileVault 2, you need to download additional drivers, since what comes with Clover is not up to date and use VirtualSMC instead of FakeSMC.

Follow instructions bellow:

 

From current Clover installation, check these options to USB keyboard/mouse work on password screen:

- UEFI Drivers - Human Interface Devices - UsbKbDxe

- UEFI Drivers - Human Interface Devices - UsbMouseDxe

 

After Clover install will be created a partition named EFI and mounted in Desktop. Usually the path is /Volumes/EFI/.

 

Download the versions 2.1.0 and 2.0.9 of AppleSupportPkg from: https://github.com/acidanthera/AppleSupportPkg/releases

We need the last version of AppleGenericInput.efi that is inside 2.1.0 and last version of AppleUiSupport.efi that is inside 2.0.9.

OR download attached bellow.

 

Put in /Volumes/EFI/EFI/CLOVER/drivers/UEFI/

 

That's it! FileVault 2 will work without problems.

 

822457131_CapturadeTela2019-11-08as17_13_55.png.4a4e95e543a70551199f491ec099440f.png786983330_CapturadeTela2019-11-08as17_14_19.png.40258b7c2c43bd28cb2ad2bb7c7efe4e.png1228282704_CapturadeTela2019-11-08as17_14_25.png.16770b919315e0db5eae2bdaa9e63c48.png827081341_CapturadeTela2019-11-08as17_14_32.png.9cf6e3e114d0e60a209f42cbbd2e74fa.png

 

 

Make things works

 

After Clover install will be created a partition named EFI and mounted in Desktop. Usually the path is /Volumes/EFI/.

 

- Replace the /Volumes/EFI/EFI/CLOVER/config.plist with mine attached below according to your processor version.

- Put all SSDT-*.aml attached below in /Volumes/EFI/EFI/CLOVER/ACPI/patched/

 

Generate your Serial, MLB and SmUUID

 

- Open the replaced config.plist with Clover Configurator (used 5.7.0.0)

- Go to SMBIOS, click few times in "Generate New" in Serial Number and SmUUID.

 

Core i3 version:

- Go to Devices - Properties.

- Remove: PciRoot(0x0)/Pci(0x2,0x0).

 

Core i5 version:

- Remove: /Volumes/EFI/EFI/CLOVER/ACPI/patched/SSDT-PWR.aml

 

Copy the Clover Configurator to flash drive because you will need later.

 

Download those Kexts and put in /Volumes/EFI/EFI/CLOVER/kexts/Other/

 

- Download the VirtualSMC.kext, SMCProcessor.kext, SMCBatteryManager.kext and UEFI driver (put VirutalSmc.efi inside /Volumes/EFI/EFI/drivers/UEFI/). I used the version 1.0.9.

Download the Lilu.kext from here. I used the version 1.3.9.

- Download the VoodooPS2Controller.kext from here. I used version 2.0.4.

Download the AtherosE2200Ethernet.kext from here. I used the version 2.3.0 compiled from source (attached below), but the release 2.2.2 works too.

Download the AppleALC.kext from here. I used the version 1.4.3.

Download the WhateverGreen.kext from here. I used the version 1.3.4.

- Download the USBPorts.kext attached bellow to properly inject USBs.

 

 

Keyboard swap Command with Option (optional)

 

- If you prefer, you can swap Command and Option keys, to map Win Key - Command and Alt - Option.

- Change /Volumes/EFI/EFI/CLOVER/OEM/S400CA/UEFI/kexts/10.15/VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext/Contents/Info.plist:

<key>Swap command and option</key>
<true/>

to:

<key>Swap command and option</key>
<false/>

Or, download the version 2.0.4 already adjusted attached bellow.

 

 

Wifi and Bluetooth (DW1560 / AW-CE123H)

 

After replaced the wireless card. Download those Kexts and put in /Volumes/EFI/EFI/CLOVER/kexts/10.15/

 

Download the AirportBrcmFixup.kext from here. I used the version 2.0.4. (To enable Wireless)

Download the BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext from here. I used the version 2.5.0. (To enable Bluetooth)

Download the BT4LEContinuityFixup.kext from here. I used the version 1.1.4. (To enable Handoff and Continuity)

 

Keep in mind that the bluetooth kexts are currently in development and the official releases will be available in future in the repository: https://github.com/acidanthera/BrcmPatchRAM/releases

 

Now you can start the installation without problem (I guess).

 

 

How install

 

UEFI Setup Configuration and Installation

UEFI configuration
 

My BIOS is the latest: 210

 

- Shutdown and insert the flash drive.
- Power on with F2 pressed to enter BIOS setup.
- Change value: Advanced - Intel Virtualization Technology to DISABLED

- Change value: Advanced - Intel(R) Anti-Theft Technology Configuration to DISABLED

- Save & Exit Setup (F10)

 

- Now, hold the ESC

- In the list, select your flash drive.

Choose the flash drive (white icon).

 

The installer will start. 


Format destination disk

Format the disk with GUID partition mapping and name it "Macintosh".

- Select Disk Utility in the list, then press Continue.
- Click in View, then "Show All Devices".
- Select the destination Disk, then Erase.
- Name: HD, Format: APFS and Scheme: GUID Partition Map

Close Disk Utility.

Select "Install macOS", then Continue.
Follow instructions in screen.

After install

After first part install the system will reboot. Maybe you have to press ESC again and select the flash drive.
 

Choose the internal disk (gray hdd icon) if not already selected.


The second part of the installation will begin. This will take 16 minutes.
 

Post installation
 

Bootloader


When the second part of install finish, the system will reboot again.

After performing the user initial setup and go to the desktop, you need to make the system disk bootable.

Open the Clover Configurator from flash drive that you copied before.

Mount and open the flash drive EFI partition. (Inside Clover Configurator, Mount EFI -> Select flash drive in Efi Partitions list -> Mount Partition -> Open Partition)

 

Copy the EFI folder to desktop.

 

Go back to Clover Configurator, unmount the EFI partition of the flash drive and mount and open the EFI partition of internal disk.

 

Move the EFI folder from Desktop to EFI partition of the internal disk.

 

Eject the flash drive.

 

Move all Kexts from EFI partition of internal disk to /Library/Extensions and make kext cache, with those commands in Terminal:

sudo mv -R /Volumes/EFI/EFI/CLOVER/kexts/10.15/* /Library/Extensions/
sudo chmod -R 755 /Library/Extensions
sudo chown -R root:wheel /Library/Extensions
sudo kextcache -i /

Restart the system.

 

If you go directly to BIOS you have to add Clover entry manually:

 

- Go to "Boot" and press "Add New Boot Option".
- Select "Add boot option", write CLOVER and press Enter.
- In "Select Filesystem", choose the option that contains "HD". Like "PCI(1F|2)\DevicePath(Type 3, SubType 12)HD(Part1,Sig2a0127c1-ea5d-44d3-8967-57e59c1f0e3b)".
- Select "Path for boot option", write EFI\BOOT\BOOTX64.efi and press Enter.
- Select "Create" and press enter.
- Go to "Save & Exit" and select "Save Changes and Exit".

 

Intel HD 3000 - Core i3 version only

 

If you have the i3 version with HD 3000 iGPU you have to do an additional step:

 

- Download latest Legacy Video Patch from: https://github.com/chris1111/Legacy-Video-patch/releases

- Always use the version compatible with your current Catalina build!

- Run the installer and reboot.

- Graphics acceleration now works. But you'll have some rare artifacts because of lack support of Metal.

 

 

Battery, USB & Sleep DSDT patch

 

First we need dump current DSDT/SSDT tables:

- Restart.

- On Clover menu, press F4 to dump.

- Select internal disk and start normally.

 

Prepare files:

- Open the Clover Configurator from flash drive that you copied before.
- Mount and open the internal disk EFI partition. (Inside Clover Configurator, Mount EFI -> Select internal disk in Efi Partitions list -> Mount Partition -> Open Partition)

- Navigate to EFI/CLOVER/ACPI/origin/.

- Copy DSDT.aml to EFI/CLOVER/ACPI/patched/.

- You'll have DSDT.aml, SSDT-EC.aml, SSDT-PWR.aml (if Core i3 version) and SSDT-PNLF.aml in EFI/CLOVER/ACPI/patched/.

 

Apply patches to DSDT.aml:

- Download the MacIASL from here. I used the version 2018-0507.

- Open the DSDT.aml from patched/ with MacIASL.

- Click in "Patch" button.

- Paste and "Apply" each patches below.

 

Battery patch

#Maintained by: RehabMan for: Laptop Patches
#battery_ASUS-N55SL.txt

# created by RehabMan 8/12/2013
# created originally for jesselid

# works for:
#  ASUS N55SL, BIOS rev. 204
#  ASUS VivoBook series
#  ASUS Zenbook UX31A
#  ASUS UX301LA
#  ASUS X553E-SX399V
#  ASUS F501A
#  ASUS K55VM
#  ASUS U46SV, BIOS rev. 2.04
#  ASUS N43
#  ASUS PU500CA (90NB00F1-M01120)
#  ASUS N73SV
#  ASUS X401A-WX108
#  ASUS F551CA Bios rev. 207
#  ASUS S551LB VivoBook
#  ASUS ZenBook UX32VD
#  ASUS ZenBook UX32V
#  ASUS F550L-X455H
#  ASUS X53S
#  ASUS K550JD-XX003H
#  ASUS G53SX
#  ASUS K56CB
#  ASUS UX305
#  ASUS N550LF (per gabberZ)
#  ASUS TP300LA
#  ASUS X200LA
#  ASUS TP500LA (per haimann951)
#  ASUS U46E (per jacopers)
#  ASUS N550JK (per sonicmule)
#  ASUS K46CM
#  ASUS N76-VB-T4038H (per Tamshiii)
#  ASUS Zenbook Pro UX501VW (per Jingu)
#  ASUS G751JY (per Going Bald)
#  ASUS S300CA (per mugen441)
#  ASUS F556UA-AB32 (per Jdazzle44)
#  ASUS UX306UA (per MaraficeEye)
#  ASUS N550JV (per Xracer99)
#  ASUS X540LA (per arg274)
#  ASUS X540LJ (per palash)
#  ASUS X550VX (per vualeks)
#  ASUS UX330UA (per fluxo)
#  ASUS UX303UB (per CyanTech)
#  ASUS K550JK (per m3ftwz)
#  ASUS TP500LB (per Archangeliques)
#  ASUS X556UA (per ben9923)
#  ASUS UX410 (per minhquang211090)
#  ASUS N552VW (per nicolas2121)
#  ASUS Vivobook NV752 (per tmazzoni)
#  ASUS Strix FX502VM/GL502VM (per benspoonder)
#  ASUS X53E (per REvandenBerg)
#  ASUS UX430 (per starcentral)
# ...
#  and many others

into method label B1B2 remove_entry;
into definitionblock code_regex . insert
begin
Method (B1B2, 2, NotSerialized) { Return (Or (Arg0, ShiftLeft (Arg1, 8))) }\n
end;

# not really for battery, but might come in handy to read fan speed(s)
into device label EC0 code_regex TAH0,\s+16 replace_matched begin TH00,8,TH01,8 end;
into device label EC0 code_regex TAH1,\s+16 replace_matched begin TH10,8,TH11,8 end;
into method label TACH code_regex \(TAH0, replace_matched begin (B1B2(TH00,TH01), end;
into method label TACH code_regex \(TAH1, replace_matched begin (B1B2(TH10,TH11), end;
into method label GFAN code_regex \(\\_SB\.PCI0\.LPCB\.EC0\.TAH0, replace_matched begin (B1B2(\\_SB.PCI0.LPCB.EC0.TH00,\\_SB.PCI0.LPCB.EC0.TH01), end;

# battery EC
into device label EC0 code_regex B0SN,\s+16 replace_matched begin B0S0,8,B0S1,8 end;
into device label EC0 code_regex B1SN,\s+16 replace_matched begin B1S0,8,B1S1,8 end;
into method label BIFA code_regex \(B0SN, replace_matched begin (B1B2(B0S0,B0S1), end;
into method label BIFA code_regex \(B1SN, replace_matched begin (B1B2(B1S0,B1S1), end;
into device label EC0 code_regex DT2B,\s+16 replace_matched begin T2B0,8,T2B1,8 end;
into method label SMBR code_regex \(DT2B, replace_matched begin (B1B2(T2B0,T2B1), end;
into method label SMBW code_regex Store\s+\(([^,]*),\s+DT2B\) replace_matched
begin
Store(%1,T2B0) Store(ShiftRight(%1,8),T2B1)
end;

into device label EC0 insert
begin
Method (RDBA, 0, Serialized)\n
{\n
    Name (TEMP, Buffer(0x20) { })\n
    Store (BA00, Index(TEMP, 0x00))\n
    Store (BA01, Index(TEMP, 0x01))\n
    Store (BA02, Index(TEMP, 0x02))\n
    Store (BA03, Index(TEMP, 0x03))\n
    Store (BA04, Index(TEMP, 0x04))\n
    Store (BA05, Index(TEMP, 0x05))\n
    Store (BA06, Index(TEMP, 0x06))\n
    Store (BA07, Index(TEMP, 0x07))\n
    Store (BA08, Index(TEMP, 0x08))\n
    Store (BA09, Index(TEMP, 0x09))\n
    Store (BA0A, Index(TEMP, 0x0A))\n
    Store (BA0B, Index(TEMP, 0x0B))\n
    Store (BA0C, Index(TEMP, 0x0C))\n
    Store (BA0D, Index(TEMP, 0x0D))\n
    Store (BA0E, Index(TEMP, 0x0E))\n
    Store (BA0F, Index(TEMP, 0x0F))\n
    Store (BA10, Index(TEMP, 0x10))\n
    Store (BA11, Index(TEMP, 0x11))\n
    Store (BA12, Index(TEMP, 0x12))\n
    Store (BA13, Index(TEMP, 0x13))\n
    Store (BA14, Index(TEMP, 0x14))\n
    Store (BA15, Index(TEMP, 0x15))\n
    Store (BA16, Index(TEMP, 0x16))\n
    Store (BA17, Index(TEMP, 0x17))\n
    Store (BA18, Index(TEMP, 0x18))\n
    Store (BA19, Index(TEMP, 0x19))\n
    Store (BA1A, Index(TEMP, 0x1A))\n
    Store (BA1B, Index(TEMP, 0x1B))\n
    Store (BA1C, Index(TEMP, 0x1C))\n
    Store (BA1D, Index(TEMP, 0x1D))\n
    Store (BA1E, Index(TEMP, 0x1E))\n
    Store (BA1F, Index(TEMP, 0x1F))\n
    Return (TEMP)\n
}\n
end;

into device label EC0 insert
begin
Method (WRBA, 1, Serialized)\n
{\n
    Name (TEMP, Buffer(0x20) { })\n
    Store (Arg0, TEMP)\n
    Store (DerefOf(Index(TEMP, 0x00)), BA00)\n
    Store (DerefOf(Index(TEMP, 0x01)), BA01)\n
    Store (DerefOf(Index(TEMP, 0x02)), BA02)\n
    Store (DerefOf(Index(TEMP, 0x03)), BA03)\n
    Store (DerefOf(Index(TEMP, 0x04)), BA04)\n
    Store (DerefOf(Index(TEMP, 0x05)), BA05)\n
    Store (DerefOf(Index(TEMP, 0x06)), BA06)\n
    Store (DerefOf(Index(TEMP, 0x07)), BA07)\n
    Store (DerefOf(Index(TEMP, 0x08)), BA08)\n
    Store (DerefOf(Index(TEMP, 0x09)), BA09)\n
    Store (DerefOf(Index(TEMP, 0x0A)), BA0A)\n
    Store (DerefOf(Index(TEMP, 0x0B)), BA0B)\n
    Store (DerefOf(Index(TEMP, 0x0C)), BA0C)\n
    Store (DerefOf(Index(TEMP, 0x0D)), BA0D)\n
    Store (DerefOf(Index(TEMP, 0x0E)), BA0E)\n
    Store (DerefOf(Index(TEMP, 0x0F)), BA0F)\n
    Store (DerefOf(Index(TEMP, 0x10)), BA10)\n
    Store (DerefOf(Index(TEMP, 0x11)), BA11)\n
    Store (DerefOf(Index(TEMP, 0x12)), BA12)\n
    Store (DerefOf(Index(TEMP, 0x13)), BA13)\n
    Store (DerefOf(Index(TEMP, 0x14)), BA14)\n
    Store (DerefOf(Index(TEMP, 0x15)), BA15)\n
    Store (DerefOf(Index(TEMP, 0x16)), BA16)\n
    Store (DerefOf(Index(TEMP, 0x17)), BA17)\n
    Store (DerefOf(Index(TEMP, 0x18)), BA18)\n
    Store (DerefOf(Index(TEMP, 0x19)), BA19)\n
    Store (DerefOf(Index(TEMP, 0x1A)), BA1A)\n
    Store (DerefOf(Index(TEMP, 0x1B)), BA1B)\n
    Store (DerefOf(Index(TEMP, 0x1C)), BA1C)\n
    Store (DerefOf(Index(TEMP, 0x1D)), BA1D)\n
    Store (DerefOf(Index(TEMP, 0x1E)), BA1E)\n
    Store (DerefOf(Index(TEMP, 0x1F)), BA1F)\n
}\n
end;

into device label EC0 code_regex BDAT,\s+256 replace_matched 
begin
//BDAT, 256,\n
BA00,8,BA01,8,BA02,8,BA03,8,\n
BA04,8,BA05,8,BA06,8,BA07,8,\n
BA08,8,BA09,8,BA0A,8,BA0B,8,\n
BA0C,8,BA0D,8,BA0E,8,BA0F,8,\n
BA10,8,BA11,8,BA12,8,BA13,8,\n
BA14,8,BA15,8,BA16,8,BA17,8,\n
BA18,8,BA19,8,BA1A,8,BA1B,8,\n
BA1C,8,BA1D,8,BA1E,8,BA1F,8\n
end;

into method label SMBR code_regex \(BDAT, replaceall_matched begin (RDBA(), end;
into method label SMBR code_regex Store\s\((.*),\sBDAT\) replaceall_matched begin WRBA(%1) end;
into method label SMBW code_regex Store\s\((.*),\sBDAT\) replaceall_matched begin WRBA(%1) end;
into method label ECSB code_regex Store\s\((.*),\sBDAT\) replaceall_matched begin WRBA(%1) end;
into method label ECSB code_regex \(BDAT, replaceall_matched begin (RDBA(), end;


into device label EC0 insert
begin
Method (RDBB, 0, Serialized)\n
{\n
    Name (TEMP, Buffer(0x20) { })\n
    Store (BB00, Index(TEMP, 0x00))\n
    Store (BB01, Index(TEMP, 0x01))\n
    Store (BB02, Index(TEMP, 0x02))\n
    Store (BB03, Index(TEMP, 0x03))\n
    Store (BB04, Index(TEMP, 0x04))\n
    Store (BB05, Index(TEMP, 0x05))\n
    Store (BB06, Index(TEMP, 0x06))\n
    Store (BB07, Index(TEMP, 0x07))\n
    Store (BB08, Index(TEMP, 0x08))\n
    Store (BB09, Index(TEMP, 0x09))\n
    Store (BB0A, Index(TEMP, 0x0A))\n
    Store (BB0B, Index(TEMP, 0x0B))\n
    Store (BB0C, Index(TEMP, 0x0C))\n
    Store (BB0D, Index(TEMP, 0x0D))\n
    Store (BB0E, Index(TEMP, 0x0E))\n
    Store (BB0F, Index(TEMP, 0x0F))\n
    Store (BB10, Index(TEMP, 0x10))\n
    Store (BB11, Index(TEMP, 0x11))\n
    Store (BB12, Index(TEMP, 0x12))\n
    Store (BB13, Index(TEMP, 0x13))\n
    Store (BB14, Index(TEMP, 0x14))\n
    Store (BB15, Index(TEMP, 0x15))\n
    Store (BB16, Index(TEMP, 0x16))\n
    Store (BB17, Index(TEMP, 0x17))\n
    Store (BB18, Index(TEMP, 0x18))\n
    Store (BB19, Index(TEMP, 0x19))\n
    Store (BB1A, Index(TEMP, 0x1A))\n
    Store (BB1B, Index(TEMP, 0x1B))\n
    Store (BB1C, Index(TEMP, 0x1C))\n
    Store (BB1D, Index(TEMP, 0x1D))\n
    Store (BB1E, Index(TEMP, 0x1E))\n
    Store (BB1F, Index(TEMP, 0x1F))\n
    Return (TEMP)\n
}\n
end;

into device label EC0 insert
begin
Method (WRBB, 1, Serialized)\n
{\n
    Name (TEMP, Buffer(0x20) { })\n
    Store (Arg0, TEMP)\n
    Store (DerefOf(Index(TEMP, 0x00)), BB00)\n
    Store (DerefOf(Index(TEMP, 0x01)), BB01)\n
    Store (DerefOf(Index(TEMP, 0x02)), BB02)\n
    Store (DerefOf(Index(TEMP, 0x03)), BB03)\n
    Store (DerefOf(Index(TEMP, 0x04)), BB04)\n
    Store (DerefOf(Index(TEMP, 0x05)), BB05)\n
    Store (DerefOf(Index(TEMP, 0x06)), BB06)\n
    Store (DerefOf(Index(TEMP, 0x07)), BB07)\n
    Store (DerefOf(Index(TEMP, 0x08)), BB08)\n
    Store (DerefOf(Index(TEMP, 0x09)), BB09)\n
    Store (DerefOf(Index(TEMP, 0x0A)), BB0A)\n
    Store (DerefOf(Index(TEMP, 0x0B)), BB0B)\n
    Store (DerefOf(Index(TEMP, 0x0C)), BB0C)\n
    Store (DerefOf(Index(TEMP, 0x0D)), BB0D)\n
    Store (DerefOf(Index(TEMP, 0x0E)), BB0E)\n
    Store (DerefOf(Index(TEMP, 0x0F)), BB0F)\n
    Store (DerefOf(Index(TEMP, 0x10)), BB10)\n
    Store (DerefOf(Index(TEMP, 0x11)), BB11)\n
    Store (DerefOf(Index(TEMP, 0x12)), BB12)\n
    Store (DerefOf(Index(TEMP, 0x13)), BB13)\n
    Store (DerefOf(Index(TEMP, 0x14)), BB14)\n
    Store (DerefOf(Index(TEMP, 0x15)), BB15)\n
    Store (DerefOf(Index(TEMP, 0x16)), BB16)\n
    Store (DerefOf(Index(TEMP, 0x17)), BB17)\n
    Store (DerefOf(Index(TEMP, 0x18)), BB18)\n
    Store (DerefOf(Index(TEMP, 0x19)), BB19)\n
    Store (DerefOf(Index(TEMP, 0x1A)), BB1A)\n
    Store (DerefOf(Index(TEMP, 0x1B)), BB1B)\n
    Store (DerefOf(Index(TEMP, 0x1C)), BB1C)\n
    Store (DerefOf(Index(TEMP, 0x1D)), BB1D)\n
    Store (DerefOf(Index(TEMP, 0x1E)), BB1E)\n
    Store (DerefOf(Index(TEMP, 0x1F)), BB1F)\n
}\n
end;

into device label EC0 code_regex BDA2,\s+256 replace_matched 
begin
//BDA2, 256,\n
BB00,8,BB01,8,BB02,8,BB03,8,\n
BB04,8,BB05,8,BB06,8,BB07,8,\n
BB08,8,BB09,8,BB0A,8,BB0B,8,\n
BB0C,8,BB0D,8,BB0E,8,BB0F,8,\n
BB10,8,BB11,8,BB12,8,BB13,8,\n
BB14,8,BB15,8,BB16,8,BB17,8,\n
BB18,8,BB19,8,BB1A,8,BB1B,8,\n
BB1C,8,BB1D,8,BB1E,8,BB1F,8\n
end;

into method label SMBR code_regex \(BDA2, replaceall_matched begin (RDBB(), end;
into method label SMBR code_regex Store\s\((.*),\sBDA2\) replaceall_matched begin WRBB(%1) end;
into method label SMBW code_regex Store\s\((.*),\sBDA2\) replaceall_matched begin WRBB(%1) end;
into method label ECSB code_regex Store\s\((.*),\sBDA2\) replaceall_matched begin WRBB(%1) end;
into method label ECSB code_regex \(BDA2, replaceall_matched begin (RDBB(), end;

# additional work for _BIX method present in some ASUS laptops

into device label EC0 code_regex B0C3,\s+16 replace_matched begin XC30,8,XC31,8 end;
into device label EC0 code_regex B1C3,\s+16 replace_matched begin YC30,8,YC31,8 end;
into_all method label _BIX code_regex \(\^\^LPCB\.EC0\.B0C3, replaceall_matched begin (B1B2(^^LPCB.EC0.XC30,^^LPCB.EC0.XC31), end;
into_all method label _BIX code_regex \(\^\^LPCB\.EC0\.B1C3, replaceall_matched begin (B1B2(^^LPCB.EC0.YC30,^^LPCB.EC0.YC31), end;
into_all method label _BIX code_regex \(B0C3, replaceall_matched begin (B1B2(XC30,XC31), end;

# or could remove the _BIX method if it turns out not to work

#into_all method label _BIX remove_entry;

#fix logic error in some newer ASUS DSDTs (issue #23)
into method label FBST code_regex If\s\(CHGS\s\(Zero\)\)[\s]+\{[\s]+Store\s\(0x02,\sLocal0\)[\s]+\}[\s]+Else[\s]+\{[\s]+Store\s\(One,\sLocal0\)[\s]+\} replaceall_matched
begin
If (CHGS (Zero))\n
{\n
    Store (0x02, Local0)\n
}\n
Else\n
{\n
    Store (Zero, Local0)\n
}
end;

 

USB 3.0 & Instant wake fix

#Maintained by: RehabMan for: Laptop Patches
#usb_prw_0x0d_xhc.txt

# remove _PRW methods to prevent instant wake

# delete any existing XHC1 device
into device label XHC1 name_adr 0x00140000 remove_entry;
# delete any existing USB2 device
into device label USB2 name_adr 0x001D0000 remove_entry;

# if _PRW objects are methods
into method label _PRW parent_adr 0x001D0000 remove_entry;
into method label _PRW parent_adr 0x001A0000 remove_entry;
into method label _PRW parent_adr 0x00140000 remove_entry;
into method label _PRW parent_adr 0x001B0000 remove_entry;
# some other LAN cards use 0x00190000
into method label _PRW parent_adr 0x00190000 remove_entry;

# if _PRW methods are stuffed into a separate scope
into method label _PRW parent_label _SB.PCI0.EHC1 remove_entry;
into method label _PRW parent_label _SB.PCI0.EHC2 remove_entry;
into method label _PRW parent_label _SB.PCI0.XHC remove_entry;
into method label _PRW parent_label \_SB.PCI0.EHC1 remove_entry;
into method label _PRW parent_label \_SB.PCI0.EHC2 remove_entry;
into method label _PRW parent_label \_SB.PCI0.XHC remove_entry;

# if _PRW objects are names
into device name_adr 0x001D0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x001A0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x00140000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x001B0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x00190000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched;
# some _PRW have three entries in the Package
into device name_adr 0x001D0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x001A0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x00140000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x001B0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched;
into device name_adr 0x00190000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched;

# seems to work better if _PRW is present, but returns 0 (original was 3) for sleep state
into device name_adr 0x001D0000 insert begin Name(_PRW, Package() { 0x0D, 0 }) end;
into device name_adr 0x001A0000 insert begin Name(_PRW, Package() { 0x0D, 0 }) end;
into device name_adr 0x00140000 insert begin Name(_PRW, Package() { 0x0D, 0 }) end;
into device name_adr 0x001B0000 insert begin Name(_PRW, Package() { 0x0D, 0 }) end;
into device name_adr 0x00190000 insert begin Name(_PRW, Package() { 0x0D, 0 }) end;

# USB property injection for 7-series boards (originally HM76)

# Insert Apple USB properties into EHC1
into method label _DSM parent_adr 0x001D0000 remove_entry;
into device name_adr 0x001D0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
    Return (Package()\n
    {\n
        "subsystem-id", Buffer() { 0x70, 0x72, 0x00, 0x00 },\n
        "subsystem-vendor-id", Buffer() { 0x86, 0x80, 0x00, 0x00 },\n
        "AAPL,current-available", 2100,\n
        "AAPL,current-extra", 2200,\n
        "AAPL,current-extra-in-sleep", 1600,\n
        "AAPL,device-internal", 0x02,\n
        "AAPL,max-port-current-in-sleep", 2100,\n
    })\n
}\n
end;

# Insert Apple USB properties into EHC2
into method label _DSM parent_adr 0x001A0000 remove_entry;
into device name_adr 0x001A0000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
    Return (Package()\n
    {\n
        "subsystem-id", Buffer() { 0x70, 0x72, 0x00, 0x00 },\n
        "subsystem-vendor-id", Buffer() { 0x86, 0x80, 0x00, 0x00 },\n
        "AAPL,current-available", 2100,\n
        "AAPL,current-extra", 2200,\n
        "AAPL,current-extra-in-sleep", 1600,\n
        "AAPL,device-internal", 0x02,\n
        "AAPL,max-port-current-in-sleep", 2100,\n
    })\n
}\n
end;

# Insert Apple USB properties into USB 3.0 XHC
into method label _DSM parent_adr 0x00140000 remove_entry;
into device name_adr 0x00140000 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
    Return (Package()\n
    {\n
        "subsystem-id", Buffer() { 0x70, 0x72, 0x00, 0x00 },\n
        "subsystem-vendor-id", Buffer() { 0x86, 0x80, 0x00, 0x00 },\n
        "AAPL,current-available", 2100,\n
        "AAPL,current-extra", 2200,\n
        "AAPL,current-extra-in-sleep", 1600,\n
        "AAPL,device-internal", 0x02,\n
        "AAPL,max-port-current-in-sleep", 2100,\n
    })\n
}\n
end;


# special cases... (not in u430 DSDT)
#into scope label _SB.PCI0.XHC.RHUB.HS05 set_label begin _SB.PCI0.XHC1.RHUB.HS05 end;

- Finally, click in "Compile" to check for errors.

- If you get the error Object does not exists (\_SB.PCI0.XHC1) remove the 1 and try compile again.

- Close and reboot.

 

Last thing

 

Run this command in Terminal to disable hibernation (doesn't work in macOS):

sudo pmset -a hibernatemode 0

 

 

It's done!

 

 

System Updates

 

10.15.2

 

Before install, update the following kexts:

- Lilu.kext. I used version 1.4.0.

WhateverGreen.kext. I used version 1.3.5.

- AppleALC.kext. I used version 1.4.4.

- VoodooPS2Controller.kext. I used version 2.1.0.

(all download links above)

 

Download the latest CLOVERX64.efi.zip build. I used version 5100.

Mount EFI partition and unzip to:

- /Volumes/EFI/EFI/CLOVER/CLOVERX64.efi

- /Volumes/EFI/EFI/BOOT/BOOTX64.efi (rename the copy of CLOVERX64.efi to BOOTX64.efi

 

Install update. Will reboot at least four time.

 

 

10.15.4

 

Before install, update the following kexts:

- Lilu.kext. I used version 1.4.2.

WhateverGreen.kext. I used version 1.3.7.

- AppleALC.kext. I used version 1.4.7.

- VoodooP2Controller.kext. I used versions 2.1.2.

- VirtualSMC.kext. I used version 1.3.7.

- Legacy Video Patch (If Core i3 machine)

(all download links above)

 

Download the latest CLOVER installer. I used version 5107.

- Install respecting the configuration mentioned above in "Install bootloader" section.

 

Install update. Will reboot at least four time.

 

 

 


And last but not least


I would like to thank the following community members, by making these dream possible:
@crushers, @snatch, @apianti, @blackosx, @blusseau, @dmazar, @slice2009, @autumnrain, @phpdev32, @EMlyDinEsH, @RehabMan, @Scellow, @mitch_de, @Shailua, @Andy Vandijck, @maxfierke, @ArturXXX, @LexHimself, @brumas, @"Sniki", @Mieze, @headkaze and all others members involved directly or indirectly.

 

 

Attachments

 

config.plist

SSDTs v3.zip

USBPorts.kext.zip

VoodooPS2Controller.kext.zip

Filevault 2 additional drivers.zip

AtherosE2200Ethernet.kext v2.zip

 

Edited by ludufre

Share this post


Link to post
Share on other sites
Advertisement

11/10/2019 00:22h GMT-0

- Added Battery's DSDT patch.

- Fixed USB 3.0. (replaced USB's DSDT patch, removed FakePCIID.kext and FakePCIID_XHCIMux.kext and added SSDT-EC.aml and SSDT-UIAC.aml)

- Updated config.plist. (Removed PNP0C09 to PNPFFFF, not needed with SSDT-EC.aml)

Share this post


Link to post
Share on other sites

11/10/2019 20:41h GMT-0

- Updated USB 3.0 injection. (Removed USBInjectAll.kext and SSDT-UIAC.aml and added USBPorts.kext)

- Replaced AtherosE2200Ethernet.kext with version 2.3.0 RELEASE. (Previously was DEBUG build)

Edited by ludufre

Share this post


Link to post
Share on other sites

11/11/2019 04:41h GMT-0

- Merged Core i3 and i5 config.plist.

  • Same SMBIOS now.
  • Core i3 version need to remove: Devices - Properties - PciRoot(0x0)/Pci(0x2,0x0).

- Just one USBPorts.kext now, since SMBIOS are same. 

Share this post


Link to post
Share on other sites

Just wanted to say thanks to you and all who were involved in making this guide. I followed these steps on the i5 VivoBook S500CA that has identical specs to the i5 S400CA and it worked like a charm. The installer was being a bit stubborn at first but upon switching USB ports it worked fine. 

Share this post


Link to post
Share on other sites
13 hours ago, Mahbubur said:

Thanks a lot for such a great work, after install i notice my headphone(audio) jack is not working. 

Please help

mine is asus s400ca i5

 

Some revisions of this model have different sound cards. Try using VoodooHDA. (Remove AppleALC first)

Share this post


Link to post
Share on other sites
On 12/31/2019 at 12:36 PM, ludufre said:

 

Some revisions of this model have different sound cards. Try using VoodooHDA. (Remove AppleALC first)

I have remove the AppleALC key and put VoodooHDA to the same folder. but still not working. any other way I can try?

Share this post


Link to post
Share on other sites

Hello, thank you very much for this guide, I thought that considering your last guide was made for high sierra I never thought that you'd make one on catalina! apart from that, i wanted to ask which wifi card you recommend? dw1560 or AW-CE123H?

Share this post


Link to post
Share on other sites
2 minutes ago, mike1029 said:

Hello, thank you very much for this guide, I thought that considering your last guide was made for high sierra I never thought that you'd make one on catalina! apart from that, i wanted to ask which wifi card you recommend? dw1560 or AW-CE123H?

 

Many people found me on Facebook with my nickname asking for help with Mojave, then decided to redo the guide for Catalina at once.

 

You have to use AW-CE123H because it is ½Min PCIe. The DW1560 is NGFF/M.2.

Share this post


Link to post
Share on other sites
17 hours ago, ludufre said:

 

Many people found me on Facebook with my nickname asking for help with Mojave, then decided to redo the guide for Catalina at once.

 

You have to use AW-CE123H because it is ½Min PCIe. The DW1560 is NGFF/M.2.

Oh okay, I was leaning towards this one itself. Only issue is that I live in India and have limited access to parts, so I am trying my best to find one! I hope I won't need to reserve to importing one from US. Just for reference, what is the approximate normal cost for this card?

-thanks in advance

Share this post


Link to post
Share on other sites
14 hours ago, mike1029 said:

Oh okay, I was leaning towards this one itself. Only issue is that I live in India and have limited access to parts, so I am trying my best to find one! I hope I won't need to reserve to importing one from US. Just for reference, what is the approximate normal cost for this card?

-thanks in advance

 

Here in Brazil I have limited access to parts too. I've imported from China: https://www.ebay.com/itm/Broadcom-BCM94352HMB-Azurewave-AW-CE123H-PCI-E-867M-Wireless-WIFI-Card-BT-4-0/153691644626?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649

 

 

Share this post


Link to post
Share on other sites
On 1/3/2020 at 1:30 AM, ludufre said:

AppleALC key? Did you mean kext?

 

Did you fix as permissions?

sorry yes I mean the kext, how can i fix as permissions. I don't understand, please help

Share this post


Link to post
Share on other sites

Do you have any plans on improving the touchpad? I switched to the ApplePS2SmartTouchPad kext and it works a little better, mainly because it has basic two finger scroll and more gestures. it is still not perfect though.

Share this post


Link to post
Share on other sites
On 1/6/2020 at 3:33 PM, Mahbubur said:

sorry yes I mean the kext, how can i fix as permissions. I don't understand, please help

 

sudo chmod -R 755 /Library/Extensions
sudo chown -R root:wheel /Library/Extensions
sudo kextcache -i /

 

On 1/6/2020 at 4:57 PM, mike1029 said:

Do you have any plans on improving the touchpad? I switched to the ApplePS2SmartTouchPad kext and it works a little better, mainly because it has basic two finger scroll and more gestures. it is still not perfect though.

 

To be honest, I don't even use the touchpad. I prefer to use a USB mouse. I already knew ApplePS2SmartTouchPad, but as it is no longer updated, I chose not to put in the guide.

Share this post


Link to post
Share on other sites
20 hours ago, ludufre said:

 


sudo chmod -R 755 /Library/Extensions
sudo chown -R root:wheel /Library/Extensions
sudo kextcache -i /

 

 

To be honest, I don't even use the touchpad. I prefer to use a USB mouse. I already knew ApplePS2SmartTouchPad, but as it is no longer updated, I chose not to put in the guide.

Okay got it.

Share this post


Link to post
Share on other sites
On 1/9/2020 at 3:26 AM, ludufre said:

 


sudo chmod -R 755 /Library/Extensions
sudo chown -R root:wheel /Library/Extensions
sudo kextcache -i /

 

I tried but still there is no audio

Share this post


Link to post
Share on other sites

Hello. I have a i3 processor but when I try boot to install Im stuck on apple symbol and progress bar. I followed everything the only thing I couldn’t make is the step:

 

”- Go to Devices - Properties.

- Remove: PciRoot(0x0)/Pci(0x2,0x0).”

 

I couldn’t find this option on the provided .config file via Clover. Maybe that’s why am I stuck? Can I edit it opening the text editor and delete? Please help me 

Edited by gabiantunes

Share this post


Link to post
Share on other sites

Hello I had success deleting it by text editor. I installed the Catalina but now after install the video patch to HD3000 I’m stuck on Apple Logo again and can’t boot. Any suggestions?

 

PS: I didn’t make the step to add the clover and kexts to hd before install the video patch, maybe it’s the issue?

Edited by gabiantunes

Share this post


Link to post
Share on other sites

Do you by any chance know a good lenovo ideapad 300s guide for catalina? My friend has this laptop and im having difficulty understanding what is needed for this specific laptop. Thanks in advice

Share this post


Link to post
Share on other sites

Everything including airdrop is working perfectly, but the webcam isn't working. it gets detected as asus webcam but does not let me take pictures or show a preview. Maybe you know what is the issue?

Share this post


Link to post
Share on other sites
6 hours ago, mike1029 said:

Everything including airdrop is working perfectly, but the webcam isn't working. it gets detected as asus webcam but does not let me take pictures or show a preview. Maybe you know what is the issue?

 

Try this: 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By tonyx86
      This guide is a work in progress and will be updated as I refine the installation.
       
      Background
      This is my first "modern" hack supporting UEFI and my first hack using Clover "on-the-fly" patches.  My previous hacks
       
      Laptop: Thinkpad T61 / Nvidia NVS 140m Laptop: Dell Latitude E6410 / Nvidia G3100m Desktop: Gigabyte G31 / GeForce 9600 Desktop: Biostar TH55HD / Sapphire Pulse RX580 (Google "Catalina Biostar TH55HD" and look for user name deeveedee)  
      are all perfectly running Catalina and I patched them all "manually" - all DSDT patches applied with MaciSL with virtually no Clover on-the-fly patching and all booted Legacy Clover.  This UEFI hack was MUCH easier and took about 20 hours vs. a combined hundreds of hours for the old hacks.  I wanted a hack that was a little more future proof and I think this is it.  I hope you enjoy this as much as I am enjoying it.  It is a perfect MacMini8,1.
       
      My system specs
      HP EliteDesk 800 G4 Mini (I7-8700T / UHD 630 / Q370 Chipset / 32GB DDR4 RAM) 3 x DP Ports (connected to monitors using DP -> DVI adapters) 6 x USB 3.1 1 x USB Type-C 3.1 2 x NVMe SSD (M.2 PCIe x4 2280/2230 combo ports) 1 x SATA6 SSD 1 x Intel Ethernet RJ-45 Conexant CX20632 Audio Codec SMBIOS MacModel MacMini 8,1 Unsupported M.2 PCIe x1 2230 Intel Wi-Fi (currently disabled in BIOS).  I may replace this with Brcm, but am using only Ethernet (IntelMausi) for now.  
      Installation Steps: To be provided
      See attached EFI and /L/E kexts in EliteDesk.zip archive See installation methodology here See references here  
      What is not working
      Wi-Fi / Bluetooth (intentional since I have not yet replaced my Intel card).  
      What is not tested
      USB c 3.1 port Microphone port  
      What is working
      Everything not mentioned above Sleep / Wake Multiple displays with IGPU graphics acceleration, hot pluggable display ports and DP->DVI adapters USB 3.1 ports Audio (internal speaker and headphone jack) Ethernet Auto-sensing headphone jack automatically switches to internal speaker when headphones removed  
      Known Issues and their solutions
      (Solved. Problem resolves itself after a few boot cycles) After applying the Catalina 10.15.5.02 supplemental update, Catalina booted to a single display.  After a few boot cycles, multi-display operation was restored to normal. (Solved and included in the attached EliteDesk.zip archive) Unable to upgrade from 10.15.4 to 10.15.5 when using IntelMausiEthernet.kext.  Solution is to switch to IntelMausi.kext (Rev 1.0.2 here). (Solved and included in the attached EliteDesk.zip archive) Some USB devices were not recognized. My SSDT-UIAC.aml was incomplete and did not specify all required USB port types (missing SSxx ports). The attached EliteDesk.zip archive includes this fix. (Reported this as a possible Clover issue - no solution yet) Clover boot loader may default to Recovery volume after a normal shutdown.  Work-around is to select your normal macOS volume.  This may only happen when Clover is configured to boot LastBootedVolume and may be "fixable" by explicitly setting a boot volume (haven't tested this). (No longer observed) At least one display blanks (sleeps) when plugging / unplugging USB device (observed in front USB 3.1 ports).  Display wakes immediately on keyboard and mouse activity, so this is a minor issue but may be indicative of another issue. (Solved - this is a BIOS setting and requires no macOS changes) Safari has problems loading insanelymac web pages after sleep / wake.  I suspect that the problem is with the embedded video on the pages.  Also observed video problem in AppStore after sleep/wake.  Console: VideoDecodersUnavailable.  Solution is to enable Intel ME in BIOS. (Solved and included in the attached EliteDesk.zip archive) Display does not fully wake after resuming from sleep (needs an extra mouse or keyboard stimulus to fully wake).  Solution is to change boot arg darkwake=0 to darkwake=2.  Other values of darkwake may work as well, but this is the first I tried and it worked. (Solved and included in the attached EliteDesk.zip archive) -disablegfxfirmware boot arg is not required with WEG.  I inadvertently left this boot arg after I encountered an endless gfx firmware update boot loop while working on my FB patching.  This boot arg is no longer necessary after completing FB patching with WEG. (Solved and included in the attached EliteDesk.zip archive): Sometimes, CMOS time is lost on shutdown or restart.  Solution is to enable Clover's Apple RTC fix in config.plist. (Solved and included in the attached EliteDesk.zip archive) headphone jack doesn't work.  Solution is to change HDEF layout-id to 28. (Solved and included in the attached EliteDesk.zip archive) System freezes on wake from sleep because of a kernel panic related to hda-gfx (my system does not have HDMI and my DP->DVI adapters do not drive monitor speakers).  Solution is to add No-hda-gfx property to HDEF as described here.  This property is recognized as a Lilu flag and prevents loading hda-gfx. (Solved and included in the attached EliteDesk.zip archive) Device (PMCR) is not defined.  Solution is a SSDT that "injects" the missing device. (Solved and included in the attached archive) eficheck is loaded (not sure why this is bad, but may be a privacy issue - see here). Solution is to add updated EFICheckDisabler kext that include Q370 chipset.  See here.  
      BIOS Version / Configuration: To be provided
      Version: 02.11.01 Rev.A Intel ME must be enabled for proper sleep / wake of UHD 630
       
      Clover Configuration
      Clover for UEFI booting only Install Clover in the ESP UEFI Drivers Recommended drivers AudioDxe DataHubDxe FSInject SMCHelper File System drivers ApfsDriverLoader VBoxHfs Memory fix drivers AptioMemoryFix Additional drivers NvmExpressDxe Install RC scripts on target volume Themes Choose your desired theme Install Clover Preference Pane (option not available when installing on USB thumb drive)  
      UHD 630 Framebuffer Patching: To be provided
       
      Current Versions
      Catalina 10.15.5.02 Clover (UEFI) r5118 Lilu.kext 1.4.5 WhateverGreen.kext 1.4.0 AppleALC.kext 1.5.0 IntelMausi 1.0.3 (Not IntelMausiEthernet)  
      Credits To be provided
       
       







      EliteDesk800 G4 Mini - Rev 0.81.zip
    • By dmpcoke
      Hi,
       
      I followed the OC guide, and installed Catalina 10.15.5 on my PC.
      The installation went very well. Most parts also work well after I login to the desktop except the following
      issue:
      Each time I tried to log back into the desktop from sleep, I would get a black screen very shortly after I entered the desktop.
      And black screen will last from a few seconds to a few minutes, no exact lasting time.
      Keyboards and mouse are still working during black screen, I can see the operations after the monitor works again.
       
      It connects LG monitor via DP port and I tried to modified the dp version between 1.2 and 1.4, got the same issue.
       
      Attached my entire OC folder, I'm so appreciated if someone could help me check it out, or tell me which part I should focus on.
       
      Thanks in advance!
       
      P.S. Here is my PC summary: Dell Optiplex 7060 MFF
       
      CPU Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz; 8th Gen, Coffee Lake GPU Intel(R) UHD Graphics 630 RAM Team Group 32 GB (2 × 16GB), 2400 MHz, DDR4 Chipset
      Intel 300 Series LPC (Q370) – A306 Audio Realtek ALC255/3234 (Codec ID: 0x10EC0255) Ethernet Intel(R) Ethernet Connection I219-LM WiFi/BT M.2 BCM43224 802.11a/b/g/n Storage Samsung SSD 970 EVO 500GB USB Ports Type-C × 1,USB 3.0 × 5 Video Output DP × 2 Monitor LG 4K 3840 x 2160 @ 60 Hz
      BIOS v1.4.2 OC.zip
    • By MaLd0n
      -Donations with PayPal
      https://tinyurl.com/r2bvzm7
      -Donations with Bitcoin
      33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3
      -Donations with PicPay 
      @danielnmaldonado
      -Donation with Mercado Livre 
      https://tinyurl.com/y9evkj5u
       
      -EFI OpenCore Folder Desktop 10th Intel Processors
      Paste this EFI folder in EFI partition in your USB STICK
      https://tinyurl.com/ybwr9kq3
       
      -Tutorial
      https://tinyurl.com/re2c9sz
       
      -Post Installation
      Paste EFI folder into EFI Partition in your SSD, reboot and extract one full dump with this app and post here!
      https://tinyurl.com/ybwr9kq3
      RunMe.app
      https://tinyurl.com/y9562hz7
       
      --DSDT PATCHES--
      DSDT.Gigabyte Z490-UD.zip
      -FIX ERRORS AND WARNINGS -FIX ACPI ERRORS -REMOVE UNUSED SCOPES / DEVICES -HIGH PRECISION EVENT TIMER -SATA SERIE ID -DMAC -REMOVE LINES, PROBLEMATIC and UNUSED -FIX K.P in REBOOT -NVRAM -REAL TIME CLOCK -SLPB -DARWIN / WINDOWS -XHCI -PLUGIN TYPE -HDEF -ARTC -IPIC -TIMR -SBUS -BUS1 -MCHC -ALS0 -SHUTDOWN -UAR1 -LAN -FWHD -USBX -PMCR -PPMC -XSPI -GMM -kUSBCompanionIndex -io-device-location -IMEI -EC -PNLF -ARPT -GFX0 -NVME -ACPI-WAKE-GPE -DTGP -ACQUIRE MUT0 0XFFFF -MUTEX MUT0 0x00 -EXTERNAL REFERENCES -UNKNOWNOBJ -HDMI / HDAU -FULL RENAMED DEVICES  
      --SCREENSHOTS--























       









       
      Big Thanks to XLR and your Badass Motherboard, Ultrafast CPU, Coolest Heatsink, Huge Graphics Card, Tonnes of RAM,
      Gigantic Hard Drive, Lightspeed Disk Burner, Professional Sound Card, Massive LCD Display.
       
       
      -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!
       
      Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad, headkaze, onemanosx, erroruser, Jenny David, Sampath007, Facebook Hackintosh community, Facebook Olarila community, SchmockLord, daliansky and many, many, many others!
       
      We're all here to have fun and learn from each other!
    • By fantomas
      macOS Catalina 10.15.6 beta (19G36e)
    • By tonyx86
      This thread for installing Catalina on the Dell Latitude E6410 WITH NVIDIA GRAPHICS (BIOS A17, NVidia 3100m) will help you install a fresh installation of Catalina on your Dell Latitude E6410, it will help you upgrade from 10.15.2 to 10.15.x (if you originally installed Catalina from this thread) and it will also help you upgrade from Mojave 10.14.6 if you have already installed Mojave by following the instructions here.  The instructions in this first post assume that you are installing Catalina in an APFS container.  If you are curious about the evolution of this solution and how sleep/wake was solved, review the Mojave installation thread.
       
      Important: This Thread is NOT intended to help you install macOS on a Latitude E6410 with Intel HD Graphics (without Nvidia graphics).  The DSDT attached to this first post (in E6410-Catalina.zip) is VERY SPECIFIC to the Nvidia graphics implementation and has not been edited for HD Graphics - there are elements required for HD Graphics that are missing from the attached DSDT and there are DSDT mods that have not been tested with HD Graphics.  Also, the kexts attached to this first post are specific to a Broadcom Wi-Fi card which must replace the original Intel Wi-Fi card.
       
      This first post will be modified to reflect lessons learned and to reflect the most current working state of my Latitude E6410 (with NVidia 3100m discrete graphics) running Catalina.  Issues, observations and performance tips are recorded toward the bottom of this first post.  My recommended CLOVER configuration is specified toward the bottom of this first post.
       
      *** If you want help with your installation, please post your issue along with problem reporting files generated using @black.dragon74's problem reporting tool.  Google 'GENERATE PROPER PROBLEM REPORTING FILES black.dragon74' to find it. ***.  If Catalina's Read-Only protections block your installation of black.dragon74's gen_debug script, please copy the attached gen_debug script to your Desktop, change script properties with the terminal command 'chmod a+x ~/Desktop/gen_debug' and run the script from your Desktop.
       
      My system is as follows:
      Dell Latitude E6410 (I7-620m, Nvidia 3100M, 8GB DDR3, 512GB SSD, 1440x900 display, BIOS: A17) Wi-Fi: Broadcom BCM 94352HMB (replaced original Wi-Fi card) BIOS (version A17) configured as follows (leave default unless listed here): Boot Sequence: USB, Internal HDD, CD/DVD, Modular Bay HDD; Boot List Option: Legacy; Integrated NIC:Enabled; Parallel Port: Disabled; Serial Port: Disabled; SATA Operation: AHCI; Misc Devices: Enable Modular Bay, Camera, External USB, Microphone, Media Card and 1394; Latitude ON Reader: Disabled; Keyboard Illumination: Auto ALS and Input; Ambient Light Sensor: Enabled; OROM Keyboard Access: Disable; TPM Security: Disable; Computrace:Deactivate; CPU XD Support: Enable; Performance: Enable all options; Power Management: Disable Wake on AC, Disable Wake on LAN/WAN, Express Charge: Standard, Charge Behavior: Enabled; Keypad: Fn Key Only; Mouse/Touchpad: Touchpad/PS-2 Mouse; USB Emulation: Enable Legacy; Fn Key Emulation: Disabled; Fastboot: Thorough; Virtualization: Enable Intel Virtualization, Disable VT for Direct I/O, Disable Trusted Execution; Wireless Switch: Bluetooth and WLAN; Wireless Device Enable: Bluetooth and WLAN;   
      Versions of the software used in this installation are listed below the installation steps.  EFI and kexts for Catalina are attached to this first post in E6410-Catalina.zip.  CLOVER configuration is specified below the installation steps.
       
      Wi-Fi connection to an Access Point is delayed when using AppleALC for sound.  Do not use Apple ALC.  Use VoodooHDA pkg 2.9.2 v15 for sound.
       
      Steps to install Catalina on a Dell Latitude E6410 (BIOS A17, NVidia 3100m)
       
      If you want to upgrade to 10.15.5, see instructions at this post.
       
      If you want to upgrade to 10.15.4, see instructions at this post.  
       
      Follow instructions below for 10.15.2 and 10.15.3.
       
      Make sure that your system matches my system description above (including BIOS version, Wi-Fi card, BIOS settings) If performing an upgrade from Mojave or a previous version of Catalina, backup your Mojave or Catalina partition! (Carbon Copy or similar) Download Catalina Installer Download DosDude Catalina Patcher Use DosDude Patcher to create Catalina USB Installer Delete LegacyUSBInjector.kext (we're using @RehabMan's USBInjectAll.kext with custom SSDT) and delete SIPManager.kext (CLOVER is managing SIP) from Catalina USB Installer's /Library/Extensions folder Copy all but the FakeSMC sensor kexts in E6410-Catalina.zip (attached) LE folder to the Catalina USB Installer /Library/Extensions (copy all kexts (including FakeSMC.kext) but not the FakeSMC sensor kexts) Install CLOVER Bootloader (Legacy) on USB Installer using the EFI in the E6410-Catalina.zip (attached).  Use the CLOVER configuration specified below.  Be sure to replace the XX-MASKED-XX parameters in the attached config.plist with your own values. Reset your Latitude E6410 NVRAM by doing the following (this may be important if you're making changes to your existing EFI and won't hurt anything if you're not making any changes) turn-off your laptop remove A/C power and main battery press and hold the power button for 30 seconds restore A/C power and battery Boot your Latitude E6410 from the Catalina USB Installer that you created in steps 5-8. Select "Reinstall macOS" (note that I have existing installations of Mojave and High Sierra on my Latitude E6410, so it's possible that this menu item changes to "Install macOS" if you don't have any previous macOS installations). Select your Catalina destination partition (which will be your Mojave or previous Catalina partition if you are upgrading) After the Catalina Installer reboots the first time, boot from the "macOS Installer" partition on the disk that you selected as your Catalina destination (not the macOS installer on the USB) After the Catalina Installer reboots the second time, boot the Catalina macOS Installer on the USB Select the Post Install Patcher utility Select only the following Post Install Patches (no other patches / options) Install Patch Updater Legacy Video After the Post Install Patcher reboots,  boot from the newly installed (or upgraded) Catalina partition and complete the macOS configuration Remove these kexts (if they exist) from /Library/Extensions: LegacyUSBInjector.kext, LegacyUSBVideoSupport.kext and SIPManager.kext If you are performing a fresh installation of Catalina: Install CLOVER (LEGACY - NOT UEFI) on your boot disk and configure EFI using files in the attached E6410-Catalina.zip.  Use the CLOVER configuration below.  Be sure to replace the XX-MASKED-XX parameters in the attached config.plist with your own values. Install all kexts in the attached E6410-Catalina.zip LE folder to your /Library/Extensions folder. Copy HWMonitor from the application folder in the attached E6410-Catalina.zip to your Applications folder. Install VoodooHDA (I installed using the Classic method) Skip to Step 21 If you are upgrading from a previous version of Catalina using the instructions from this thread or from Mojave that you installed using the instructions here: Replace 3rd-party kexts in EFI/Clover/kexts/Other with those in the attached EFI folder.   Replace EFI/Clover config.plist with the attached config.plist (Be sure to replace the XX-MASKED-XX parameters in the attached config.plist with your own values) Replace EFI/Clover/ACPI/patched with the files in the attached EFI/Clover/ACPI/patched Replace 3rd-party kexts in /Library/Extensions with those in the attached LE folder Remove VoodooSDHC.kext from /Library/Extensions Re-install VoodooHDA if necessary (I installed using the Classic method for Catalina) Ensure PROPER kext installation: If you're manually installing kexts in /Library/Extensions, make sure that you execute the following (in terminal) cd /Library/Extensions sudo chown -R root:wheel *.kext sudo chmod -R 755 *.kext sudo kextcache -i / After you execute 'sudo kextcache -i /' you should observe that ALL kexts are allowed.  If not, your kext directory attributes are probably incorrect.  Repeat kext installation and try again. Reboot from your new/upgraded Catalina partition Welcome to macOS Catalina! Change the keyboard type to ISO (System Preferences > Keyboard > Change Keyboard Type) Swap the Command and Option keys (System Preferences > Keyboard > Modifier Keys) Set hibernatemode: In terminal, execute sudo pmset -a hibernatemode 0 sudo rm -f /var/vm/sleepimage sudo touch /var/vm/sleepimage sudo chflags schg /var/vm/sleepimage  
      Version Info at the time of this writing:
      Catalina Installer 10.15.5.02 CLOVER r5118 DosDude Catalina Patcher: v1.4.4 Lilu.kext 1.4.5 AirportBrcmFixup.kext 2.0.6 BrcmFirmwareData.kext 2.5.3 BrcmBluetoothInjector.kext 2.5.3 BrcmPatchRAM3.kext 2.5.3 IntelMausi.kext 1.0.3 (Not IntelMausiEthernet.kext)
      EFICheckDisabler.kext 0.5
      VoodooHDA.kext 2.9.2 v15 (NOT AppleALC)
       
      What is not working (that was working in Mojave)
      SD Card Slot (had to remove VoodooSDHC.kext which caused system freeze on wake)  
      Known Issues and Their Solutions
      (Solved - no further work required) Clover r5118 requires the config.plist key <key>NoDefaultProperties</key><false> to permit macOS to boot with Clover's "Inject Nvidia" = True.  See details here.  config.plist in the attached E6410-Catalina.zip archive includes this change. (Solved - no further work required) EFICheck is loaded.  Solution is to install EFICheckDisabler.kext which you can get here.  EFICheck.kext is included in the attached E6410-Catalina.zip archive. (Solved - no further work required) Some users experience display issues.  The solution is to remove Device (PNLF) from the DSDT.  Use the attached DSDT.  Removal of PNLF will disable sleep on lid closure.  Device (PNLF) can be added without modifying the DSDT by enabling the Clover PNLF ACPI patch.  The attached Clover config.plist enables the PNLF DSDT patch.  Disable the Clover PNLF patch if you experience display issues. (Solved - no further work required) USB sleep/wake power IORegistry keys are not injected (not included in Mojave's or Catalina's IOUSBHostFamily.kext).  Solution is to added SSDT-USBX.aml to EFI/CLOVER/ACPI/patched.  The attached SSDT-USBX.aml includes USB sleep/wake properties for MacBookPro6,2 from High Sierra 10.13.6 IOUSBHostFamily.kext. (No solution yet) Brightness slider does not work in System Preferences > Displays.  Brightness is easily controlled with Dell brightness keys.  There is some work on this later in this thread, but I will not be solving this as I'm content with the Dell brightness keys (and Ambient Light Sensor works to auto-adjust brightness). (No intention to solve) Display Settings in System Preferences are "garbled" when bright slider is visible.  This is a known issue with the legacy graphics patch and does not affect laptop operation. I continue to refine the DSDT and CLOVER config.plist to optimize my Latitude E6410 for multi-booting between various macOS versions (High Sierra, Mojave and Catalina at the time of this writing). If you upgrade your Latitude E6410 EFI using my attached EFI, you may find that your Latitude E6410 is stuck in a boot-loop that ends in a white screen and reboots.  Clear your system by doing the following: turn off your laptop, remove A/C power, remove the main battery, press and hold the power button for 30 seconds, restore A/C power and battery, boot normally.  I have only found this to be necessary (very rarely) after making an EFI change, but you may find it helpful if making kext changes in /Library/Extensions as well. (Solved - no further work required) Brcm firmware does not update when using BrcmFirmwareRepo.kext in /Library/Extensions.  Solution is to install BrcmFirmwareData.kext and BrcmPatchRAM3.kext in E/C/k/O with Clover "Inject Kexts" = YES. (Solved - no further work required) Laptop does not sleep when closing lid.  Solution appears to be a combination of adding Notify (LID0) code to Method (BTNV) and adding Device (PNLF) in the DSDT. I am using the same EFI for High Sierra 10.13.6, Mojave 10.14.6 and Catalina 10.15.3 and it works in all three macOSes. (No solution yet) No SD Card Slot (had to remove VoodooSDHC.kext) - I read somewhere that there is a solution that does not require any kexts (just a DSDT edit).  Haven't yet implemented this fix. (Not a problem that needs to be solved - leaving for historical purposes.  I am running Catalina without this.) - IOHWControl does not load under GFX0 (as observed in IORegistryExplorer).  Solution (if it needs to be solved) is to install AppleHWSensor.kext from a DosDude-patched Mojave /S/L/E in Catalina's /L/E.  Copy and install your own or use the kext attached to this post. (Solved - no further work required) Wi-Fi connection is delayed until a minute or so after boot - Use VoodooHDA and NOT AppleALC (Solved - no further work required) External USB ports do not work after waking from sleep (S3) - Upgrade Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /L/E) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. (Solved - no further work required) Boot and shut-down time of Catalina is slower than Mojave - Upgrade Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /L/E) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. (Solved - no further work required) Wi-Fi is not immediately available at OS startup - Upgrade Lilu.kext and replace BrcmFirmwareRepo.kext and BrcmPatchRAM2.kext (in /L/E) with latest BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext. (Solved - no further work required) Laptop freezes on wake - Remove VoodooSDHC.kext from /Library/Extensions  
      Tips for Improved Performance (on this and other older systems)
      System Preferences > Spotlight > Search Results: Uncheck all options System Preferences > Spotlight > Privacy: Add all Volumes System Preferences > Accessibility > Display: Check "Reduce motion" System Preferences > Accessibility > Display: Check "Reduce transparency"  
      Other tips
      If your fan is always running and temps are good, try pressing Fn + z (I haven't noticed this issue for a while since I completed DSDT edits for Mojave, but keeping this here for historical purposes)  
      CLOVER Installation: Use these configuration options (Install Clover LEGACY - NOT UEFI)
      Install Clover in the ESP Boot Sectors Install boot0af in MBR Clover for BIOS (LEGACY - NOT UEFI) booting Clover EFI 64-bits SATA BIOS Drivers, 64-bit Recommended drivers FSInject File System drivers ApfsDriverLoader Install RC scripts on target volume Themes Choose your desired theme Install Clover Preference Pane After clicking "Continue", if prompted with "This Clover package is incompatible with this version of macOS," install anyway  
      After CLOVER installation is complete Copy the following from the attached E6410-Catalina.zip ACPI patched contents config.plist (change XX-MASKED-XX values to your own) kexts/Other (remove all other kext folders) Remove christmas and new year folders from themes (if present)  
      Credits
      Thanks to those who contributed to my Mojave solution and to the DosDude team (for the incredible macOS patchers), I think this Catalina installation was the easiest macOS installation that I have experienced (so far).  Many thanks to @Slice and his team for the incredible work on CLOVER and for continuing to support old legacy systems like this.  Also, thanks to @Mieze and @headkaze and others I'm sure for maintaining the Brcm kexts.  And finally, I still prefer to manually apply patches to the DSDTs in my systems.  CLOVER offers extensive patching functionality, but I'm old-school and like to have an error-free, fully-patched DSDT with a simple CLOVER config.plist.  I think that this manual DSDT patching approach (which required an extensive review and debugging of the original unpatched DSDT in this thread) is the reason that this Latitude E6410 is such a perfect MacBookPro6,2.  Thank you @RehabMan for being a great teacher and for always insisting on problem reporting files .
       
       

      AppleHWSensor.kext.zip
      gen_debug

      E6410 Catalina-5v2.zip
×