Contribute
Register

[WIP-Guide] HP ENVY x360 13-y013cl - i7-7500U Kaby Lake

jaymonkey

Moderator
Joined
Aug 27, 2011
Messages
3,839
Motherboard
ASRock-Z97 EX6
CPU
i7-4790K OC @ 4.8GHz
Graphics
Vega 64LC + HD4600
Mac
MacBook Air, MacBook Pro
Mobile Phone
Android, iOS
Ive searched and can't seem to find a direct solution to alc295 headphone jack. when I plug headphones in, sound still comes from speakers, and then after about 30-45 seconds, sound comes through headphone port but its really distorted. any help would be greatly appreciated

@Mrgeque,

It's most likely to do with your audio pin config ... however Audio HDA patching is not my area of expertise, best advice i can give you is to post the issue on the official AppleALC support thread (i'm assuming your using Lilu + AppleALC ?)


I had a similar issue with the headphone/mic combo jack on my HP spectre X360 some time ago and one of the Audio gurus there helped me get it sorted.

Cheers
Jay
 
Joined
Dec 20, 2018
Messages
370
Motherboard
Gigabyte Z370 AORUS Gaming 7
CPU
i7-8700K OC 5GHz
Graphics
GTX 1080 Ti & UHD 630
Mac
iMac, MacBook Pro
Mobile Phone
iOS
@Mrgeque,

It's most likely to do with your audio pin config ... however Audio HDA patching is not my area of expertise, best advice i can give you is to post the issue on the official AppleALC support thread (i'm assuming your using Lilu + AppleALC ?)


I had a similar issue with the headphone/mic combo jack on my HP spectre X360 some time ago and one of the Audio gurus there helped me get it sorted.

Cheers
Jay
thanks again @jaymonkey. just out of curiosity, what codec do you use, and what are you currently using to make it work. I'm going to head to the alc thread now
 

jaymonkey

Moderator
Joined
Aug 27, 2011
Messages
3,839
Motherboard
ASRock-Z97 EX6
CPU
i7-4790K OC @ 4.8GHz
Graphics
Vega 64LC + HD4600
Mac
MacBook Air, MacBook Pro
Mobile Phone
Android, iOS
Just out of curiosity, what codec do you use, and what are you currently using to make it work. I'm going to head to the alc thread now

@Mrgeque,

My HP Spectre X360 laptop has a ALC295 Codec ... am using AppleALC with Layout 3 .... headphones work great when plugged in and speakers shut off, the only issue is the external mic does not work but its a common issue with combo jacks (3.5mm 4 pin).

But as i said some laptop have a different pin config, you'll probably need to do a codec dump in linux, then copy the pin config from the codec dump into pin configurator, fix the errors (pin configurator has a button for that) and the substitute your custom pin config to the one in the layout your using.

If you want to have a go yourself i used this guide :-


it's in german but if you use chrome browser does a decent enough translation, you just need to do the codec dump as detailed in Step 1 and then do Step 3 for the pin config, you then take the exported pin config data from pin configurator and replace the pin config data in the info.plist inside AppleALC for the codec/layout your using.

It sounds complicated but its actually pretty straight forward once you've done it a few times.

Cheers
Jay
 
Last edited:
Joined
Dec 20, 2018
Messages
370
Motherboard
Gigabyte Z370 AORUS Gaming 7
CPU
i7-8700K OC 5GHz
Graphics
GTX 1080 Ti & UHD 630
Mac
iMac, MacBook Pro
Mobile Phone
iOS
Hi Guys,

An update on WiFi & BT experiments ...

As i already posted i swapped out the intel WiFi/bT card in my 2017 15" HP Spectre X360 for BCM94352Z ... WiFi in OSX and linux worked perfect but in windows 10 the laptop would lock up as soon as i attempted to connect to a network .. it seems to be a very common issue with this card and windows 10 ...

Searching the internet results in lots of suggestions (mainly trying different driver versions) but after several attempts and god knows how many different driver versions .. i've given up trying to get the BCM94352Z card working in windows ... and yes i did try another BCM94352Z card but it resulted in the same issues.

