Contribute
Register

[GUIDE]HP Spectre x360 13-ap0037TU(Late 2018)

Joined
Mar 15, 2017
Messages
52
Motherboard
MSI H270 PC MATE
CPU
Core i7-7700K
Graphics
NVIDIA RTX2060
Mac
  1. iMac
  2. MacBook
Mobile Phone
  1. Android
  2. iOS
Installation of macOS Catalina on a HP Spectre x360 13-ap0000 series.

Region: Japan
CPU: Core ™ i7-8565U
iGPU: Intel Graphics UHD 620
RAM: 16GB
Storage: NVMe Samsung PM981 512GB
USB: USB3.1 Gen2 x 1 Thunderbolt 3 x 2
WiFi: Intel Wireless AC 9560
Bluetooth: VID 8087 PID 0AAA USB
Trackpad: SYNA329A
Touchpad: ELAN2514

Note: The boot loader for this guide has changed from Clover to OpenCore.

You can use other than DSDT as it is. Therefore, the OC folder in the EFI folder can use the attachment as it is. However, do not reuse OC/ACPI/DSDT.aml. It may not be able to start.

What works?

  • Keyboard
  • Trackpad(I2C)
  • Touchpad(I2C)
  • Touch pen
  • Built-in Speaker
  • Built-in microphone
  • Headphone
  • Graphics acceleration
  • Thunderbolt 3
  • USB3.1 Gen2
  • Connection of external display for conversion from Type-C to HDMI
  • Screen brightness adjustment
  • The remaining battery capacity (The frequency of updating the battery level is unstable.)
  • Wi-Fi(Built-in intel chip)
  • Siri
  • microSD card reader
  • Sleep
  • The screen return after opening the lid
  • App Store
  • iCloud
  • macOS update

What doesn't work?
  • Bluetooth(It can connect but cannot communicate.)
  • Fingerprint authentication sensor
  • Camera (it may be used with some software because it is recognized as a USB camera)
  • iMessage
  • FaceTime

Warning
Samsung PM981 is not currently available for macOS. Replace or use external storage.

1. Prepare the installation USB
Storage capacity must be 16GB or more. You can install the installer on the storage where macOS is installed.
Use OpenCore as the boot loader.

Install OpenCore
Please install for UEFI.

1. Dump of DSDT
Use OpenCore for the DSDT dump. Currently (0.5.9) you need a debug version of OpenCore to dump the DSDT.
Also, Misc -> Debug -> SysReport in config.plist must be true.


Once config.plist is complete, start OpenCore once. macOS shuts down once without booting.
Then, a SysReport folder will be created in the EFI folder.
Copy SysReport -> ACPI -> DSDT.aml.

2. Make config.plist
See this guide to create a config.plist.
https://dortania.github.io/vanilla-laptop-guide/OpenCore/config-laptop.plist/coffee-lake.html
You can also use the attached file.

Important settings in config.plist

Set Misc -> Debug -> Disable watch dog to true.

This fixes an issue where it could not boot early.

NVRAM -> 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14 -> Set UIScale to 01.
This enables high resolution on OpenCore.

NVRAM -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> prev-lang:kbd
Please set the appropriate value. This is the keyboard language.
https://github.com/acidanthera/Open...AppleKeyboardLayouts/AppleKeyboardLayouts.txt
Please check this page for confirmation. For example, ja is [16384] ja - KANA , so the value to be set is ja:16384.

Set Booter -> DisableVariableWrite to true.
If NVRAM is disabled, enabling it will enable NVRAM.

ACPI -> Add
The SSDTs that should be installed are:
  • SSDT-AWAC.aml
  • SSDT-PLUG.aml
  • SSDT-XOSI.aml
  • SSDT-PNLF-CFL.aml
  • SSDT-UIAC.aml
  • SSDT-EC-USBX-LAPTOP.aml
You cannot start without SSDT-AWAC.aml, SSDT-XOSI.aml and SSDT-EC-USBX-LAPTOP.aml. Be sure to install it.

DeviceProperties
PciRoot(0x0)/Pci(0x1F,0x3)
This is an audio device.
Code:
            <key>PciRoot(0x0)/Pci(0x1F,0x3)</key>
            <dict>
                <key>AAPL,slot-name</key>
                <string>Internal@0,31,3</string>
                <key>device_type</key>
                <string>Multimedia audio controller</string>
                <key>layout-id</key>
                <integer>11</integer>
                <key>model</key>
                <string>Cannon Point-LP High Definition Audio Controller</string>
            </dict>
