Jump to content

VirtualSMC — SMC Emulator


vit9696
760 posts in this topic

Recommended Posts

Hi 

I just built my first hackintosh and it went very well.  I had it all working with Virtualsmc until I updated my bios and updated to mojave 10.14.2.  I also updated from virtualsmc 1.01 to the latest 1.02.  Then my CPU cores temps and cores don't show up anymore.  I just replaced the 1.01 version kexts with 1.02 version in my EFI/clover/kext/other folder.

I have tried reverting back to the original board Bios to see if that was the problem but did not help.

My system:

giagbyte Z390 Master

I9900K

Samsung evo 970 nvme boot/OSX

Samsung 860 ssd was originally going to be boot drive

Vega 64

 

I used cmer files for configuration and build as same hardware.  Worked nicely until I updated virtualsmc 

 

Do you have any suggestions?

 

Thanks

Link to comment
Share on other sites

On 1/8/2019 at 10:14 PM, bbritton said:

Hi 

I just built my first hackintosh and it went very well.  I had it all working with Virtualsmc until I updated my bios and updated to mojave 10.14.2.  I also updated from virtualsmc 1.01 to the latest 1.02.  Then my CPU cores temps and cores don't show up anymore.  I just replaced the 1.01 version kexts with 1.02 version in my EFI/clover/kext/other folder.

I have tried reverting back to the original board Bios to see if that was the problem but did not help.

My system:

giagbyte Z390 Master

I9900K

Samsung evo 970 nvme boot/OSX

Samsung 860 ssd was originally going to be boot drive

Vega 64

 

I used cmer files for configuration and build as same hardware.  Worked nicely until I updated virtualsmc 

 

Do you have any suggestions?

 

Thanks

If you updated your bios you also should update your DSDT file because it changes on every bios that might be your issue

  • Like 2
Link to comment
Share on other sites

With SMCProcessor 1.0.2, my second CPU core is missing from iStat menu.

 

MacBookPro9,1 smbios

 

Downgraded to 1.0.1, and everything works as expected again!!

Edited by Dr. Hurt
Link to comment
Share on other sites

I was trying to contact the developers through github but I could not. I use virtualsmc but the battery control is not accurate because using also istats to see the battery check marks me unpacked values. The temperature battery is -273?

 for example, the discharge time is 20 minutes and is at 7% and then turns off by itself. fan control is always a little accelerated and I can not change from the bios as I have a laptop. I did various tests and I saw that virtualsmc is better than fakesmc in my case as reported by the intel test.but I was wondering if it will be updated again.

D65DA2CA-59B5-40C4-BA46-D2B6180824EF.jpeg

Edited by Emanuele-1998
Link to comment
Share on other sites

-273C is 0 Kelvins (absolute zero). I think this happens when no battery temperature is reported (battery hardware doesn’t support reporting temperature).

 

As for sudden shutdowns, that could mean your battery is going bad. It’s reporting incorrect capacity. Try to calibrate it by charging to 100% then discharging to power off. Repeat a couple of times.

  • Thanks 1
Link to comment
Share on other sites

On 1/21/2019 at 5:11 PM, Dr. Hurt said:

273C is 0 Kelvins (absolute zero). I think this happens when no battery temperature is reported (battery hardware doesn’t support reporting temperature).

 

As for sudden shutdowns, that could mean your battery is going bad. It’s reporting incorrect capacity. Try to calibrate it by charging to 100% then discharging to power off. Repeat a couple of times.

the kext started but the system decided to close it by returning value 5, but it does not succeed for some reason. why do you close it if the kext continuously passes the values to intelpowergadget, istats...? @chris1111 @Dr. Hurt

 

1B9AFCF0-02DF-437E-A7AE-876193A44BC6.jpeg

Edited by Emanuele-1998
  • Like 1
Link to comment
Share on other sites

I'm getting thermal cycling on a 2012 MacBook Pro (Mac9,1).  A project similar to this on github is called dshb and prints out the SMC values and labels (if known) or keys/values to unknown SMC keys.   A screen capture is attached.  The only temp being reported higher than the others is associated with SMC Key TSQF. 

 

I checked this post and a bunch of the links and VirtualSMC project source code and there's not much info on this key.  Anyone know what TSQF is? 

 

I have iStat menu too and created a fan schedule that keeps the MBP running.  The fan is on high a lot though.  I was hoping Apple diagnostics would point to the culprit but it thermal cycles before diagnostics can complete running.  I'm hoping I can figure out what h/w component is running hot and get the dang thing fixed. 

 