So I dug deeper into the issue, after examining the ini install files it became clear that the driver is actually a repackaged BCM95342 mini PCIe Windows 7 driver and is not specific to the M.2 BCM95342Z version of the card or Windows 10. Examining the Windows event logs showed that the driver file bcmwl63a.sys was crashing when ever a badly timed interrupt occurred, I confirmed this using an oscilloscope on the interrupt line ... needless to say this is not good.

Additionally as i reported in the same post (and by others elsewhere) the BT USB device on the BCM94352Z would not always initialise correctly during POST resulting in it not being seen in windows or osx ... it was possible to get it to work but required a random number of reboots/sleep/wakes ... once it was seen by osx it worked fine ... even after sleep/wake ... but for me the BCM94352Z has not been an ideal solution especially with the windows wifi issues.

So time to look for a different solution ...

Despite warnings about it not being suitable for Lenovo and HP laptops I bought a Dell DW1830 on ebay for $25 ... this card has a BCM43602 PCI WiFi chipset and a BCM20450 USB bluetooth controller ... both of these chipsets (a variant of) are used on genuine Apple WiFi/BT cards so it should be much compatible if i can get it t work. Since this card is a 3x3 MIMO and supports three antenna's and the Spectre only has two i also purchased a suitable MHF-4 antenna ...

Its very important that if you install a wifi card that has more antenna connections than your system has physically that you install additional antenna's even if you can not locate the new antenna's in the same location as the original ones. Running a wifi card without all antennas connected could result in you burning out the radio transmitter on the card due to not enough load being placed and the transmitters radio amplifier thus causing it to run hot.

In my case i was unable to install an additional antenna in the laptops lid as the screen is bonded and i did not want to go through the potentially dangerous procedure of un-bonding and re-bonding the screen. The 15" X360 has some air inlet grills either side of the keyboard so i mounted mine in that area. Its not a perfect location as only a small amount of the antenna is able to access free air and thus effects its ability to pull in a signal but its better than nothing and ensures that the radio on the wifi card will not burn out.

Once the card and antenna was delivered i installed them in the X360, powered up and was disappointed to see that the WiFi (pci) part of the card was not detected in any OS (Windows/OSX/Linux) ....

Then i remembered an old trick some users have to do with the BCM94352Z so i masked pins 56 & 54 (BT & WiFi disable lines) .. and tried again ... booting into windows and checking device manager showed that the card was now detected so I went ahead and installed the latest Dell DW1830 WiFi and BT drivers, both installed fine and the card came on-line with no crashes or lock ups ... I gave it a good test for an hour or so and all was good.

Note: the DW1830 is missing pin 50 unlike the BCM94352Z so its a group of three pins not four as shown in the linked guide.

Reading up on the DW1830 on this site seems to state that it should work OOB .... so i booted into OSX (10.12.6) in safe mode and removed all the fixes for the BCM94352Z (fakepciXXX, BCMpatchram, clover patches .. etc) and rebooted ..

Sure enough WiFI was detected (both 2.4Ghz & 5Ghz) and i was able to connect to my 5Ghz wireless network ... all be it at a slower speed of 450mbs compared to the 878Mbs i got with the BCM94352Z ... also no BT.

So I reinstalled BCMPatchRam2 & the repo kexts ... rebooted and BT was detected and working. Having now tested BT extensively i can say that this is the best BT support i've seen in a hackingtosh ... the BCM20450 BT controller supports LMP4.1 which is natively supported by OSX 10.12.XX .. i've seen no problems so far with handoff or airdrop.

Checking sys info showed that the WiFi card was being identified as 3rd party ... i checked the info.plist in RehabMans FakePCIID_Broadcom_WiFi.kext which indeed showed that it supports my cards id's (14E4/43BA) so i reinstalled it along with FakePCIID.kext .. once the kext cache sorted itself out the card was identified as Apple AirPort Extreme (0x14E4, 0x24)

The speed cap of 450Mbs indicated to me that that the card was probably only running in the 20/40 frequency band and not using the full 20/40/80 range of the card .. I've seen this issue before with my old Sony Vaio Hackingtosh which was resolved by changing the county code to '#a' (see the airport guide) so i applied the patch via Clover and rebooted.

As suspected it worked and my WiFi speed was back to 878Mbs, so now everything was working great in Windows and OSX and it was time to attack Linux.

