Sunday, February 12, 2017
Hackintosh complete!
Hackintosh complete!
As I mentioned planning on doing to my netbook in a previous post, a few weeks ago I tore apart my perfectly good netbook and cut some holes in the case -- fruit shaped holes that is! I really wish I would have taken pictures throughout the process of putting the Apple inlay into my netbook lid, but I was too excited about doing it to be bothered to stop and get the camera out. The same basic procedure was documented here.
Here is a picture of the finished product.
I didnt have to fiddle around with cutting any plastic away from the actual screen like they mentioned in that other blog, just the obligatory dremel work. Since the lid to the old iBook I bought on ebay to snag the Apple inlay out of was made of aluminum, it actually made a good routing template. Id be lying if I said it came out perfect though, there were some tiny gaps in some places. The biggest problem though was the fact that the apple inlay I got was very shallow (its maybe 3/16" thick at most) so it sits a little bit inset on the lid. At first I was not considering sanding the lid down to make it flush because it would make the netbook a little less rigid. Because I didnt plan on sanding from the get go, I opted not to center the apple logo on the lid, instead putting it just above center where the original ASUS inlay was. In the end though, the fact that part of the original ASUS inlay is still visible got to me and I took my orbital sander to it. Now the apple sits nice and flush with the rest of the case and no more remnants of the debossed ASUS logo. All in all, it only took about 15 minutes of sanding and yes, the top of the lid is somewhat more flexible than it previously was, but not terribly so. After I sanded it down, I cleaned it thoroughly to get all the dust off and then I filled the tiny gaps between the apple inlay and the case with super glue. Then once the super glue had dried, I sanded the some more until everything was flush again. Now I just need to get some fine grit sand paper and make the case smooth again and possibly put a few coats of clear acrylic on it. However my past experience with acryllic is that it takes a very long time to become fully hardened, so maybe water sanding and then polishing the shell with rubbing/polishing compound may be a better choice. I am considering leaving the surface matte in order to prefent some of the scuffs and dings that a laptop may incur.
Available link for download
Friday, January 13, 2017
How to fix bluetooth after sleep on a hackintosh
How to fix bluetooth after sleep on a hackintosh
In my experience, bluetooth typically just works out of the box on OSX. But my most recent hack, a Lenovo Thinkpad W700DS (which would be the coolest thing since sliced bread if it didnt weigh 20 pounds), had a problem where the bluetooth would die after putting the computer to sleep and then the only way I could "switch" it back on would be to reboot into Linux and reenable the card. Obviously, this is less than optimal so I decided to figure out what it would take to fix it.
Like most things hackintosh, a simple device and vendor ID injection into the proper kext would suffice, but as the bluetooth is not a PCI device there were extra hoops to jump through. My bluetooth card is a Lenovo ThinkPad Bluetooth with EDR II, (Broadcom 2145 chipset).
the PCI ID is 0x21450A5C where the part in red is the hexadecimal device ID and the blue being the vendor ID.
But upon investigating the system .kexts, (in my case /System/Library/Extensions/IOBluetoothFamily.kext/Contents/Plugins/BroadcomBluetoothTransportHostControllerUSBTransport.kext) I discovered that (like most USB devices) they dont use hexadecimal IDs, but rather decimal IDs.
So going back to my programming classes I took back in college, I knew Id have to convert from hexadecimal to decimal format. If you cant figure it out or dont know how to do it on a calculator, you could always use an online converter like this http://www.binaryhexconverter.com/hex-to-decimal-converter
0x2145 = 8517
0x0A5C = 2652
With my decimal values now in hand, I crack open the broadcom kext
sudo nano /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/Contents/Info.plist
and add a section like this at the bottom of the array
<key>BroadcomUSBBluetoothHCIController - Lenovo</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport</string>
<key>IOClass</key>
<string>BroadcomBluetoothHostControllerUSBTransport</string>
<key>IOProviderClass</key>
<string>IOUSBDevice</string>
<key>idProduct</key>
<integer>8517</integer>
<key>idVendor</key>
<integer>2652</integer>
</dict>
Oh, and if you are on Yosemite, you definitely need to be booting with kext-dev-mode=1. Modifying the kext will make it unloadable without kext-dev-mode=1 even if you re codesign it.
Available link for download