• Become a Premium Member for $25/year with no ads to improve your community experience. Upgrade to Pro Account for faster response and no wait times!

  • We regret to inform you that our server had an unexpected catastrophic failure and we lost the recent backups as well. The last healthy backups was restored of February 24, 2025. Members who have already registered, please consider a reregistration. Once re-registered, the memberships will be restored for those who have purchased a membership. We'll continue to monitor and send emails to assist you to have you onboard. Any inconvenience is highly regretted. Thank you for your continued support and participations.

    Sincerely, EliteMacx86
SMCBatteryManager

SMCBatteryManager 1.3.0

No permission to download

VirtualSMC​

Advanced Apple SMC emulator in the kernel. Requires Lilu for full functioning.

English (Current)
简体中文

Features​

  • Supports macOS 10.4 and newer (10.9 and newer is recommended)
  • Implements MMIO protocol and interrupt-based responses for compatibility with modern OS
  • Properly reports key attributes and r/w protection in the keys
  • Allows tuning on per-model basis and allows to use different SMC generations
  • Extensible by the plugins for sensor and key addition support
  • Enables smcdebug=XX boot argument support on 10.9
  • Replaces hardware SMC it finds (to disable SMC entirely you need to flash a dedicated firmware)

Boot arguments​

  • Add -vsmcdbg to enable debug printing (available in DEBUG binaries).
  • Add -vsmcoff to switch off all the Lilu enhancements.
  • Add -vsmcbeta to enable Lilu enhancements on unsupported OS (13 and below are enabled by default).
  • Add -vsmcrpt to report about missing SMC keys to the system log.
  • Add -vsmccomp to prefer existing hardware SMC implementation if found.
  • Add vsmcgen=X to force exposing X-gen SMC device (1 and 2 are supported).
  • Add vsmchbkp=X to set HBKP dumping mode (0 - off, 1 - normal, 2 - without encryption).
  • Add vsmcslvl=X to set value serialisation level (0 - off, 1 - normal, 2 - with sensitive data (default)).
  • Add smcdebug=0xff to enable AppleSMC debug information printing.
  • Add watchdog=0 to disable WatchDog timer (if you get accidental reboots).

Changelog v1.3.0​

  • Added preliminary macOS 13 support

Credits​

  • Apple for macOS
  • netkas for the original idea of creating a software SMC emulator
  • CupertinoNet for reversing most of MMIO protocol and SMC headers
  • Alex Ionescu for the initial reverse of SMC firmware
  • 07151129 for co-devoloping VirtualSMC and invaluable help during the research
  • lvs1974 for developing laptop sensor support
  • usr-sse2 for developing laptop sensor support
  • joedmru for developing Super I/O chips support
  • theopolis for smc-fuzzer tool
  • kokke for tiny-AES-c
  • vit9696 for Lilu.kext and this software
  • Additional big thanks go to all the contributors and researchers involved in Apple SMC exploration!
Author
Striker
Downloads
107
Views
1,796
First release
Last update

Ratings

0.00 star(s) 0 ratings

More resources from Striker

Share this resource