Booting into Linux (I use Mint 18) the BT was detected straight away .. however it took some digging to get the WiFI working, it turned out the bcm firmware for the DW1830 in my kernel version (4.8) did not support the 14E4/43BA device. The solution was to to update the file brcmfmac43602-pcie.bin in /lib/firmware/brcm with this version and reboot, the new card was detected immediately by the brcmfmac framework and the correct kernel driver automatically loaded without any further intervention.

Summary:

All in all swapping out the BCM94352Z for the DW1830 has been a big step forward for me ... I now have working WiFi (2.4Ghz & 5Ghz 802.11 AC) and BT4.1 in all OS's and i can now put WiFi and BT to bed.

In my opinion the DW1830 ( BCM43602 / BCM20450 combo) is a far superior card to the BCM94352Z ... this might not be true for all cases and will depend largely on if you can get your desktop/laptop to see the card on the PCI bus, but if it does you will see much better WiFi performance and far more stable BT support in any OS.

If your already running a BCM94352Z that is installed correctly you should only need to disable the 'fvco' and BT handoff Clover patches, if your not getting full 5Ghz AC WiFi speeds use the #a country code patch.

Just thought i'd share what i've leant so far with this card.

Cheers
Jay

Update-1: Since posting the above i've now noticed WiFi issues after sleep, please see this thread for more info and workaround.

Update-2: After updating to High Sierra 10.13.6 i had a few issues with Hand Off & Continuity ... turns out this is a known issue as the Clover Continuity binary patch method no longer works in 10.13.6. The Solution that worked for me was as follows:-

