Contribute
Register

[Guide] ASUS UX360CA Sierra (10.12.5)

Status
Not open for further replies.
Joined
Feb 12, 2014
Messages
7
Motherboard
ASUS UX360CA Laptop (Clover)
CPU
m3-6Y30 (Skylake)
Graphics
Intel HD 515
Mac
  1. MacBook
If you are an owner of a UX360CA and wondering if your laptop supports macOS Sierra, I have good news for you. Though I wouldn't consider my build quite 100%, it is quite good. The UX360CA is the touchscreen variant of the UX305CA, which is good news because others have blazed the trail on the UX305CA.

Caveats (things that may make you re-think a build on this machine):
  1. Like many other laptops, you will need to replace your wifi card if you expect to use the internal card. I used a Broadcom Bcm94352z (DW1560). I got mine off of ebay. You are going to want to install this _before_ you ever start installing macOS. The reason is that hardware changes will cause you to have to redo DSDT patches.
  2. The ELAN1200 trackpad is not well supported. If you cannot bear the thought of using a mouse with your laptop, you may be disappointed. Keep in mind that the required kext is a work in progress and it may improve as time goes on.
  3. I'm not aware of a way to make the touchscreen work. Since Macs don't use touchscreens, this should be acceptable.
Side note: I did have an edimax wifi usb onhand to use while I worked on getting internal wifi working, but that is not a good long term solution. You can find out why in the pre-reading you _are_ going to do. Speaking of which...

Prerequisites
Before I start with what I did, some words of advice. Putting macOS on something other than Apple hardware is (as pointed out elsewhere in this site) not an exercise for the faint of heart. In my opinion, building your own Mac is 95% reading comprehension, given that a lot of hard work has already gone into solving whatever problems you have (unless you are one of those intrepid souls that is on the front lines... bless you folks). Anyway, the point is that when I screwed up, it seems like most of the time I simply failed to read the instructions fully or carefully. If you want this to go smooth, read first.

Required pre-reading:
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
Read this. Then read it again. Maybe a third time. There are many links that will help you (e.g., current status of Sierra compatibility). This post is a gold mine and, even after you read an digest, should be referred to often.

Multi-boot instructions
https://www.tonymacx86.com/threads/guide-multibooting-uefi.197352/
If you are using this laptop, you are multi-booting from a single SSD.
I have a triple boot system with both windows 10 and ubuntu. I followed this guide. I don't have any notes about oddities I encountered... I think it worked more or less as described. I have a single 500 GB SSD on my system (no space for a second). If you don't want a linux variant, just stop after installing windows.
I started with a fresh system, which I installed a 500 GB SSD onto. I did not have existing partitions to worry about, so I can't help you there.
Side note: I installed AmiDuos in Windows. It's an android emulator that works quite well in tablet mode. So call it a 3.5-boot system. :)

Install instructions
https://www.tonymacx86.com/threads/guide-asus-ux305ca-uhd.197229/page-26#post-1469885
This is the main link, by jjffcc. Because the UX360CA is extremely similar to the UX305CA, this will be our starting point. Make sure you heed jjffcc's advice and read the original post by chrinist. You will follow jjffcc's steps, but need to be familiar with the original method. I did not duplicate jjffcc's steps here. I am only logging things I stepped in that are different or points that I think should be highlighted.

As an aside, I far prefer jjffcc's method of keeping all hacked kexts in the clover folder (vs. installation via kext wizard). This makes it much easier for me to see what's my doing and what's not. It is also easier to get back into a known good state, since you've left S/L/E as nothing but vanilla kexts. I'm not sure if there is a negative to keeping them in clover, but if there is I haven't noticed it.

config.plist
The config.plist is borrowed and I honestly don't know if there's stuff in there that doesn't need to be. Since it works, I'm hesitant to change anything. I've posted it here just for convenience. MacBook 9,1 is the system definition you want to use (already in my config.plist).

DSDT
  1. The order of jjffcc's DSDT patching seemed to work better for me than the order from chrinist. When I used chrinist's order, several things did not work (wifi, brightness).
  2. I did not use patchmatic (as jjffcc says). I used the clover method. It seemed to work fine. You must use refs.txt as discussed in the DSDT guide. You are going to get compile errors otherwise. Start with only the mods that jjffcc makes. As 3. you make further patches for the mods below, be sure to save backups so you can return to known good configuration if necessary.