PciRoot(0x0)/Pci(0x2,0x0)
This is a graphics device.
Code:
            <key>PciRoot(0x0)/Pci(0x2,0x0)</key>
            <dict>
                <key>AAPL,ig-platform-id</key>
                <data>CQCbPg==</data>
                <key>AAPL,slot-name</key>
                <string>Internal@0,2,0</string>
                <key>device-id</key>
                <data>mz4AAA==</data>
                <key>device_type</key>
                <string>VGA compatible controller</string>
                <key>enable-hdmi20</key>
                <data>AQAAAA==</data>
                <key>framebuffer-fbmem</key>
                <data>AACQAA==</data>
                <key>framebuffer-patch-enable</key>
                <data>AQAAAA==</data>
                <key>framebuffer-stolenmem</key>
                <data>AAAwAQ==</data>
                <key>framebuffer-unifiedmem</key>
                <data>AAAAgA==</data>
                <key>hda-gfx</key>
                <string>onboard-1</string>
                <key>model</key>
                <string>Intel UHD Graphics 620</string>
            </dict>

Kernel -> Add
The kexts that should be installed are:
  • Lilu.kext
  • VirtualSMC.kext
  • SMCBatteryManager.kext
  • SMCLightSensor.kext
  • SMCProcessor.kext
  • SMCSuperIO.kext
  • AppleALC.kext
  • Sinetek-rtsx.kext
  • itlwm.kext
  • USBInjectAll.kext
  • VoodooI2C.kext
  • VoodooI2CHID.kext
  • VoodooPS2Controller.kext(by RehabMan)
  • WhateverGreen.kext
For VoodooI2C, the load order of kext is important. The order in which they should be loaded is:
  1. VoodooI2C.kext/Contents/PlugIns/VoodooGPIO.kext
  2. VoodooI2C.kext/Contents/PlugIns/VoodooI2CServices.kext
  3. VoodooI2C.kext
  4. VoodooI2C.kext/Contents/PlugIns/VoodooInput.kext
  5. VoodooI2CHID.kext
In addition, please disable the following kext.
  1. VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Trackpad.kext
  2. VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Mouse.kext
You can also use IntelBluetoothFirmware.kext as a driver for Bluetooth. However, there is no meaning for now because you can connect but you cannot communicate.

PlatformInfo -> Generic
Set the Mac model, serial number, etc. here.
Use MacBook Air8,2 for Mac model.(Other models are possible, but this model has the closest CPU)
Set the system serial number, system UUID, MLB, ROM (11 22 33 44 55 66).

UEFI -> Audio -> AudioDevice
Please use PciRoot(0x0)/Pci(0x1F,0x3).

UEFI -> Drivers
The drivers that must be installed are:
  • HfsPlus.efi
  • OpenCanopy.efi(Optional)
  • OpenRuntime.efi
Do not install the memory driver, NVRAM driver, APFS driver. It is already included in OpenCore.

Please change as needed.

3.Edit DSDT
Edit using MaciASL.
Please apply the following patch in the attached file.

  • [bat]HP_Spectre_x360_apxxxx.txt
  • [I2C]HP_Spectre_x360_apxxxx.txt
  • [brightness_key]HP_Spectre_x360_apxxxx.txt

Search PS2K by filter.
Replace Device (PS2K) {....} with the following.
Code:
                Device (PS2K) //Keyboard
                {
                    Name (_HID, EisaId ("PNP0303"))
                    Name (_CID, EisaId ("PNP030B"))
                    Method (_STA, 0, NotSerialized)
                    {
                        If (And (IOST, 0x0400))
                        {
                            Return (0x0F)
                        }
                        Else
                        {
                            Return (Zero)
                        }
                    }
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0060,             // Range Minimum
                            0x0060,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0064,             // Range Minimum
                            0x0064,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IRQNoFlags ()
                            {1}
                    })
                    Name (_PRS, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            FixedIO (
                                0x0060,             // Address
                                0x01,               // Length
                                )
                            FixedIO (
                                0x0064,             // Address
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {1}
                        }
                        EndDependentFn ()
                    })
                    Method (_PSW, 1, NotSerialized)
                    {
                        Store (Arg0, KBFG)
                    }
                }
                Scope (\)
                {
                    Name (KBFG, Zero)
                }
                Method (PS2K._PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x1D, 0x04))
                }
                Device (PS2M) //Mouse
                {
                    Name (_HID, EisaId ("PNP0F03"))
                    Name (_CID, EisaId ("PNP0F13"))
                    Method (_STA, 0, NotSerialized)
                    {
                        If (And (IOST, 0x4000))
                        {
                            Return (0x0F)
                        }
                        Else
                        {
                            Return (Zero)
                        }
                    }
                    Name (CRS1, ResourceTemplate ()
                    {
                        IRQNoFlags ()
                            {12}
                    })
                    Name (CRS2, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0060,             // Range Minimum
                            0x0060,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0064,             // Range Minimum
                            0x0064,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IRQNoFlags ()
                            {12}
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        If (And (IOST, 0x0400))
                        {
                            Return (CRS1)
                        }
                        Else
                        {
                            Return (CRS2)
                        }
                    }
                    Name (_PRS, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IRQNoFlags ()
                                {12}
                        }
                        EndDependentFn ()
                    })
                    Method (_PSW, 1, NotSerialized)
                    {
                        Store (Arg0, MSFG)
                    }
                }
                Scope (\)
                {
                    Name (MSFG, Zero)
                }
                Method (PS2M._PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x1D, 0x04))
                }

