Jump to content

VirtualSMC — SMC Emulator


vit9696
760 posts in this topic

Recommended Posts

Hello,

 

Since VirtualSMC 1.0.7 came out my Catalina hack boots to black screen. I can login via ssh but VirtualSMC has not loaded. Version 1.0.6 is fine.

 

Any suggestions how to debug this. EFI attached

EFI-Clover.zip

 

Catalina - GIGABYTE H270N-WIFI Skylake  i5-6500/3.2 GHz Ballistix Sport LT 8GB DDR4 RX580

Mojave Z370N WIFI | i3 8100 | HD 630

Edited by scrabbler1234
Link to comment
Share on other sites

  • 2 weeks later...
On 9/6/2019 at 12:39 AM, Wppley2 said:

Hi all! I'm giving a new try to VirtualSMC, but I'm getting black screen after boot with finishing with kextd stall (60s) "APPLEACPICPU" message. Anybody can help me? Thanks in advance.

Do not try version 1.06 and 1.07 as they have major breaking bugs and no one is paying attention to fix them, fall back to version 1.05 and it will work but even then SMCLightSensor.kext and SMCSuperIo.kext did not work for me and I had to remove those two, very buggy this whole VirtualSMC releases, fakeSMC was perfect but I needed AsusSMC and it required VirtualSMC, that is a bad decision on AsusSMC guys indeed!

Also pay attention not to use ACPIBatteryManager with virtualSMC and use virtualsmc.efi and not smchelper.efi in drivers.

 
 
 
 
2
On 9/16/2019 at 10:50 PM, scrabbler1234 said:

 

Since VirtualSMC 1.0.7 came out my Catalina hack boots to black screen. I can login via ssh but VirtualSMC has not loaded. Version 1.0.6 is fine.

 

Same answer as above, version 1.07 is broken and buggy as hell!

Edited by evilak
Link to comment
Share on other sites

15 minutes ago, evilak said:

Do not try version 1.06 and 1.07 as they have major breaking bugs and no one is paying attention to fix them, fall back to version 1.05 and it will work but even then SMCLightSensor.kext and SMCSuperIo.kext did not work for me and I had to remove those two, very buggy this whole VirtualSMC releases, fakeSMC was perfect but I needed AsusSMC and it required VirtualSMC, that is a bad decision on AsusSMC guys indeed!

Finally, I was able to get VirtualSMC working, on my setup, by compiling myself from source, rather than using the prebuilt ones.

Edited by Wppley2
  • Like 1
Link to comment
Share on other sites

17 hours ago, mnfesq said:

I compiled version 1.08 using @headkaze's Hackintool.  After installing it in Clover/kexts/other, I couldn't boot.  No "DSMOS has arrived."  Everything else seemed to have loaded including graphics drivers.

As I said before fall back to version 1.05 and it will work, but funny thing is activity on issues like this is nearly zero which is sad

Link to comment
Share on other sites

@evilak To get ALS and keyboard backlight working, we need to simulate SMC keys, which can be done only with VirtualSMC. It also seems that you're using both SMCLightSensor and AsusSMC. AsusSMC does everything SMCLightSensor does, so please only use AsusSMC.

 

@vit9696 I'm trying to add support for Catalina to AsusSMC. Basically, everything works except keyboard backlight. On Mojave, simulating LKSS and LKSB is enough to get it working, but it seems that Catalina add some more check.

 

I really don't know what to do now. Can you give me some advice?

Link to comment
Share on other sites

7 hours ago, baohiep said:

@evilak To get ALS and keyboard backlight working, we need to simulate SMC keys, which can be done only with VirtualSMC. It also seems that you're using both SMCLightSensor and AsusSMC. AsusSMC does everything SMCLightSensor does, so please only use AsusSMC.

 

@vit9696 I'm trying to add support for Catalina to AsusSMC. Basically, everything works except keyboard backlight. On Mojave, simulating LKSS and LKSB is enough to get it working, but it seems that Catalina add some more check.

 

I really don't know what to do now. Can you give me some advice?

Needs investigating, currently I do not have anything to help you.

  • Like 1
Link to comment
Share on other sites

@vit9696, I'm using latest version of virtualsmc with catalina, and there is a log when booting the system:

 

Quote

(kernel) VirtualSMC:   efend @ failed to find valid status (800000000000000E, 8), VirtualSMC EFI module is broken

 

is this ok or something has changed with catalina caused virtualsmc of this log?

 

I don't have this log with same version on mojave.

Link to comment
Share on other sites