SSDTs
I compiled all in MaciASL. SSDT had a compile error in SSDT-1, so I fixed it using the info in attached difference file.

Wifi & Bluetooth
The best place to look is in the required pre-reading. I followed that. Go slowly here, otherwise you may miss something (like the fcvo fix).

Battery
My battery status did not work on my first try (using chrinist's method). When I tried again using jjffcc's mods, it worked right away. I'm assuming this has to do with the arrangement of the DSDT patches. If not, then I don't know why it worked.

Null Ethernet
https://github.com/RehabMan/OS-X-Null-Ethernet
I used this to create an en0. I used the SSDT-rmne method. Again, make sure you read everything, otherwise you will miss resetting the network interfaces.

Audio
https://www.******.com/r/hackintosh/comments/4e23w6/guide_native_audio_with_clover_applealckext/
https://github.com/vit9696/AppleALC
I liked the idea of keeping the AppleHDA kext vanilla, so I tried this method. I could not get it to work with DSDT mods and AppleALC. I noticed a reference to Lilu kext. That seems to have done the trick. Note that I used layout 3 for the DSDT edits (refer to where it talks about an inject key in the ****** link).

Brightness
I didn't check brightness for a while, but when I did it worked (I assume the DSDT mods did the trick)

Power Management
You have a skylake processor, so make sure you read about the experimental option. I used the "experimental" Skylake option that requires SSDT-PluginType1.aml as well as a config.plist patch (if you've read the laptop faq, you'll find it)

Sleep
Sleep appears to be fine about half the time. I usually have to cycle wifi on/off to make it connect again. I do have the "Wake for Network Access" option unchecked, as instructed. Also, when it "doesn't work", the screen has an intermittent flicker. Otherwise, sleep works fine (i.e., it always goes to sleep and always comes back).

SD Card reader
Works with no special steps. It might be that one of the steps I've already performed caught this.

Function keys
I saw an Asus function keys kext floating around somewhere, but am happy enough with Karabiner Elements that I didn't bother.

Trackpad
https://github.com/alexandred/VoodooI2C
I'll be honest, this one is probably not worth the effort. I had to try this one several times to get it to work. And now that it does work, I turn it off. :| If you are insistent that the trackpad must work in some regard, good luck. Here are a few things to know:
  1. You must patch DSDT for voodooi2c. Be careful here, because you also need to patch the dsdt to disable the touchscreen. Otherwise, the existence of the touchscreen on the same I2C bus causes a kernel panic on boot when you install the voodooi2c kext. I tried the ELAN1200 fork and didn't have any luck. The normal branch seems to work for me, but...
  2. It's a mouse emulator, not a trackpad. You are left without the gestures that make trackpads so handy. The ELAN 1200 doesn't even seem to have two finger scrolling, which really limits its usefulness to me. I may check back when the kext has matured more.
  3. As a mouse emulator, there is no palm detection. I quickly found out I can't type without palm detection. So I've removed voodooi2c and will roll with just a mouse.
  4. Rather than throwing the whole thing out, I created an apple script to use in automator to turn trackpad on and off using a hotkey. This is not as slick as I'd like, because for some reason the automator won't use the hotkey unless I first run the script by going to Finder->Services.

iMessage
https://www.tonymacx86.com/threads/an-idiots-guide-to-imessage.196827/
I used this for iMessage. Follow the steps very carefully and you'll be fine. Don't skip the testing steps.

Time Toggle
http://www.osx86.net/files/file/2363-localtime-toggle/
The time changing between windows and macOS is maddening. I used this.

HW Sensors
https://github.com/kozlek/HWSensors
I like HW monitor and keep my CPU temp in the menu bar (this is a fanless PC, so it's piece of mind).

Anything else
If I didn't mention it, that means I don't use it. You are on your own for HDMI audio or anything else not mentioned. I'd be happy to update this to add more.

I'm attaching my problem files here just in case some of the great people here notice anything wrong with what I've done and can correct me. I'm not necessarily looking for feedback, but I'll take whatever I can to make this a better post.

I'm also posting the config.plist I used separate from the problem files, just in case there is a UX360CA owner out there wanting to give this a try. Note that I did remove my generated serial numbers just so someone doesn't try to use them. Good luck!!!
 

Attachments

  • UX360CA Problem Files.zip
    5.4 MB · Views: 380
  • config.plist
    12.3 KB · Views: 468
Not a Desktop Guide - Moved to Laptop Guides.
 
Excellent guide, very detailed description, extremely helpful for me, a noobies ( but not newbies). I have the exact model you have. I succeed the installation part after reading the Laptop FAQ, plus your guide. Still I have not fully understand the DSDT SSDT patch yet.
How can I tell what DSDT patch I need? ( list you quota from jjffcc),
What kind of kext I can cp to clover and what kind of kext need to be installed in /s/l/e, such as voodooi2c Elanpad,(VoodooI2C.kext)
when I add this ApplePS2SmartTouchPad.kext to clover it causes KP.

Thank you very much, esp for this great guide special for UX360CA owners.
 
Last edited:
You're welcome. I'm no expert... just someone who got it to work and felt I should give back.

To answer your questions:
1. The specific DSDT patches needed are in the link just underneath "Install Instructions" in my original post. You will need all the patches that were listed. The person I linked to accidentally calls it a DDSL file, but underneath it is the list. The post by jjffcc is a variation of the original set of instructions by chrinist. You can view the original instructions by going to first post of that thread. Again, jjffcc's method worked better for me, but maybe the original post will fill in some gaps for you. It is worth the read. Note that it links to http://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/, which is a must read as well.

2. I started by leaving everything in the clover other/kexts folder. That seemed to work well until I got to the voodooi2c changes. For those, you will be required to put them in s/l/e as well as remove some related kexts (per the guide). Someone smarter than me will have to jump in to say what the pros/cons are.

3. I don't believe there is an ApplePS2SmartTouchPad.kext that is a part of what I wrote. I suspect you have an older kext that won't work with Sierra and the Elan1200 trackpad that our laptop has. I would just put that kext in the "don't use" pile. My two cents: get used to using a USB mouse for this laptop. Last I knew, the voodooi2c work (while good) had a long way to go.
 
Thanks again ( somehow my last post was filtered out, likely I broke some rules:) ( sorry, if I did) I guess,
Anyway, I tried the DSDT thing, exactly f/u your guide/jjffcc/others' writtens, I can't make it work, my right out of box OEM ACPI originally only has two minor errors, somehow I lost it and now I got 5 errors,(I2C related), no matter what I did, I can't fix it and save a new DSDT file. I'm giving up on that. ( so I guess the ACPI/DSDT changes itself over times??)

Second: I tried again and again between putting the VoodooPS2Controller.kext, VoodooI2C.kext and the other pad.kext I mentioned prior in the clover, the latter two kexts won't work, but almost, very interesting, it won't casue KP, but I can't type with internal keyboard, and with aid form ext KB, I do login and check the touch pad in system pref. still not recognizable. I believe that I'm just one step away from success. Unfortunately, this one step is beyond my ability, Therefore, I was wondering if you had any similar issues and have any insights/comments. I felt like that there is device/ID/port or whatever it shall be called, conflict between them, just like you figured out the ID 3 layout for the sound. Where I should look for. I looked the config file, can't find where there ( only says, HD graphics mouse, etc, not keyboard?
I have to make the touchpad ( even as a mouse) working before I called I did my Hacintosh Laptop, otherwise, Understand you advised me to get used to a mouse, sorry I can't tolerate that ( sorry for my stubborn), on the contrary, I would encourage you in digging it out, you are definitely way better than me in understanding computer thing ( I believe) , You will have more chances to succeed.
Cheers!
 
Last edited:
Re: DSDT mods. My suggestion is to go all the way back to the start and extract the originals using clover. I know it's tedious, but it's the best thing to do. Your DSDT definitely doesn't (or shouldn't) change over time... which is why I'd start over. (Note: if you make hardware changes, that will require doing the whole thing over again.)

Re: trackpad
It looks like the great people creating VoodooI2C are undertaking a rewrite that will bring full functionality to the trackpad in our laptop. The only problem is that you'll have to wait.
https://www.tonymacx86.com/threads/wip-voodooi2c-i2c-trackpad-limited-support.204227/
(Go to last few pages for status)

In the meantime, it looks like I forgot a piece. I had to put the voodooi2c in S/L/E (the clover folder would not work). As well, this is from reading through the voodooi2c trackpad thread above:
"Remove AppleIntelLpssI2C + AppleIntelLpssI2CController + AppleHPM from S/L/E. rebuild cache and try again"

Rebuilding cache will require a kext tool, but that was covered in the mountain of basic instructions that you read.
 
Your DSDT definitely doesn't (or shouldn't) change over time...

