There are three different projects for monitoring temperatures, voltages, fans speed and other hardware parameters:
Initially it was FakeSMC with plugins for producing SMC keys for hardware parameters for different hardware. But sometimes ago Kozlek separated own version of FakeSMC and producing new set of plugins while I stay with good working version 3. So..
1. FakeSMC v3 with Hardware Sensors3 which I still supported.
2. FakeSMC v6 (rev1800) by Kozlek and supported by Rehabman. AFAIK both are abandoned and the project is not supported. Or may be maintained by coauthors.
3. New VirtualSMC by vit9696 with own set of sensors kexts. It depends on Lilu.kext. The project is in active development.
All three project have incompatible interfaces sensors<->SMC so they are incompatible with each other.
There are applications for monitoring hardware parameters and they commonly depends on these projects.
1. iStat, iStatMenu, iStatPro compatible with real Macs because they use SMC keys just like those presents in real Macs.
2. HWMonitorSMC by Navi (initial codes from Kozlek) used in my HWSensors3.
3. HWMonitor by Kozlek with graphics like in IntelPowerGadget used in his HWSensors version.
4. HWMonitorSMC2 by Vector_Sigma tends to be universal supporting all project. It also may use sensors information produces by Apple graphics and by IntelPowerGadget.
Let us discuss here differences and common ideas for this projects.
I created an installer for my version of FakeSMC with plugins and applications latest revision.
Compatibility from 10.6 up to 10.15.
Download here: HWSensors.pkg.zip
See my signature
New project home
FakeSMC v3.5.3 and plugins
FakeSMC 3.4.0 revision 751
New project home is
where you can download most recent versions.
Now it is FakeSMC 3.4.1
Explanations about the difference between versions 3 and 6
Revision 32 with explanation at #220
FakeSMC is 3.5.0 compatible with High Sierra.
New plugin VoodooBatterySMC created on the base of VoodooBattery by Superhai but with SMC keys generating to show Battery voltage and amperage. As well it created key BATP needed for right speedstep and FileVault2.
Other kexts revised.
This is a brief guide on how to create a vanilla El Capitan (also same process for Sierra) OS X Installer USB with an updated prelinked kernel containing FakeSMC.
It is tailored for those users who want to understand the “nuts and bolts” of how to create an installer and also to help brush up on their terminal skills (rather than have one made for them with the numerous automated “tools” available or even Apple’s createinstallmedia) :
Specifically, it is also a “Proof of Concept” which shows that installation is possible without even having to rely on boot loader kext injection.
Existing Yosemite installation (or Mavericks - see post#4 for steps 7,8)
“Install OS X El Capitan.app" downloaded to the Applications folder
FakeSMC.kext - Slice or Kozlek branch
Bootloader - Clover or Chameleon
8GB or larger USB drive (16GB recommended), formatted HFS+ (MBR or GUID) named “Installer”
1. Boot into Yosemite with the kext-dev-mode=1 boot flag
2. Open OS X terminal and type the following lines, followed by <Enter> after each line.
The image restore and file copying may take a while to complete, and at the end of the process, the Installer volume is renamed to “OS X Base System"....
hdiutil attach /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/SharedSupport/InstallESD.dmg
asr restore -source /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg -target /Volumes/Installer -erase -format HFS+ -noprompt -noverify
rm /Volumes/OS\ X\ Base\ System/System/Installation/Packages
cp -av /Volumes/OS\ X\ Install\ ESD/Packages /Volumes/OS\ X\ Base\ System/System/Installation
cp -av /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg /Volumes/OS\ X\ Install\ ESD/BaseSystem.chunklist /Volumes/OS\ X\ Base\ System
diskutil unmount /Volumes/OS\ X\ Install\ ESD
3. Right click on the “OS X Base System” Volume and click “Get Info”
4. Click on the lock icon and untick “Ignore ownership on this volume”
5. Extract/Copy the El Capitan Kernels folder into /System/Library/ of the USB with Pacifist. NB It is found in the "Essentials.pkg" in /System/Installation/Packages
6. Delete or Rename the original /System/Library/PrelinkedKernels/prelinkedkernel —> OG.prelinkedkernel
7. Copy FakeSMC.kext and other necessary kexts (e.g. VoodooPS2Controller.kext for laptops) into the /Library/Extensions folder of the installer USB using Finder.
8. Back in terminal, type the following lines, followed by <Enter> after each line to rebuild the prelinkedkernel…..
chmod -R 755 /Volumes/OS\ X\ Base\ System/Library/Extensions
chown -R 0:0 /Volumes/OS\ X\ Base\ System/Library/Extensions
touch /Volumes/OS\ X\ Base\ System/System/Library/Extensions
kextcache -u /Volumes/OS\ X\ Base\ System
Any errors should be noted but the output below is normal e.g.
9. Install your Bootloader targeting the OS X Base System volume
10. Boot your system with the USB without injected kexts into the OS X Installer GUI....
The original prelinked kernel in a fresh install of El Capitan will also lack FakeSMC ie it will only be linked to Apple signed kexts. In order to boot into El Capitan the first time around without boot loader kext injection, the PLK needs to be rebuilt for the El Capitan volume like we did for the installer:
1. Boot into Yosemite with the kext-dev-mode=1 boot flag
2. Delete or Rename the original /System/Library/PrelinkedKernels/prelinkedkernel for the El Capitan volume —> OG.prelinkedkernel
3. Copy FakeSMC.kext and other necessary kexts (e.g. VoodooPS2Controller.kext for laptops) into the /Library/Extensions folder of El Capitan using Finder
4. Back in terminal, type the following lines, followed by <Enter> after each line to rebuild the prelinkedkernel. In this example, the El Capitan volume is named "El_Capitan" - change if you have named it something else...
chmod -R 755 /Volumes/El_Capitan/Library/Extensions
chown -R 0:0 /Volumes/El_Capitan/Library/Extensions
kextcache -u /Volumes/El_Capitan
5. Install your Bootloader targeting the El Capitan volume. This step is only necessary if you are installing El Capitan on a new drive without existing boot loader (not required if installing on a disk with existing boot loader beside Yosemite).
6. Reboot your system without injected kexts into El Capitan!
The All-In-One Guide to Vanilla OS X for beginners
Updates for Sierra and High Sierra
Custom Prelinkedkernel Generator Tool
I have made a custom prelinkedkernel generator "PLK.tool" for Sierra + El Capitan. Instructions:
1. Download and extract the attached BaseSystem_PLK.tool.zip into your ~/Downloads folder.
2. Copy any extra kexts necessary for booting your hack to ~/Downloads/BaseSystem/ExtraKexts (e.g. FakeSMC, VoodooPS2Controller), making sure SIP is disabled.
3. Copy BaseSystem.dmg to ~/Downloads/BaseSystem
4. Open terminal and run the following commands...
chmod +x PLK.tool
---> supply your admin password ---> will place your new custom prelinkedkernel on the desktop.
macOS High Sierra bypass Firmware and MBR checks in post#13.
BaseSystem_PLK.tool_Mojave.zip (need to run in Mojave to avoid dependency errors)