4.BIOS settings
Turn on the laptop and hit the F10 key repeatedly.
Then turn off Secure Boot.
Change the boot order as needed.
Save.

5.Wi-Fi settings
Edit Info.plist in itlwm.kext to connect to Wi-Fi.(or you can use HeliPort.app)
スクリーンショット 2020-07-16 0.21.07.png


Issues
Please switch to XPC or bootstrap_check is displayed and I cannot boot
->There is a problem with the graphics.

Installation of macOS stops in 2 minutes remaining/cannot shut down
->NVRAM may not be working properly.

EFI partition is out of space

->Press Shift + command + . on Finder(to show hidden files) and delete .Trashes

Complete
All you have to do is boot up and install.
S__16089314.jpg
 

Attachments

  • OC.zip
    65.2 MB · Views: 292
  • [brightness_key]HP_Spectre_x360_apxxxx.txt
    283 bytes · Views: 110
  • config.plist
    27.4 KB · Views: 106
  • [bat]HP_Spectre_x360_apxxxx.txt
    3.2 KB · Views: 106
  • SSDT-EC-USBX-LAPTOP.aml
    335 bytes · Views: 61
  • SSDT-PNLF-CFL.aml
    125 bytes · Views: 64
  • SSDT-XOSI.aml
    333 bytes · Views: 82
  • SSDT-AWAC.aml
    80 bytes · Views: 62
  • [I2C]HP_Spectre_x360_apxxxx.txt
    760 bytes · Views: 114
Last edited:
Joined
Mar 11, 2020
Messages
2
Motherboard
hp spectre
CPU
i7
Graphics
iris
is this also working with the 10th gen intel cpu? i have

13-aw0xxx
i7-1065G7 cpu
 
Joined
Mar 15, 2017
Messages
52
Motherboard
MSI H270 PC MATE
CPU
Core i7-7700K
Graphics
NVIDIA RTX2060
Mac
  1. iMac
  2. MacBook
Mobile Phone
  1. Android
  2. iOS
It seems like a new model. I do not know unless you try. However, the graphics are different, so please set the graphics using Hackintool.
 
Joined
Mar 15, 2017
Messages
52
Motherboard
MSI H270 PC MATE
CPU
Core i7-7700K
Graphics
NVIDIA RTX2060
Mac
  1. iMac
  2. MacBook
Mobile Phone
  1. Android
  2. iOS
Wow. Bluetooth works! Thank you!
Uh ... it can be connected via Bluetooth, but it doesn't seem to be able to communicate.
 
Joined
May 17, 2019
Messages
21
Motherboard
Hp x360
CPU
i7-8565u
Graphics
uhd620 (4k)
Uh ... it can be connected via Bluetooth, but it doesn't seem to be able to communicate.
I have similar laptop mine connects and works very well.
Try this make sure your computer starts from cold start (i.e. dont boot from windows using restart)--> switch off and then boot directly into macos, otherwise windows already loads the firmware.

Then try this kexts,(put both in you EFI):
 

Attachments

  • IntelBluetoothFirmware.kext
    512 bytes · Views: 43
  • IntelBluetoothInjector.kext
    512 bytes · Views: 45
Joined
May 17, 2019
Messages
21
Motherboard
Hp x360
CPU
i7-8565u
Graphics
uhd620 (4k)
This should solve siri and imessage by the way
 

Attachments

  • NullEthernet.kext
    512 bytes · Views: 52
  • NullEthernetInjector.kext
    512 bytes · Views: 44
Joined
May 17, 2019
Messages
21
Motherboard
Hp x360
CPU
i7-8565u
Graphics
uhd620 (4k)
・microSD card reader

Right now it is recognised after inserting the sdcard but can only read.
the developer is working on writing.

Hope this helps
 

Attachments

  • Sinetek-rtsx.kext
    512 bytes · Views: 45
Joined
Mar 15, 2017
Messages
52
Motherboard
MSI H270 PC MATE
CPU
Core i7-7700K
Graphics
NVIDIA RTX2060
Mac
  1. iMac
  2. MacBook
Mobile Phone
  1. Android
  2. iOS
・microSD card reader

Right now it is recognised after inserting the sdcard but can only read.
the developer is working on writing.

Hope this helps
I see those kexts broken. So I downloaded it myself and used it in EFI / Clover / kexts / Other.
But everything didn't work. iMessage is trying according to the guide. My account may be locked out.
 
Top