Overview
The Raspberry Pi PoE HAT fan does not spin consistently when powered on. This is normal behavior - not a defect.
The fan is controlled by software and only starts spinning when the Raspberry Pi reaches a certain temperature.
Temperature-controlled fan
How the PoE HAT fan works:
- Software-controlled: The fan speed is managed by Raspberry Pi OS based on CPU temperature
- Activates when hot: The fan only turns on when the Pi gets warm enough to need cooling
- Variable speed: The fan runs at different speeds depending on temperature
This intelligent fan control saves power and reduces noise when the Pi doesn't need active cooling.
Fan speed thresholds
The PoE HAT fan operates at these temperatures:
- 104°F (40°C): Fan activates at slow speed
- Higher temperatures: Fan speeds up as temperature increases
- Below threshold: Fan is off (silent operation)
Testing the fan:
To verify your fan works, run a CPU-intensive task to raise the temperature:
stress --cpu 4 --timeout 60s(You may need to install stress first: sudo apt install stress)
Monitor temperature with:
vcgencmd measure_tempThe fan should spin up once the temperature crosses 104°F.
Operating system requirement
Important: The PoE HAT is only intended for use with Raspberry Pi OS. You may need alternative software control if you're using another operating system such as Ubuntu.
For non-Raspberry Pi OS users:
- Manual control required: Other operating systems may not have built-in PoE HAT fan support
- GPIO fan control: You may need to configure GPIO-based fan control manually
- Check distribution docs: Look for PoE HAT support in your OS's documentation
Further help
If your fan never spins even when the Pi is hot:
- Check connections: Verify the PoE HAT is firmly seated on the GPIO pins
- Verify PoE power: Make sure your PoE switch/injector is providing power (Pi should boot without separate power supply)
- Update Raspberry Pi OS: Run
sudo apt update && sudo apt full-upgradeto get the latest fan control software - Test under load: Run CPU-intensive tasks to raise temperature and trigger the fan