Hey there, I got several requests to release my ESP and show how I made my Razer Bade Stealth Mojave hackintosh, so here it is. This is not a full step-by-step guide, rather a few specific notes (and a full EFI folder) to compliment a full guide like Corp's or RehabMan's. This install aims to be as vanilla as possible, so no modifications should be needed to the actual macOS operating system files.
Disclaimer: I am not responsible if you mess up your computer with this setup. I recommend reading everything so you know what you're getting yourself into.
Here is the hardware specification of my Blade as I bought it:
Razer Blade Stealth 2018
- CPU : Intel Core i7-8550U 4C8T 1.8GHz (4.0GHz turbo)
- RAM : 16GB dual-channel LPDDR3-2133
- GPU : Intel UHD 620
- Storage : Samsung PM981 512GB NVMe M.2
- Screen : 13.3" 3200x1800 with touch
- WiFi : Killer AC1535
- Soundcard : Realtek ALC298
- Battery : 53.6 Wh
If you're familiar with hackintosh hardware compatibility, you will notice there are a few issues there. Lets look at the hardware compatibility that I've so far gotten to work:
The i7-8550U worked pretty well out of the box. I needed to add CPUFriend and a data SSDT (see SSDT-CPUF) to get it to idle below 1.20GHz (it goes down to about 0.80 now), but other than that, power management seems fine and it has plenty of power. I haven't seen it turbo up all the way, but I think thats a power limit issue. The SMCProcessor sensors kext worked out of the box for seeing CPU temperature.
All I needed to do is inject a device-id
in the GPU properties section and use lilucpu=9
as a boot arg to get full acceleration, including video decode. I can run it at the full 3200x1800 resolution (or 1600x900 HiDPI mode) and get acceleration, but it seems to flicker at that resolution. I don't use that however, I simply run at 2560x1440 using RDM which is about 125% scaling, giving me the amount of screen space I want. There is no flickering at this resolution. I even get full resolution in Clover, so the Clovy theme looks very sharp.
Here is where you may run into issues. My model (bought in November 2018) came with a Samsung PM981 SSD. This drive will not work in macOS. Older models of the computer may come with a Samsung PM961, which seems to work fine. You will need to replace the SSD with a compatible one in order to install. This is a known issue and I have not seen any solution.
Be careful about what you replace it with though. If there are components on the back of the PCB, there may not be enough clearance. I replaced mine with a Samsung 970 EVO, which has all the components on the front of the board, and a compatible controller. 960 series should also work.
The included Killer AC1535 wifi/BT card will also not work in macOS as it lacks drivers. You will need to replace it if you want wifi, or else get a USB dongle. There are a number of compatible cards that can fit into the M.2 E-key slot. A Dell DW1560 or a Lenovo 04X6020 card will fit there fine. Be careful of wider cards like the Dell DW1860, they will not fit.
Both of the cards I mentioned (I got the 04X6020) use a Broadcom BCM94352Z, which works for me using AirportBrcmFixup and BrcmBluetoothInjector for Wifi and Bluetooth respectively. I have used Airdrop fine with this card, and continuity seems to work too.
I have a very weird problem with sleep on this machine (and I have no idea how to solve it). Essentially, at this point, it can go to sleep, either from the sleep option in the Apple menu or from closing the lid. It will stay in sleep mode until I wake it by opening the lid or hitting the power button (I needed to patch out USB wake so the keyboard will not wake it). However, about 15 seconds after it wakes up, it immediately goes back to sleep. It will keep doing this over and over until I do a cold reboot, and then it will act fine. I've tried a few things like AcpiPoller and a patch to monitor the lid status, no luck there. IOElectrify was also an attempt to fix issues with the thunderbolt controller, but it did not help either. You can probably remove both of those kexts without any issue.
It's a Synaptics 1A586757 multitouch I2C trackpad, so I simply used VoodooI2C plus VoodooI2CHID with an SSDT-XOSI to enable the I2C controller. All the native multitouch gestures work great, even three finger click-and-drag. Its not quite as sensitive as my MBP trackpad, but its better than I expected on a hackintosh. Right click is a little finnicky if you don't tap with two fingers. For 10.14.5, I needed to force load a system kext for VoodooI2C to load. I'm also using an old version as the newest one has some bugs with click and drag on this trackpad.
The touchscreen worked fine out of the box for basic pointing. Additionally, when I installed the VoodooI2C drivers, I also started to get multitouch support on the touchscreen. It acts similar to the trackpad gestures, being able to switch desktops (4 finger drag) and scroll (2 finger drag).
The soundcard, according to the PCI ID, seems to be a Realtek ALC298. This is supported by AppleALC with layout ID 29, which I patched in through device properties. Both the internal speakers and headphone jack work, and switching between them is automatic.
Using just USBInjectAll and XHCI-unsupported, I had full USB capabilities out of the box on the USB 3 ports. I did decide to map the ports anyway with an SSDT-UIAC to hide the webcam and some unused ports. Delete this file if you have issues with USB. I do not own any USB-C devices to test the USB 3.1 port with.
I used the USBMap script to create the UIAC and USBX SSDTs. You may need to run it yourself to properly map USB ports if they end up being different on your system.
The laptop has an HDMI port and a DisplayPort-over-Thunderbolt 3 as display outputs. I don't have any TB3-DP converters to test that output, but I have gotten HDMI working. Like the internal display, it does flicker at high resolutions and doesn't seem to support 4K60 but it works alright for now.
Using a DSDT patch in the MaciASL patch repo named "bat - Razer Blade (2014)", and SMCBatteryManager, I was able to get battery status and precentage working. I incorporated the patched methods into an SSDT hotpatch (see SSDT-BATT). The power management works well and the battery lasts a while.
The RGB keyboard (and logo illumination) cannot be easily controlled from macOS that I know of. The Razer Synapse software for Mac doesn't support this device, and various attempts to hotpatch the Razer kexts failed for me. However, I found a project that I patched and was able to use to set a few patterns. The rz_*
apps in the extra folder are some hardcoded examples that can set the keyboard lights to different colors, and enable the Razer logo illumination. Some day I might improve on that app to make it more user friendly.
In the UEFI firmware, I needed to disable these options to get a usable system:
- Thunderbolt support (fully disabled)
- Security device support
- Network stack
- Secure boot
- Fast boot
- Launch CSM
The EFI
folder should be a minimal but complete EFI partition with Clover and all my kexts, config, and ACPI patches. On another Blade Stealth, you may be able to drop this in and get a working system, though that is not guaranteed. You should be able to take ideas from the configuration for your own build. If you use the config.plist, you will want to change your serial number, board serial, and SmUUID (can be done with this).
The SSDTs
folder has the uncompiled versions of the SSDTs that I had to create for various hotpatches.
The extra
folder contains the command-line apps I compiled to be able to change the keyboard color. See "keyboard illumination" above.
The images
folder has, among other things, the desktop I edited based on the default Razer desktop with an Apple logo. I also added the image I used to replace the system logo in About This Mac (using this guide).
Its a pretty good laptop, one might almost mistake it for a dark Macbook. I'm quite satasfied with it, though I would really like to get sleep working. If you want help you can probably find me on the Hackintosh discord: https://discord.gg/uvWNGKV - @LGA#1151
. Also, if you figure out sleep, please let me know!