smckit
-macOS SMC tool
smckit
[-cdfmptuw
]
[-h
]
[-k
check-key]
[-n
fan-id] [-s
fan-speed]
[-v
]
A macOS command line tool for interfacing with the Apple System ManagementController (SMC) in Swift on Intel based Macs.
List of supported command line options (flags/switches). Providing no optionsprints temperature (-t
), fan (-f
), power (-p
), and misc (-m
)information.
-c
,--color
Colorize output where applicable.
-d
,--show-keys
Show SMC keys (FourCC) when printing temperature sensors.
-f
,--fan
Show the machines fan speeds (RPM).
-h
,--help
Show the list of options.
-k
,--check-key
valueCheck if a FourCC is a valid SMC key on this machine.
-m
,--misc
Show misc information about this machine.
-n
,--fan-id
valueThe id (number - starts from 0) of the fan whose speed to set. The list ofid's can be seen via the--fan
option. Must be used in combination--fan-speed
.
-p
,--power
Show power related information about this machine.
-s
,--fan-speed
valueThe minimum speed (RPM - revolutions per minute) of the fan to set. Byminimum we mean that macOS can interject and raise the fan speed if needed,however it will not go below this. Must be used with--fan-id
. Requiresroot privileges.
WARNING: You are playing with hardware here,BE CAREFUL.
-t
,--temperature
Show the list of known temperature sensors on this machine.
-u
,--unknown-temperature-sensors
Show the list of temperature sensors whose hardware mapping is unknown.
-v
,--version
Show SMCKitTool version.
-w
,--warn
Show warning levels for temperature sensors and fan speeds.
Fan
All Intel based Macs to this point have at least one fan, with the exceptionof the newly added fanless MacBook (8,1).
Temperature
The list of known temperature sensors (-t
) in combination with the unknownones (-u
) is exhaustive. However, the names of the known sensors may notbe mapped to the correct hardware component. In addition, the maximumtemperature of each individual sensor is not known. Thus, a global max of128 degrees Celsius is used. This is all due to the fact that the SMC has aclosed source driver, and thus information about it's inner workings islimited.
If a sensor has a value that is very high, constant, and completelydisproportionate to the rest, then there is a chance that it is faulty. Thiscould be due to bad or damaged hardware (liquid on the logic board). Run theApple Diagnostics (Apple Hardware Test for older machines) diagnosticssuite in such a case to confirm.
Some sensors however report very low values, below zero. The current theoryon this is that at lower temperatures the sensors have inaccurate readings.It maybe that they are located close to an internal fan, and the airflow iscausing it to be skewed.
Due to Swift,smckit
requires macOS 10.9 (Mavericks) and above. This implies anIntel based 64-bit machine.
https://github.com/beltex/SMCKit
All project related matters, including source code, can be found at the GitHubrepository listed above. In particular, the issue tracker, which can be used toreport feedback, feature requests and bugs.
This project is under theMIT License.
beltexhttps://beltex.github.io
dshb(1),powermetrics(1)