Looking into the real reason OSX thinks there is a UPS attached.
Turns out it is the Corsair "Commander Pro" (or two in my case) that OSX is picking up as a UPS. I found a few articles that powerd/ioupsd look at the name "Commander Pro" (which is a name of a UPS) and thus the reason all this is happening.
pmset -g batt yields the following:
Now drawing from 'UPS Power'
-Commander PRO (id=21102592) charging present: true
-Commander PRO (id=21102593) charging present: true
I'm worried there's no real (easy) way to deal with this at the OS level. The challenge is that sleep won't work until we can get ioupsd out of the picture.
An easy way would be to hide HS12 but I'm assuming if we did that all of those devices would not be available, correct?
Lam
So a great find on
StackExchange about dealing with daemons in general gave me this!
#!/bin/sh
while sleep 999999999; do :; done
So the good news is that powerd only cares that ioupsd is running and doesn't look for specific output from it. Replacing ioupsd with the above script is working perfectly. System performance is as-expected (powerd is happy that it sees ioupsd running) and all devices are available for passthrough and control (if desired) to a Win10 VM.
Steps:
1) sudo su -
2) sudo mount -uw / (Mount the root filesystem as RW)
2) cd /usr/libexec
3) mv ioupsd ioupsd.ORIG (Rename ioupsd for safekeeping)
4) Create a new file named "ioupsd" using for favorite editor. Two lines below...that's all you need!
#!/bin/sh
while sleep 999999999; do :; done
3) Save that file
4) chmod a+x ioupsd (Do a "ls -la ioupsd" and make sure it is readable and executable for everyone)
5) Reboot (must be done to in order to re-mount the root FS as RO)
4) sudo mount -ur / (Mount the root filesystem as RO)
Positives / Issues:
* This allows any/all Corsair devices to remain attached to your system and you can pass them through (if you wish) to a Win10 VM and control everything from there
* The above method tricks the powerd daemon into thinking everything's ok with ioupsd
* You will NOT be able to use a UPS attached to the system via USB or Serial as ioupsd is effectively "missing"
* Sleep is still in issue as the Corsair components are chatty and they keep waking up the system right after it goes to sleep
Help?
Can anyone help with the right "aml" changes so the system ONLY wakes using the power button?
Hope this helps some folks
Lam