Absolutely incorrect.
ACPI can change whenever:
- BIOS update
- BIOS option change
- hardware change
 
Absolutely incorrect.
ACPI can change whenever:
- BIOS update
- BIOS option change
- hardware change

Yes, sorry for the lack of clarity. I was trying to say the extracted files shouldn't suddenly change. I understand the underlying DSDT certainly will (as I said HW changes will require the process to be repeated). Thanks for making that clearer.

Fierofiery - what I was trying to say is the DSDT you extracted is static as of that point of extraction. It is a snapshot of the DSDT at that point in time. The patches that you save will affect it, but the file you have won't automatically update to cover any hardware/BIOS/etc. changes you make after the fact. Hope that makes sense...
 
Thank you very much! I didn't change anything except, plug/unplug a EdiMAx USB, that gave me errors from 2 to 5, I tried to simply delete the phrase directly, but not working. ... the most I wanted is to make the trackpad working, even as a mouse ( to line in an usb mouse is really inconvenient, otherwise, (I use desktop Macs or HP wks 90% of time).
here I reproduced my issues of the two kexts I tried
Last login: Fri Sep 8 10:42:09 on console
Users-MacBook-Air:~ User$ cd "desktop"
Users-MacBook-Air:desktop User$ sudo chown -R root:wheel VoodooI2C.kext
Password:

