The source decides when the curve moves
A curve has no effect until a temperature is fed into it. In Smart Breeze, the selected source determines the temperature used for first-point activation, interpolation along the curve, and release timing. Two identical point sets can therefore behave differently when one watches CPU and the other watches Any Sensor.
NoteThese are aggregate categories
Smart Breeze derives CPU, GPU, Memory, Battery, and hottest-available categories from known AppleSMC keys. Apple does not publish these as a supported third-party sensor taxonomy, and a category can be absent on a particular model. Treat the labels as Smart Breeze’s aggregate inputs, not Apple-authored sensor metadata.
The internal reading is also not the Mac’s external case temperature. Apple cautions that third-party temperature utilities do not measure the enclosure temperature and should not be used to diagnose a hardware issue. Use Apple Diagnostics or service when the symptom suggests a fault.
What each Build 37 option means
| Source | Useful starting context | Main caveat |
|---|---|---|
| Any Sensor | Mixed workloads, changing CPU/GPU leadership, or first-pass observation | The hottest available category can change, so correlate it with the named live readings and workload phase. |
| CPU | A repeatable CPU-heavy phase whose CPU aggregate is available | It may not represent GPU, battery, or another component leading the thermal pattern. |
| GPU | A repeatable graphics or compute phase whose GPU aggregate is available | Some workloads are mixed; CPU or another available category may lead at a different phase. |
| Battery | A battery-temperature investigation with an available battery reading | It is not a general substitute for CPU/GPU load and can respond on a different timescale. |
| Memory | Monitoring and diagnostics when discovered | It is not selectable as the controlling source in Build 37. |
“Any Sensor” is the UI label for Smart Breeze’s hottest-available source. It is a conservative discovery default, not proof that every sensor on the Mac is exposed or that the displayed category is the only thermally relevant component.
Choose by repeated correlation, not by intuition
- Stay in System and begin the exact workload you want to characterize.
- Watch CPU, GPU, Battery, and hottest available across warm-up, sustained work, and cool-down.
- Identify which available category rises and falls consistently with the phase you care about, not simply which produced the single highest number.
- Repeat once under the same power source and macOS power mode to see whether the relationship is stable.
- Choose that category, or keep Any Sensor if component leadership changes across the run.
- Test the curve with the same workload and confirm that activation and release occur for understandable reasons.
MethodExample decision
If a video workflow alternates between a CPU-heavy analysis phase and a GPU-heavy effects phase, Any Sensor can be more legible than binding the entire curve to only one aggregate. If a repeatable compile has an available CPU reading that consistently tracks every sustained phase while GPU remains flat, CPU can make the activation reason more specific. Those are methods, not universal presets.
Understand fallback before trusting the label
If CPU, GPU, or Battery is selected but that category is unavailable, Build 37 labels the condition and uses the hottest available reading. This preserves a temperature input when one exists; it does not manufacture the missing category. The controlling-sensor label in the dashboard is therefore part of the evidence for every run.
| Observed state | Interpretation | Next action |
|---|---|---|
| Selected category has a live value | The chosen aggregate is available for this snapshot. | Correlate it with the workload before deciding it is representative. |
| Smart Breeze labels hottest fallback | The selected aggregate is unavailable; another available category drives the curve. | Either accept Any Sensor deliberately or choose another consistently available category. |
| All temperatures unavailable or stale | There is no valid input for temperature-based control. | Build 37 requests System; copy diagnostics and troubleshoot monitoring. |
| Memory is unavailable | That optional monitoring aggregate was not discovered. | Do not treat the dash as a zero-degree reading or as a fan-control failure. |
WarningA fallback can change the experiment
A run labeled CPU that actually used hottest available is not a CPU-specific curve test. Record the controlling label with the result and do not compare it as though the source stayed constant.
Validate the source with history and ownership
Use the 15-minute history as a chronology, not as a scorecard. The temperature lane and fan-speed lane use separate honest scales. Align the sensor rise, curve activation, target change, actual response, workload end, release threshold, and System handoff. A source is useful when that story repeats and the reasons remain legible.
- Did the source rise before or during the workload phase, rather than long after it?
- Did it cross the first point consistently across repeated runs?
- Did actual fan RPM approach the requested target while Smart Breeze owned control?
- Did the source cool below the release threshold and remain there for the configured cooldown?
- Did the dashboard verify macOS ownership at the end?
Then tune the shape with the repeatable best-curve method, or return to the curve fundamentals if target percentages or release behavior are still unclear.
Separate sensor support from fan-control support
Temperature discovery and physical fan control are two independent compatibility questions. A fanless Mac can expose useful temperatures but has no fans to control. A fan-equipped Mac can expose readings while remaining System-only if Smart Breeze cannot discover a complete fan topology. Build 21 had a documented M5 MacBook Air issue where a missing fan-count key stopped the snapshot before independent temperatures were read. Build 37 changes that path and adds an individual sensor explorer, but physical verification on that M5 Air remains pending.
WarningControl boundary
Only Macs with a discovered fan topology can enable Smart Boost and use a selected sensor to drive physical fan targets. Where no fans are discovered, use readings only as monitoring data where available.
Sources
- Smart Breeze compatibility and sensor-category limits (Smart Breeze)
- Smart Breeze Build 37 known issues (Smart Breeze)
- Keep your Mac laptop within acceptable operating temperatures (Apple Support)
- Use Apple Diagnostics to test your Mac (Apple Support)
More from the guides
Fan curvesMac fan curves: what the points actually controlLearn how a temperature-to-fan curve works on a Mac, how Smart Breeze maps each point to a bounded RPM target, and how Smart Boost returns control to macOS.
Fan curvesHow to set a custom fan curve on a MacBook ProA measured, reversible workflow for editing 2–8 temperature points, testing adapter and battery curves, and verifying actual fan response in Smart Breeze.
Fan curvesThe best Mac fan curve is a method, not a presetBuild a defensible Mac fan curve with a System baseline, one-variable tests, separate power-source curves, and clear keep-or-reject criteria.Related docs: Compatibility, Known issues, Troubleshooting
Smart Breeze enables fan control only where it discovers a complete fan topology. If a sensor is missing, monitoring still shows what was discovered. Check compatibility
