Commit Graph

65 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
Serhiy Mytrovtsiy
58ad6c568b feat: added feature to set keyboard shortcut to open/close popup window (#1976) 2025-01-20 17:04:55 +01:00
WinTP
69be509d5e lang: added several missing localization strings (#2327)
Signed-off-by: Serhiy Mytrovtsiy <mitrovtsiy@ukr.net>
Co-authored-by: Serhiy Mytrovtsiy <mitrovtsiy@ukr.net>
2025-01-12 15:47:56 +01:00
Serhiy Mytrovtsiy
9a72f3e01d feat: added temperature unit update on each read in the Sensors popup (#2078) 2024-08-19 18:36:53 +02:00
Serhiy Mytrovtsiy
af2261eb2b fix: added fastest fan to the popup view (#2056) 2024-08-03 21:45:04 +02:00
Serhiy Mytrovtsiy
f873fdaa3d feat: moved all modules settings to the new design 2024-04-24 06:10:27 +02:00
Serhiy Mytrovtsiy
4c35eafd00 feat: added portal view (combined view mode) to the sensors module 2024-01-19 21:05:48 +01:00
Serhiy Mytrovtsiy
98b1b1afb6 feat: added an option to hide a fan in the popup view (#1741) 2023-12-28 18:21:14 +01:00
Serhiy Mytrovtsiy
f3bd517269 feat: added translation for sensors 2023-12-22 18:33:56 +01:00
Serhiy Mytrovtsiy
709f7bfa32 fix: adjusted chart value in the Sensors popup to the local temperature (C/F) (#1730) 2023-12-19 14:09:27 +01:00
Serhiy Mytrovtsiy
48322fc7e8 fix: fixed circles charts in the new version of Cocoa 2023-09-28 17:33:55 +02:00
Serhiy Mytrovtsiy
5030d22ec5 fix: trying to fix the crash by fixing some data racing in the widgets (#1578) 2023-08-19 09:39:18 +02:00
Serhiy Mytrovtsiy
a7ac638ac8 feat: added an alert that informs that turning off the fan is not recommended action before turning off the fan (#1567) 2023-08-15 13:45:06 +02:00
Serhiy Mytrovtsiy
b8564ff67f feat: added a button that allows to turn off the fan (#1567) 2023-08-04 12:09:53 +02:00
Serhiy Mytrovtsiy
89e55a70de fix: prevented adding the 'Fan value' toggle each time when loading the popup settings (#1542) 2023-07-01 19:34:54 +02:00
Serhiy Mytrovtsiy
ff6b0ed865 feat: moved from the HEX colors to the RGB 2023-06-20 16:51:19 +02:00
Serhiy Mytrovtsiy
991e02ff48 feat: added bar view to the fan view (#1461) 2023-05-23 17:53:48 +02:00
Serhiy Mytrovtsiy
0b6f4bd49f feat: added an option to select what value to show in the popup for fan: RPM or percentage 2023-05-05 20:12:41 +02:00
Serhiy Mytrovtsiy
550cd7ad35 feat: added a button to show/hide a fan control panel (#1416) 2023-05-02 17:56:14 +02:00
Serhiy Mytrovtsiy
d08e8be203 fix: fixed fan mode restore after sleep (#1436) 2023-04-28 21:03:32 +02:00
Serhiy Mytrovtsiy
f176e494ad feat: changing the fans speed will be synchronized via percentage, not RPM (#1414) 2023-04-21 17:25:50 +02:00
Serhiy Mytrovtsiy
5105c8c20d feat: created PopupWrapper for the popup view 2023-03-25 14:54:30 +01:00
Serhiy Mytrovtsiy
4ddb45e4e1 fix: added check if fan value is less than minimum value (#1365) 2023-03-21 18:22:24 +01:00
Serhiy Mytrovtsiy
698357b57d feat: added an option to hide sensors in the popup view (#1216) 2023-03-18 19:23:51 +01:00
Serhiy Mytrovtsiy
938554f738 feat: changed Sensor type to the Fan for the Fastest Fan. That allows showing RPM or percentage for the Fastest Fan based on the Fan value setting (#1335) 2023-03-07 20:54:50 +01:00
Serhiy Mytrovtsiy
51ea8c3267 feat: changed temperature value from int to decimals in the sensors popup view (#1292) 2023-02-10 09:35:47 +01:00
Serhiy Mytrovtsiy
fec946e58e fix: hide all sensors from the settings view when Unknown sensors is disabled (#1245) 2023-01-11 19:46:39 +01:00
Serhiy Mytrovtsiy
d054da741e feat: added a button to uninstall the fans helper 2022-12-23 11:46:33 +01:00
Serhiy Mytrovtsiy
1680b9331b fix: fixed a race condition when switching the Unknown sensors (#1241) 2022-12-22 18:13:34 +01:00
Serhiy Mytrovtsiy
a8d202d488 feat: added an option to select fan value for widget: rpm or percentage (#1236) 2022-12-21 19:47:17 +01:00
Serhiy Mytrovtsiy
7ef48325dd feat: added button to install the fan helper 2022-12-10 09:27:00 +01:00
Serhiy Mytrovtsiy
99e0f1427e fix: fixed that fans always control synchronously, even if the sync fans option was disabled (#1188) 2022-11-22 16:46:49 +01:00
Serhiy Mytrovtsiy
e9bc4cc5d3 feat: moved from the AppleScript for asking a root access when manipulating the fans to the Helper (SMJobBless + XPC) (#1173) 2022-11-18 22:51:34 +01:00
Serhiy Mytrovtsiy
e02586b7f4 feat: changed swiftlint rules for body and file length 2022-10-04 21:45:40 +02:00
Serhiy Mytrovtsiy
42515ca1b5 feat: initialized popup settings (#565) 2022-10-04 21:44:27 +02:00
Serhiy Mytrovtsiy
7b77e9e445 fix: disable fan reset if the fan is in the automatic mode and the app does not have permissions (#1053) 2022-08-26 11:34:00 +02:00
Serhiy Mytrovtsiy
a7863f1c42 feat: change the fan mode to automatic when going to sleep. The fan control will be restored after sleep if "Save the fan speed" is enabled (#1002) 2022-08-16 22:47:17 +02:00
Serhiy Mytrovtsiy
3e2e13e051 feat: added an option to synchronize the fans speed control (#975) 2022-06-28 18:28:09 +02:00
Serhiy Mytrovtsiy
cc96226008 feat: added an option to synchronize the fans (the mode only for now) control (#975) 2022-06-27 19:15:48 +02:00
Serhiy Mytrovtsiy
49164388ca feat: increased swiftlint file_length rule from 600 to 800 2022-05-24 23:26:53 +02:00
Serhiy Mytrovtsiy
d474521f78 feat: added custom suffix to the line chart toolTip (#946) 2022-05-24 23:26:14 +02:00
Serhiy Mytrovtsiy
822f156a23 feat: hide the fan controls if the fan cannot be controlled (hackintosh)
(prev commit: feat: added a new battery level key to the Bluetooth battery reader (#920))
2022-04-28 20:16:46 +02:00
Serhiy Mytrovtsiy
946b8a4b2f fix: prevented asking for root when closing the app. It was a bug in the Sensors module that tries to reset the fan mode to the automatic. Now it will check if any of the fan mode was changed. 2022-04-26 07:36:31 +02:00
Serhiy Mytrovtsiy
19be55fd35 fix: restore the fan speed after sleep or app restart if the save option is enabled (#915) 2022-04-21 22:58:28 +02:00
Serhiy Mytrovtsiy
e39f4f731e fix: fixed updates of sensor chart 2022-03-14 18:34:58 +01:00
Serhiy Mytrovtsiy
fa266ffc32 fix: add a sensor value to the chart in the popup view even if the popup is closed 2022-03-11 19:02:40 +01:00
Serhiy Mytrovtsiy
69219a2902 feat: added Bar chart view to the Sensors module (for Fans only!) (#839) 2022-03-08 17:04:10 +01:00
Serhiy Mytrovtsiy
5d939588f6 fix: show fan speed in PRM when percentage cannot be calculated (max speed is not available) 2022-03-07 18:28:52 +01:00
Serhiy Mytrovtsiy
879df4c410 feat: added chart to the sensors (#630) 2022-03-03 19:16:39 +01:00
Serhiy Mytrovtsiy
849f972ac3 feat: added sensor view with hover option (preparing for sensor history, #630) 2022-01-29 14:42:56 +01:00