Users-MacBook-Air:desktop User$ sudo kextutil -v VoodooI2C.kext
Defaulting to kernel file '/System/Library/Kernels/kernel'
Diagnostics for VoodooI2C.kext:
Code Signing Failure: not code signed
VoodooI2C.kext appears to be loadable (not including linkage for on-disk libraries).
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "VoodooI2C.kext"
kext signature failure override allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/Users/User/Desktop/VoodooI2C.kext"
Loading VoodooI2C.kext.
VoodooI2C.kext successfully loaded (or already loaded).

---*But not working, when I use the trackpad---*

Users-MacBook-Air:desktop User$ sudo chown -R root:wheel ApplePS2SmartTouchPad.kext
Users-MacBook-Air:desktop User$ sudo kextutil -v ApplePS2SmartTouchPad.kext
Defaulting to kernel file '/System/Library/Kernels/kernel'
Diagnostics for ApplePS2SmartTouchPad.kext:
Code Signing Failure: not code signed
ApplePS2SmartTouchPad.kext appears to be loadable (not including linkage for on-disk libraries).
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "ApplePS2SmartTouchPad.kext"
kext signature failure override allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/Users/User/Desktop/ApplePS2SmartTouchPad.kext/Contents/PlugIns/ApplePS2Controller.kext"
kext signature failure override allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/Users/User/Desktop/ApplePS2SmartTouchPad.kext/Contents/PlugIns/ApplePS2Keyboard.kext"
kext signature failure override allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext "/Users/User/Desktop/ApplePS2SmartTouchPad.kext"
Loading ApplePS2SmartTouchPad.kext.
(kernel) OSMetaClass: Kext org.emlydinesh.driver.ApplePS2Controller class ApplePS2MouseDevice is a duplicate;kext org.rehabman.voodoo.driver.PS2Controller already has a class by that name.
(kernel) Kext org.emlydinesh.driver.ApplePS2Controller start failed (result 0xdc00400a).
(kernel) Kext org.emlydinesh.driver.ApplePS2Controller failed to load (0xdc008017).
(kernel) Dependency org.emlydinesh.driver.ApplePS2Controller of kext org.emlydinesh.driver.ApplePS2SmartTouchPad failed to load.
(kernel) Can't remove kext org.emlydinesh.driver.ApplePS2Controller; services failed to terminate - 0xdc008018.
(kernel) Kext org.emlydinesh.driver.ApplePS2SmartTouchPad failed to load (0xdc008015).
(kernel) Failed to load kext org.emlydinesh.driver.ApplePS2SmartTouchPad (error 0xdc008015).
Failed to load ApplePS2SmartTouchPad.kext - (libkern/kext) dependency load failed.
Failed to load ApplePS2SmartTouchPad.kext - (libkern/kext) dependency load failed.

So any suggestions? Thank you in advance!
 

Attachments

  • DSDT.dsl
    1.1 MB · Views: 338
Status
Not open for further replies.
Back
Top