Thanks!

Screen Shot 2019-01-31 at 2.14.57 PM.png

Link to comment
Share on other sites

2 hours ago, ellaosx said:

Does VirtualSMC.efi bypass SMCHelper.efi if both exist?

 

In FAQ. SMCHelper is not compatible with VirtualSMC: remove it :)

 

What are the requirements?

macOS 10.8.5 or newer. Compatible Lilu is required for full functionality, basic functionality will be available even on beta macOS versions or with -liluoff boot-arg. VirtualSMC.efi module is recommended for boot.efi compatibility when FileVault 2 is enabled. SMCHelper-64.efi is not compatible with VirtualSMC.efi and must be removed.

 

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

How complicated would it be to add my own sensor data into this? Say my motherboard has something connected to the T_SENSOR header, what would be the steps to getting that to appear in the OS?

 

I'm fairly good with programming in other languages, so I can follow steps easily enough.

Edited by floodlitworld
Link to comment
Share on other sites

  • 4 weeks later...

@vit9696 I spent 2 days trying to get a reading from my fan and am wondering if you could help me make it work.  I have an Asus Z390-I that uses the NCT6798D and needs emulated nvram.  I was poking around in one of the plists and saw that it was supported. 

 

I am currently on 10.14.4 and everything boots perfectly with VirtualSMC.  Here is what I did:

 

I deleted FakeSMC, its sensors, nvram.plist, and RC scripts from /etc.  Using Clover Configurator I installed the following:

  1. VirtualSMC.kext, 
  2. SMCProcessor.kext
  3. SMCSuperIO.kext
  4. VirtualSmc-64.efi (in drivers)

I also installed the following apps:

  1. Intel Power Gadgets
  2. HWMonitorSMC2 (from GitHub)

 

Screen shot of my /other kext folder and drivers.  As you may remember from our previous conversation, I never put anything in /L/E

 

1278254315_ScreenShot2019-03-28at10_15_42PM.png.df6cf80eb1cbdddd2a65a8517fa79e6e.png

 

1293980500_ScreenShot2019-03-28at10_15_54PM.png.9d9b0f9bc66a81f73c091b7fbf3591fe.png

 

Questions:

  1. Do I need RC scripts or not for emulated nvram with EmuVariableUefi-64.efi?  I've read yes AND no in this thread.
  2. I still can not get my Fan speeds, do I need to configure in a plist?
  3. Seeing as I had about 20 different installs of different monitors and FakeSMC and multiple version of a few apps, do I need to delete a config or plist somewhere?
  4. Finally, is there a way to configure the HWMonitorSMC2 menus by modifying a plist?  If so which one?

I've attached a dump for you to examine.

 

Thank you.

 

 

dump.zip

Edited by Modmike
Link to comment
Share on other sites

Hi @vit9696, when building VirtualSmcPkg using Xcode 10,1 under 10.13.6 it failed with this error message:

Pccts/h/pccts_stdio.h:5:10: fatal error: 'cstdio' file not found

Occurred after cloning UDK. mtoc was installed on `/usr/local/bin/`.

Build separated *.kext from Scheme is succeeded though, I got this warning:

/Users/badruzeus/Projects/XCode/VirtualSMC/Lilu.kext/Contents/Resources/Library/plugin_start.cpp:24:19: warning: unused variable 'kextVersion' [-Wunused-const-variable]
static const char kextVersion[] {
                  ^
1 warning generated.

Is there any missing step? Thanks.

 

Edited by Badruzeus
Link to comment
Share on other sites

My Fan fix PR was just merged with the gracious help and infinite patience of @vit9696

 

I attached the files with all the sensors but if you want to build it yourself I suggest you download Hackintools and use that to build.  It's fully automated and works great.  Red highlights indicate that a newer version is available but it's not always a good idea to update unless you know the new version is good.

 

In our case, the version is green but it is safe to build so I selected it:

 

1347608419_ScreenShot2019-04-04at10_06_53AM.png.7f1484b06b29c1832254ab7307cd2533.png

 

Hackintool will prompt you for permission to install components if they're missing but the process is otherwise automatic. When it's done it will open the build folder.  The files you need are outlined below.

 

1233876909_ScreenShot2019-04-04at10_09_37AM.png.e0ec999e28f5fffc0f66f0336c84fe02.png

 

Sensors.zip

 

@vit9696  I really dislike the look of iStat.  What configurable version of HWMonitor do you recommend?

Edited by Modmike
Link to comment
Share on other sites

×
×
  • Create New...