Raspberry Pi 4 Immich Server
Setup and settings for an 8GB RPI 4 Immich server with SSD and External HDD.
Noctua PWM (4 pin) 5V fan for cooling.
Open terminal then open the config file with nano:
sudo nano /boot/firmware/config.txtPWM settings
# Enable true PWM speed scaling on GPIO 12
dtoverlay=pwm-gpio-fan,fan_gpio=12
# Map specific temperatures to fan speeds (Scale: 0 to 255)
dtparam=fan_temp0=40000,fan_temp0_hyst=2000,fan_temp0_speed=000
dtparam=fan_temp1=50000,fan_temp1_hyst=3000,fan_temp1_speed=100
dtparam=fan_temp2=60000,fan_temp2_hyst=4000,fan_temp2_speed=150
dtparam=fan_temp3=68000,fan_temp3_hyst=5000,fan_temp3_speed=255
Explanation:
Line 1 (dtoverlay): Activates smart variable fan control (PWM) using physical GPIO pin 12.
Stage 0 (40°C): Fan stays completely off until the Pi warms up to 40°C.
Stage 1 (50°C): Fan kicks on quietly at 39% speed once the Pi reaches 50°C.
Stage 2 (60°C): Fan speeds up to 59% speed at 60°C for medium cooling.
Stage 3 (68°C): Fan blasts at 100% full speed (255) at 68°C to prevent overheating.
Troubleshooting:
Find immich – docker install folder:
sudo find / -name "docker-compose.yml" -path "immich" 2>/dev/nullWhen the results are back cd into the install directory then check docker status:
cd /opt/stacks/immich
sudo docker compose ps