Hi everyone. After upgrading to 10.15 public release, System stuck at end of lading screen with a cursor. I was using VirtualSMC with VoodooPS2 (Acidanthera's) in 10.14.6 without error. After upgrade,I can't get to login screen.While I can change brightness, login remotely. I tested a lot and I marked a strange behaviour between VirtualSMC and PS2 driver.

Without PS2 driver, I can use any version of virtualSMC.

 

OS 10.15 - VirtualSMC (V 1.0 - V 1.8) + Without VoodooPS2  : Works fine

OS 10.15 - VirtualSMC (V 1.0 - V 1.8) + VoodooPS2 (rehabman's) : Kernel Panic

OS 10.15 - VirtualSMC (V 1.0 - V 1.3) + VoodooPS2 (Acidanthera's) : No error

OS 10.15 - VirtualSMC (V 1.4 - V 1.8) + VoodooPS2 (Acidanthera's) black login screen with a mouse as I said earlier 

OS 10.15 - FakeSMC  + VoodooPS2 (BOTH Developers) : No Error

 

I have read about the issue of sharing same bus with battery plugin. So I was using only SMC kext without plugins. 

Link to comment
Share on other sites

i want to report battery info to usrsse2. but i can't wrote in russia forum.

here is my report.

 

acpibattery info of rehabman

469362429_ScreenShot2019-10-13at2_18_10PM.png.3c9bb7be45f9d0cebb1689825b0ad564.png

 

virtualsmc smcbattery info

368288283_ScreenShot2019-10-13at2_14_13PM.png.328816818a3d38309ea47d6c5fd745b7.png

 

i checked virtualsmc smcbattery close to macbook batter information.

and now acpibattery kext has battery percentage issue when plugin ac connect(always 100% and after about 30secs, get correct battery info)

so i determine virtualsmc smcbattery.

 

virtual smcbattery, battery cycle count always 0.

i don't know why. acpibattery always shown correct cycle count.

so i think this line need more consider.

https://github.com/acidanthera/VirtualSMC/blob/master/Sensors/SMCBatteryManager/ACPIBattery.cpp#L88

 

https://github.com/RehabMan/OS-X-ACPI-Battery-Driver/blob/master/AppleSmartBatteryManager/AppleSmartBattery.cpp#L1290

 

here is kernel log

VirtualSMCBattery.zip

ACPIBattery.zip

 

thanks in advance

 

 

EDIT1.

i checked battery info in windows

1331121376_.thumb.PNG.6a5b4de3cfe2c5d5c40297e4200ced5a.PNG

 

cycle is 0.

 

and windows battery report

배터리:배터리 정보
 
배터리 ID(BATTERY ID) 1787 LG LGC-LGC
제조업체(MANUFACTURE) LG
일련 번호(SERIAL) 1787
화학적 구성 성분 LION
대용량 1
설계 용량 34610
마지막 완전 충전 34570

 

 

seems virtaulsmc smcbattery more correct than acpibattery.

 

 

EDIT2.

seems Virtualsmc smcbattery capacity is wrong

 

in windows, battery capacity is about 34610 mWh.

https://convert-formula.com/mwh-mah

1563335617_2019-10-132_58_29.thumb.png.7c33c7dd1ca9609817c5d43029e3d810.png

1376631236_2019-10-132_59_14.png.9930ce8f78cdee29b75f9260c3f4f179.png

 

capacity is about 4400~4500. 

Edited by Sherlocks
  • Like 1
Link to comment
Share on other sites

11 hours ago, soumaxetuirk said:

Hi everyone. After upgrading to 10.15 public release, System stuck at end of lading screen with a cursor. I was using VirtualSMC with VoodooPS2 (Acidanthera's) in 10.14.6 without error. After upgrade,I can't get to login screen.While I can change brightness, login remotely. I tested a lot and I marked a strange behaviour between VirtualSMC and PS2 driver.

Without PS2 driver, I can use any version of virtualSMC.

 

OS 10.15 - VirtualSMC (V 1.0 - V 1.8) + Without VoodooPS2  : Works fine

OS 10.15 - VirtualSMC (V 1.0 - V 1.8) + VoodooPS2 (rehabman's) : Kernel Panic

OS 10.15 - VirtualSMC (V 1.0 - V 1.3) + VoodooPS2 (Acidanthera's) : No error

OS 10.15 - VirtualSMC (V 1.4 - V 1.8) + VoodooPS2 (Acidanthera's) black login screen with a mouse as I said earlier 

OS 10.15 - FakeSMC  + VoodooPS2 (BOTH Developers) : No Error

 

I have read about the issue of sharing same bus with battery plugin. So I was using only SMC kext without plugins. 

That's quite strange, what Lilu versions were involved during the testing? Also, does VirtualSMC 1.0.8 with our VoodooPS2 work with vsmcgen=1 boot argument added?

Link to comment
Share on other sites

On 10/13/2019 at 8:30 AM, Sherlocks said:

i want to report battery info to usrsse2. but i can't wrote in russia forum.

here is my report.

 

acpibattery info of rehabman

469362429_ScreenShot2019-10-13at2_18_10PM.png.3c9bb7be45f9d0cebb1689825b0ad564.png

 

virtualsmc smcbattery info

368288283_ScreenShot2019-10-13at2_14_13PM.png.328816818a3d38309ea47d6c5fd745b7.png

 

i checked virtualsmc smcbattery close to macbook batter information.

and now acpibattery kext has battery percentage issue when plugin ac connect(always 100% and after about 30secs, get correct battery info)

so i determine virtualsmc smcbattery.

 

virtual smcbattery, battery cycle count always 0.

i don't know why. acpibattery always shown correct cycle count.

so i think this line need more consider.

https://github.com/acidanthera/VirtualSMC/blob/master/Sensors/SMCBatteryManager/ACPIBattery.cpp#L88

 

https://github.com/RehabMan/OS-X-ACPI-Battery-Driver/blob/master/AppleSmartBatteryManager/AppleSmartBattery.cpp#L1290

 

here is kernel log

VirtualSMCBattery.zip

ACPIBattery.zip

 

thanks in advance

 

 

EDIT1.

i checked battery info in windows

1331121376_.thumb.PNG.6a5b4de3cfe2c5d5c40297e4200ced5a.PNG

 

cycle is 0.

 

and windows battery report

배터리:배터리 정보
 
배터리 ID(BATTERY ID) 1787 LG LGC-LGC
제조업체(MANUFACTURE) LG
일련 번호(SERIAL) 1787
화학적 구성 성분 LION
대용량 1
설계 용량 34610
마지막 완전 충전 34570

 

 

seems virtaulsmc smcbattery more correct than acpibattery.

 

 

EDIT2.

seems Virtualsmc smcbattery capacity is wrong

 

in windows, battery capacity is about 34610 mWh.

https://convert-formula.com/mwh-mah

1563335617_2019-10-132_58_29.thumb.png.7c33c7dd1ca9609817c5d43029e3d810.png

1376631236_2019-10-132_59_14.png.9930ce8f78cdee29b75f9260c3f4f179.png

 

capacity is about 4400~4500. 

About capacity: what is the designed voltage of your battery?

capacity (mAh) = capacity (mWh) / designed voltage (V)

34610 mWh is the designed capacity of your battery, 34570 is the capacity that it takes when fully charged (it's less due to battery wear-out).

For batteries that don't report cycle count (don't have _BIX extended information method), fake cycle count is calculated as 1000 * (design capacity - full charge capacity) / design capacity, assuming that after 1000 cycles the battery would be completely destroyed and have zero capacity. According to your data, the cycle count should be (35610 - 34570) / 35610 * 1000 = 29. On my notebook it shows 0 instead of 241 (the battery is 6 years old), I'll debug it.

  • Like 1
Link to comment
Share on other sites

50 minutes ago, usr-sse2 said:

About capacity: what is the designed voltage of your battery?

capacity (mAh) = capacity (mWh) / designed voltage (V)

34610 mWh is the designed capacity of your battery, 34570 is the capacity that it takes when fully charged (it's less due to battery wear-out).

For batteries that don't report cycle count (don't have _BIX extended information method), fake cycle count is calculated as 1000 * (design capacity - full charge capacity) / design capacity, assuming that after 1000 cycles the battery would be completely destroyed and have zero capacity. According to your data, the cycle count should be (35610 - 34570) / 35610 * 1000 = 29. On my notebook it shows 0 instead of 241 (the battery is 6 years old), I'll debug it.

 

1715763017_2019-10-149_13_12.png.f70a2fd1eda5fb3b0fa22e781448fc65.png

Q.About capacity: what is the designed voltage of your battery?

capacity (mAh) = capacity (mWh) / designed voltage (V)

1862247455_2019-10-149_16_46.png.c7aa7755f50c2cff1fb4c1844bff20dd.png

 

my laptop battery was changed recently before about 1 month

 

in dsdt

                Name (_BIX, Package (0x14)
                {
                    Zero, 
                    Zero, 
                    Ones, 
                    Ones, 
                    One, 
                    Ones, 
                    Zero, 
                    Zero, 
                    Ones, 
                    0x000182B8, 
                    0x0002BF20, 
                    0x3E80, 
                    0xEA60, 
                    0xEA60, 
                    0x4B, 
                    0x4B, 
                    "", 
                    "", 
                    "LION", 
                    " LG "
                })

                Name (_BIF, Package (0x0D)
                {
                    Zero, 
                    Ones, 
                    Ones, 
                    One, 
                    Ones, 
                    Zero, 
                    Zero, 
                    0x64, 
                    0x4B, 
                    "", 
                    "", 
                    "LION", 
                    " LG "
                })

 

thanks in advance

 

EDIT

i don't exactly know battery cycle formula. just find here

battery cycle article

https://www.idownloadblog.com/2015/06/18/how-to-macbook-battery-cycle-count/

How do you calculate a battery cycle?

A battery cycle count is calculated based on the use of all the battery’s power, but not necessarily on a single charge. For example, if your MacBook is charged at 100% and you use 50% of your battery, then charge it back to 100%, then use another 50% of battery, it will equal to one battery cycle (50+50=100).

Likewise, if you use 20% of your battery then charge it back to 100% five times, it will equal to one battery cycle (20+20+20+20+20=100).

 

Edited by Sherlocks
Link to comment
Share on other sites

1 hour ago, Sherlocks said:

 

1715763017_2019-10-149_13_12.png.f70a2fd1eda5fb3b0fa22e781448fc65.png

Q.About capacity: what is the designed voltage of your battery?

capacity (mAh) = capacity (mWh) / designed voltage (V)

1862247455_2019-10-149_16_46.png.c7aa7755f50c2cff1fb4c1844bff20dd.png

 

my laptop battery was changed recently before about 1 month

 

in dsdt

                Name (_BIX, Package (0x14)
                {
                    Zero, 
                    Zero, 
                    Ones, 
                    Ones, 
                    One, 
                    Ones, 
                    Zero, 
                    Zero, 
                    Ones, 
                    0x000182B8, 
                    0x0002BF20, 
                    0x3E80, 
                    0xEA60, 
                    0xEA60, 
                    0x4B, 
                    0x4B, 
                    "", 
                    "", 
                    "LION", 
                    " LG "
                })

                Name (_BIF, Package (0x0D)
                {
                    Zero, 
                    Ones, 
                    Ones, 
                    One, 
                    Ones, 
                    Zero, 
                    Zero, 
                    0x64, 
                    0x4B, 
                    "", 
                    "", 
                    "LION", 
                    " LG "
                })

 

thanks in advance

 

EDIT

i don't exactly know battery cycle formula. just find here

battery cycle article

https://www.idownloadblog.com/2015/06/18/how-to-macbook-battery-cycle-count/

How do you calculate a battery cycle?

A battery cycle count is calculated based on the use of all the battery’s power, but not necessarily on a single charge. For example, if your MacBook is charged at 100% and you use 50% of your battery, then charge it back to 100%, then use another 50% of battery, it will equal to one battery cycle (50+50=100).

Likewise, if you use 20% of your battery then charge it back to 100% five times, it will equal to one battery cycle (20+20+20+20+20=100).

 

The battery doesn’t count charges (or doesn’t report it via ACPI), so battery drivers approximate cycle count with an assumption that the battery is designed for 1000 cycles (like MacBook battery is), and its full capacity linearly decreases due to wearing out from designed capacity to zero in that 1000 cycles.

It showed 0 because of issue with types (SMC key had type ui8 instead of ui16). Fixed in master. 

SMCBatteryManager.kext.zip

Edited by usr-sse2
Link to comment
Share on other sites

3 minutes ago, usr-sse2 said:

The battery doesn’t count charges (or doesn’t report it via ACPI), so both battery drivers approximate cycle count with an assumption that the battery is designed for 1000 cycles (like MacBook battery is), and its full capacity linearly decreases due to wearing out from designed capacity to zero in that 1000 cycles.

It showed 0 because of issue with types (SMC key had type ui8 instead of ui16). Fixed in master. 

SMCBatteryManager.kext.zip

 

now i have 2 cycles. seems good

117032272_2019-10-1410_20_45.png.57d95c807d4971541d107218ec03de88.png

 

my battery capacity is 4553. will be fix?

Link to comment
Share on other sites

×
×
  • Create New...