14 Commits

Author SHA1 Message Date
Alex Goodkind
20030a2a1c feat: added better fan control for M3/M4 Apple Silicon (#2924)
* Fix Ftst key handling for Apple Silicon fan control

* Update CFBundleVersion to 747 in Info.plist

Signed-off-by: Alex Goodkind <alex@goodkind.io>

* Update TeamId and SMC.Helper certificate identifier in Info.plist

Signed-off-by: Alex Goodkind <alex@goodkind.io>

* Add debug logging to SMC fan control functions

* Use writeWithRetry for Apple Silicon fan control writes and bump helper version to 1.0.3

* SMC fan control: serialize ops, Ftst timing, verification, logging

- Helper: serial queue for setFanMode/setFanSpeed/resetFanControl
- smc.swift: 3s wait after Ftst=1, longer mode retry (100ms), SMC result logging
- helpers: per-fan verification with cancel-on-supersede, clearer logs
- smc.swift: neutral write logs (no 'succeeded'), FAILED on error

* - Updated error handling in SMCHelper to suppress expected XPC errors (codes 4097 and 4099) during helper updates/restarts.
- Removed unnecessary debug print statement in ModeButtons for improved log clarity.

* Update version numbers in Info.plist files to 752 and change TeamId for SMC.Helper

* Add FanMode.auto3 and isAutomatic, re-add F%dMd write in automatic path, use isAutomatic in countManualFans; bump SMC Helper to 1.0.24

* Apple Silicon fan control: direct-first writes, strip diagnostic bloat

Try direct F%dMd=1 write before Ftst unlock (instant on M1, fallback
on M3/M4). Remove verification system, diagnostic prints, dead code.

* Apple Silicon fan control: direct-first writes

Try direct F%dMd=1 write before Ftst unlock (instant on M1,
fallback on M3/M4).

Bump helper to 1.0.2/3, Stats/Widgets to 751.

---------

Signed-off-by: Alex Goodkind <alex@goodkind.io>
2026-02-22 15:17:23 +01:00
Carter Li
1a5512f793 fix: fixed case values for SP4B and SP69 in smc.swift (#2894)
Signed-off-by: Carter Li <CarterLi@users.noreply.github.com>
2026-01-11 15:40:39 +01:00
Serhiy Mytrovtsiy
ce92471f6c feat: added spa5 type to the SMC and a few new power sensors (#2161) 2024-10-05 17:31:41 +02:00
Serhiy Mytrovtsiy
cb26c684de feat: removed check if the setting fan speed is less than minimum fan speed 2023-08-03 17:51:50 +02:00
Serhiy Mytrovtsiy
1e0ba3b61f feat: moved all reader's values to the Codable protocol 2023-06-27 17:09:38 +02:00
Serhiy Mytrovtsiy
3c9a3722bf fix: fixed swiftlint warnings (#1386) 2023-04-01 16:58:05 +02:00
Serhiy Mytrovtsiy
f17c0c8987 feat: disabled large_tuple swiftlint rule 2022-01-11 22:51:55 +01:00
Dmitry
d419d8b871 fix: changed keyInfo_t dataSize to 32 bytes in the SMC (#689)
keyInfo_t dataSize must be 32 instead of 64 bytes.
2021-11-07 12:06:55 +01:00
Serhiy Mytrovtsiy
0320dfe709 fix: updated max file length in the swiftlint configuration 2021-10-05 19:14:09 +02:00
Serhiy Mytrovtsiy
a3a002a2d3 feat: removed os.log and moved to NextLog 2021-06-26 13:38:45 +02:00
Serhiy Mytrovtsiy
724d9055e7 fix: fixed fan control on macs with T2 (#430) 2021-06-22 20:48:16 +02:00
Serhiy Mytrovtsiy
c55d313d72 feat: removed the SMC plugin from the Kit framework. Compile from SMC where needed. 2021-06-07 22:55:17 +02:00
Serhiy Mytrovtsiy
a040bf7326 feat: allow to write a value on a key by SMC app 2021-05-29 17:00:09 +02:00
Serhiy Mytrovtsiy
ed362c3b5b feat: initialized SMC as a command-line app ($454) 2021-05-28 21:52:41 +02:00