1. Remove FakePCIID_Broadcom_WiFi.kext ( also FakePCIID.kext if not using any other of Rehabman's FakeXXXX.kexts)
2. Install AirportBrcmFixup.kext (also requires latest Lilu.kext if not already installed)
3. Remove All Clover WiFi & BT Patches from config.plist
4. Ensure you have BrcmPatchRAM2.kext and BrcmFirmwareRepo.kext kext Installed

As an added bonus using this method I no longer have the issue with poor WiFi bit-rates after Sleep/Wake so no need for the workaround detailed in Update-1. I believe that the AirportBrcmFixup kext does a much better and more complete card initialisation with the DW1830 than other methods as well as patching MacOS.

Note: All Kext's should be installed in /L/E for MacOS 10.12.X and above, see this guide for more info :-


Update-3: As reported by @sparc1234 in this post, it seems that disabling "Wake On Magic Packet" and "Wake on Pattern Match" can resolve the badly timed interrupt that I reported above and stop Windows 10 from crashing when using a DW1560 combo card.

Update-4: If you have issues with Handoff and/or Continuity then install BT4LEContinuityFixup which is another Lilu plugin, for more info on Lilu, AirportBrcmFixup and BT4LEContinuityFixup see this guide :-

is it still necessary to mask pin 54 and 55 on dw1830?
Ok, I gave up using DW1820a. I finally ordered a DW1830 and everything is working like a charme. Although the card has one additional pin for a third antenna I got bluetooth working and also wifi is working without any issues so far. Wifi is working OOB without any kext. Only for Bluetooth the following three recent kexts are needed (in efi/clover/kexts/other)

BrcmBluetoothInjector.kext
BrcmFirmwareData.kext
BrcmPatchRAM2.kext
or are there different variations one of which needs masking (of 54 and 55 pin) and one doesn't?
 

jaymonkey

Moderator
Joined
Aug 27, 2011
Messages
3,839
Motherboard
ASRock-Z97 EX6
CPU
i7-4790K OC @ 4.8GHz
Graphics
Vega 64LC + HD4600
Mac
MacBook Air, MacBook Pro
Mobile Phone
Android, iOS
is it still necessary to mask pin 54 and 55 on dw1830 ..or are there different variations one of which needs masking (of 54 and 55 pin) and one doesn't?

@Mrgeque,

If after installing the DW1830 in a laptop the WiFi device does not show up on the PCIe bus (Use Hackintool PCI tool) then masking those pins should enable the card to power up and show on the PCIe bus.

The requirement of if you need to mask the pins (or not) is laptop (and possibly BIOS) dependant.

I have to have the tape the pins for a DW1830 to work on my 2017 HP Spectre X360 laptop.

Cheers
Jay
 
Joined
Dec 20, 2018
Messages
370
Motherboard
Gigabyte Z370 AORUS Gaming 7
CPU
i7-8700K OC 5GHz
Graphics
GTX 1080 Ti & UHD 630
Mac
iMac, MacBook Pro
Mobile Phone
iOS
Hi Guys,

An update on WiFi & BT experiments ...

As i already posted i swapped out the intel WiFi/bT card in my 2017 15" HP Spectre X360 for BCM94352Z ... WiFi in OSX and linux worked perfect but in windows 10 the laptop would lock up as soon as i attempted to connect to a network .. it seems to be a very common issue with this card and windows 10 ...

Searching the internet results in lots of suggestions (mainly trying different driver versions) but after several attempts and god knows how many different driver versions .. i've given up trying to get the BCM94352Z card working in windows ... and yes i did try another BCM94352Z card but it resulted in the same issues.

So I dug deeper into the issue, after examining the ini install files it became clear that the driver is actually a repackaged BCM95342 mini PCIe Windows 7 driver and is not specific to the M.2 BCM95342Z version of the card or Windows 10. Examining the Windows event logs showed that the driver file bcmwl63a.sys was crashing when ever a badly timed interrupt occurred, I confirmed this using an oscilloscope on the interrupt line ... needless to say this is not good.

Additionally as i reported in the same post (and by others elsewhere) the BT USB device on the BCM94352Z would not always initialise correctly during POST resulting in it not being seen in windows or osx ... it was possible to get it to work but required a random number of reboots/sleep/wakes ... once it was seen by osx it worked fine ... even after sleep/wake ... but for me the BCM94352Z has not been an ideal solution especially with the windows wifi issues.

So time to look for a different solution ...

Despite warnings about it not being suitable for Lenovo and HP laptops I bought a Dell DW1830 on ebay for $25 ... this card has a BCM43602 PCI WiFi chipset and a BCM20450 USB bluetooth controller ... both of these chipsets (a variant of) are used on genuine Apple WiFi/BT cards so it should be much compatible if i can get it t work. Since this card is a 3x3 MIMO and supports three antenna's and the Spectre only has two i also purchased a suitable MHF-4 antenna ...

Its very important that if you install a wifi card that has more antenna connections than your system has physically that you install additional antenna's even if you can not locate the new antenna's in the same location as the original ones. Running a wifi card without all antennas connected could result in you burning out the radio transmitter on the card due to not enough load being placed and the transmitters radio amplifier thus causing it to run hot.

In my case i was unable to install an additional antenna in the laptops lid as the screen is bonded and i did not want to go through the potentially dangerous procedure of un-bonding and re-bonding the screen. The 15" X360 has some air inlet grills either side of the keyboard so i mounted mine in that area. Its not a perfect location as only a small amount of the antenna is able to access free air and thus effects its ability to pull in a signal but its better than nothing and ensures that the radio on the wifi card will not burn out.

Once the card and antenna was delivered i installed them in the X360, powered up and was disappointed to see that the WiFi (pci) part of the card was not detected in any OS (Windows/OSX/Linux) ....

Then i remembered an old trick some users have to do with the BCM94352Z so i masked pins 56 & 54 (BT & WiFi disable lines) .. and tried again ... booting into windows and checking device manager showed that the card was now detected so I went ahead and installed the latest Dell DW1830 WiFi and BT drivers, both installed fine and the card came on-line with no crashes or lock ups ... I gave it a good test for an hour or so and all was good.

Note: the DW1830 is missing pin 50 unlike the BCM94352Z so its a group of three pins not four as shown in the linked guide.

Reading up on the DW1830 on this site seems to state that it should work OOB .... so i booted into OSX (10.12.6) in safe mode and removed all the fixes for the BCM94352Z (fakepciXXX, BCMpatchram, clover patches .. etc) and rebooted ..

Sure enough WiFI was detected (both 2.4Ghz & 5Ghz) and i was able to connect to my 5Ghz wireless network ... all be it at a slower speed of 450mbs compared to the 878Mbs i got with the BCM94352Z ... also no BT.

So I reinstalled BCMPatchRam2 & the repo kexts ... rebooted and BT was detected and working. Having now tested BT extensively i can say that this is the best BT support i've seen in a hackingtosh ... the BCM20450 BT controller supports LMP4.1 which is natively supported by OSX 10.12.XX .. i've seen no problems so far with handoff or airdrop.

Checking sys info showed that the WiFi card was being identified as 3rd party ... i checked the info.plist in RehabMans FakePCIID_Broadcom_WiFi.kext which indeed showed that it supports my cards id's (14E4/43BA) so i reinstalled it along with FakePCIID.kext .. once the kext cache sorted itself out the card was identified as Apple AirPort Extreme (0x14E4, 0x24)

The speed cap of 450Mbs indicated to me that that the card was probably only running in the 20/40 frequency band and not using the full 20/40/80 range of the card .. I've seen this issue before with my old Sony Vaio Hackingtosh which was resolved by changing the county code to '#a' (see the airport guide) so i applied the patch via Clover and rebooted.

As suspected it worked and my WiFi speed was back to 878Mbs, so now everything was working great in Windows and OSX and it was time to attack Linux.

Booting into Linux (I use Mint 18) the BT was detected straight away .. however it took some digging to get the WiFI working, it turned out the bcm firmware for the DW1830 in my kernel version (4.8) did not support the 14E4/43BA device. The solution was to to update the file brcmfmac43602-pcie.bin in /lib/firmware/brcm with this version and reboot, the new card was detected immediately by the brcmfmac framework and the correct kernel driver automatically loaded without any further intervention.

Summary:

All in all swapping out the BCM94352Z for the DW1830 has been a big step forward for me ... I now have working WiFi (2.4Ghz & 5Ghz 802.11 AC) and BT4.1 in all OS's and i can now put WiFi and BT to bed.

In my opinion the DW1830 ( BCM43602 / BCM20450 combo) is a far superior card to the BCM94352Z ... this might not be true for all cases and will depend largely on if you can get your desktop/laptop to see the card on the PCI bus, but if it does you will see much better WiFi performance and far more stable BT support in any OS.

If your already running a BCM94352Z that is installed correctly you should only need to disable the 'fvco' and BT handoff Clover patches, if your not getting full 5Ghz AC WiFi speeds use the #a country code patch.

Just thought i'd share what i've leant so far with this card.

Cheers
Jay

Update-1: Since posting the above i've now noticed WiFi issues after sleep, please see this thread for more info and workaround.

Update-2: After updating to High Sierra 10.13.6 i had a few issues with Hand Off & Continuity ... turns out this is a known issue as the Clover Continuity binary patch method no longer works in 10.13.6. The Solution that worked for me was as follows:-

1. Remove FakePCIID_Broadcom_WiFi.kext ( also FakePCIID.kext if not using any other of Rehabman's FakeXXXX.kexts)
2. Install AirportBrcmFixup.kext (also requires latest Lilu.kext if not already installed)
3. Remove All Clover WiFi & BT Patches from config.plist
4. Ensure you have BrcmPatchRAM2.kext and BrcmFirmwareRepo.kext kext Installed

As an added bonus using this method I no longer have the issue with poor WiFi bit-rates after Sleep/Wake so no need for the workaround detailed in Update-1. I believe that the AirportBrcmFixup kext does a much better and more complete card initialisation with the DW1830 than other methods as well as patching MacOS.

Note: All Kext's should be installed in /L/E for MacOS 10.12.X and above, see this guide for more info :-


Update-3: As reported by @sparc1234 in this post, it seems that disabling "Wake On Magic Packet" and "Wake on Pattern Match" can resolve the badly timed interrupt that I reported above and stop Windows 10 from crashing when using a DW1560 combo card.

Update-4: If you have issues with Handoff and/or Continuity then install BT4LEContinuityFixup which is another Lilu plugin, for more info on Lilu, AirportBrcmFixup and BT4LEContinuityFixup see this guide :-

I'm facing a problem with my dw1830. when I reboot, the bluetooth chipset keeps changing. is there a fix for this?
is there a way to set device properties in config.plist to make bcm920703 instead of bcm2045a0? my bluetooth headphones and other devices only work when bcm920703 is the device description. please lend me a hand my good friend @jaymonkey
 

Attachments

Last edited:

jaymonkey

Moderator
Joined
Aug 27, 2011
Messages
3,839
Motherboard
ASRock-Z97 EX6
CPU
i7-4790K OC @ 4.8GHz
Graphics
Vega 64LC + HD4600
Mac
MacBook Air, MacBook Pro
Mobile Phone
Android, iOS
I'm facing a problem with my dw1830. when I reboot, the bluetooth chipset keeps changing. is there a fix for this? is there a way to set device properties in config.plist to make bcm920703 instead of bcm2045a0? my bluetooth headphones and other devices only work when bcm920703 is the device description.

@Mrgeque,

Hummm ... I've never seen nor heard of that issue before, very strange ...

Looking at your Hackintool screenshots about the only thing I can see that is wrong is that the Bluetooth device should have a USB connector type of "Internal".

It should look like this in Hackintool :-

Screenshot 2019-09-13 at 14.10.16.png

And be defined like this if you use SSDT-UIAC.aml to define your USB ports :-

Screenshot 2019-09-13 at 14.11.36.png

Or like this if you use USBPorts.kext :-

Screenshot 2019-09-13 at 14.21.46.png

I assume that you have both BrcmPatchRAM2.kext and BrcmFirmwareRepo.kext installed in /L/E ?
If not then read the documentation on those kexts here :-


You can download the kexts via this direct link.

Thats about all I can suggest ...

Cheers
Jay
 
Joined
Dec 20, 2018
Messages
370
Motherboard
Gigabyte Z370 AORUS Gaming 7
CPU
i7-8700K OC 5GHz
Graphics
GTX 1080 Ti & UHD 630
Mac
iMac, MacBook Pro
Mobile Phone
iOS
@Mrgeque,

Hummm ... I've never seen nor heard of that issue before, very strange ...

Looking at your Hackintool screenshots about the only thing I can see that is wrong is that the Bluetooth device should have a USB connector type of "Internal".

It should look like this in Hackintool :-

View attachment 425710
And be defined like this if you use SSDT-UIAC.aml to define your USB ports :-

View attachment 425711
Or like this if you use USBPorts.kext :-

View attachment 425713
I assume that you have both BrcmPatchRAM2.kext and BrcmFirmwareRepo.kext installed in /L/E ?
If not then read the documentation on those kexts here :-


You can download the kexts via this direct link.

Thats about all I can suggest ...

Cheers
Jay
thanks for the reply. I am using the kext above as outlined in your dw1830 guide. this is really odd. was wondering if there was a way to define the bluetooth controller in clover?
 

jaymonkey

Moderator
Joined
Aug 27, 2011
Messages
3,839
Motherboard
ASRock-Z97 EX6
CPU
i7-4790K OC @ 4.8GHz
Graphics
Vega 64LC + HD4600
Mac
MacBook Air, MacBook Pro
Mobile Phone
Android, iOS
@Mrgeque,

You must define and configure your USB ports correctly as I explained in above post.
You can either generate USBports.kext port injector using Hackintool :-


Or use @rehabmans method (which is what i use) :-


Which ever method you use you must configure HS07 (the port for the Bluetooth Device) as "Internal"

Cheers
Jay
 
Joined
Dec 20, 2018
Messages
370
Motherboard
Gigabyte Z370 AORUS Gaming 7
CPU
i7-8700K OC 5GHz
Graphics
GTX 1080 Ti & UHD 630
Mac
iMac, MacBook Pro
Mobile Phone
iOS
@Mrgeque,

You must define and configure your USB ports correctly as I explained in above post.
You can either generate USBports.kext port injector using Hackintool :-


Or use @rehabmans method (which is what i use) :-


Which ever method you use you must configure HS07 (the port for the Bluetooth Device) as "Internal"

Cheers
Jay
I have done all the above mentioned. HS07 is set to internal. I looked in my bios settings and my controller for the bluetooth is bcm2045a0. but SOMETIMES when I restart the controller shows up as the other 207031a. even in the system report. I was trying to see if there was a way to make the device spoof as the CORRECT controller that is shown in my bios. but I guess I just have to deal for now. thanks for your help
 
Top