// blog · · by Nathan Baldwin
// Bitaxe fan curves explained — when auto mode works fine, when manual override saves your VR, and the temperature thresholds that matter most.
AxeOS’s default fan curve starts at 35% PWM and ramps to 100% as ASIC temp climbs from 50°C to 65°C. For a stock Gamma in a 22°C room, that means the fan sits at roughly 50% all day at ~3000 RPM, which is quiet enough to ignore. Push the same Gamma to 575 MHz and 1200 mV, and the curve pegs at 100% and never comes back down — about 6000 RPM, audible from across the room.
The auto curve was tuned for stock settings. The moment you overclock, it stops being the right curve.
AxeOS’s fan controller is a simple linear ramp keyed to ASIC temperature only. The defaults (visible in Settings > Fan):
Between 50°C and 65°C, the PWM scales linearly. Below 50°C the fan stays at minimum. Above 65°C it’s pegged. There’s no PID loop, no hysteresis — it’s a straight line.
The 12V fan on a Gamma board has roughly a 1000-6000 RPM range. At 35% PWM, you’re at ~3000 RPM. At 100% PWM, you’re at the rated 6000 RPM, which is where the bearing noise becomes noticeable.
The curve ignores VR temperature entirely. That’s the catch.
The VR temperature sensor sits next to the buck regulator on the board. At stock voltage, the VR runs ~3-5°C below the ASIC. At sweet-spot tune (1200 mV), it runs roughly equal to the ASIC. At aggressive tune (1250 mV), the VR runs 2-5°C above the ASIC.
The fan curve is keyed to ASIC, so when you overclock and the VR becomes the hotter component, the fan isn’t reacting to the actual hot part. You can have ASIC at 65°C with the fan pegged at 100%, while VR is sitting at 72°C — already past the safe zone — and the fan has nothing left to give.
Worse: if your room is warm and the VR is already hot at idle, the fan curve might not even ramp up if the ASIC hasn’t broken 50°C yet. The board sits in a low-airflow state with the VR cooking.
This is why “stock fan curve + aggressive overclock” tends to kill regulators long before chips.
If you’re running stock (525 MHz / 1166 mV) or Tier 2 light OC (550 MHz / 1180 mV), the auto curve does the right thing. ASIC temp is the hotter component, and the linear ramp gives reasonable cooling without making the room sound like a server closet. Most Bitaxe owners never need to touch the defaults.
A clean signal that auto is working: ASIC temp settles at 55-60°C, VR temp settles 2-5°C cooler, fan sits around 50-65% PWM. Stable for hours.
If you’re seeing those numbers, leave it alone.
Override when one of these is true:
1. You’re running Tier 3 or higher (575 MHz / 1200 mV+). The VR is the bottleneck, and the ASIC-keyed curve underreacts. Force the fan to a higher minimum and you’ll see VR temp drop 3-7°C.
2. Your ambient is above 25°C. The default 50°C min temp doesn’t kick in fast enough when the chip starts the day at 35°C and climbs slowly. Drop the min temp to 40°C so the fan stays on through the warm-up.
3. You’re running in a tight enclosure or rack. Anything that restricts airflow means the chip-to-fan heat path is less efficient. Crank the fan harder to compensate.
4. You want quiet at low load and don’t care about heat at high load. Set min temp high (e.g., 60°C) and accept that the fan won’t spin up until things get warm. Trades noise for thermal headroom.
In AxeOS, Settings > Fan has min temp, max temp, and a “manual override” with a fixed PWM value. The override is the nuclear option — fan stays at whatever percent you set, no curve at all.
Useful overrides:
Aggressive cooling for Tier 3+ tunes: - Min temp: 40°C - Max temp: 55°C - This means the fan is fully on at 55°C ASIC, well before VR temp can climb into the 70s. Costs you ~5dB of noise, gains you ~7°C of VR headroom.
Quiet operation, stock tune: - Min temp: 55°C - Max temp: 70°C - Fan stays at 35% basically forever. Almost inaudible. Don’t use this on overclocked devices.
Manual override for a bench test: - Manual PWM: 100% - Locks the fan at 6000 RPM. Useful when you’re testing how high you can push the chip without thermal interference.
A 24-hour CSV from a Gamma at Tier 3 with the default fan curve:
ASIC temp range: 58°C → 64°C (mean: 61°C)
VR temp range: 61°C → 69°C (mean: 65°C)
Fan PWM range: 67% → 100% (mostly 100%)
HW error rate: 0.34%
The same Gamma, same tune, with the aggressive cooling override above:
ASIC temp range: 54°C → 59°C (mean: 56°C)
VR temp range: 56°C → 62°C (mean: 59°C)
Fan PWM range: 85% → 100% (mostly 100%)
HW error rate: 0.21%
Five degrees cooler on the chip, six degrees cooler on the VR, slightly lower error rate, slightly higher noise. The trade is straightforward — if your Bitaxe lives on a desk where you can hear it, you’ll feel the noise difference; if it lives on a shelf or in a closet, you won’t.
The Bitaxe fan is a 4-wire PWM model rated for ~30,000 hours at full speed and substantially longer at lower speeds. So running at 100% PWM 24/7 cuts the fan’s design life from ~7 years to ~3.5 years. That’s still long enough that the fan probably isn’t your weakest link, but if you’re running aggressive cooling, expect to replace fans every couple of years.
Dust is a bigger killer than runtime. A dusty fan runs at the same RPM but moves less air, the chip runs hotter, the auto curve ramps to 100% earlier, and you accelerate wear. Compressed air on the fan and heatsink fins every quarter is the right cadence.
Pull up your AxeOS fan settings and look at min/max temp. If you’re overclocked past 550 MHz, drop the min temp to 40°C and the max temp to 55°C and watch what happens to VR temp over the next 24 hours. Most owners see VR temp drop into the safe zone and HW error rate drop along with it.
If you’re stock or near-stock, leave the defaults. The auto curve was tuned for that operating point and it does fine.
Try it yourself: Bitaxe Baller is a free Mac app that surfaces these recommendations automatically across your fleet — live monitoring, tuning suggestions, pool config, all in a native window. Open source on GitHub.