Piornman5 Fan Issues

Can you provide us with a video of the problem, so that we can analyze the problem.
Now the new version of bookworm system, is fully compatible with pironman5, no need to downgrade operation.

Here are videos, links expire Feb 1.

Please contact our after-sales email: service@sunfounder.com
We will send you a replacement IO expansion board.

Just tested the downgrade on RaspOS 64bit and the fans and RGB is not working like they should.

I fixed mine. Similar fan and led issues. The dashboard was not working. I removed the Pironman5 directory, and reinstalled the Pironman5 software. I don’t really remember the sequence because I was trying for weeks to get it fixed. Somehow after rebooting, it came up correctly. Now the fan turns on at 50C I can control the lights and etc. via the dashboard. I think the best way to deal with this problem is for SunFounder Pironman5 experts to give exact instructions on how to remove the Pironman5 software and reinstall it. The instructions are weird because sometimes it mentions pironman and other times it mentions pironman5.

  1. Sorry, there is no command to uninstall the software.
    You can use the following command:
    cd ~
    sudo rm -rf pironman5
    Delete the software, and then follow the tutorial steps to download and install the pironman5 software:
    cd ~
    git clone GitHub - sunfounder/pironman5: Code for Raspberry Pi 5 case (Pironman5)
    cd ~/pironman5
    sudo python3 install.py
  2. The instructions are weird because sometimes it mentions pironman and sometimes it mentions pironman5?
    Is there something wrong with our tutorial instructions?
    It is recommended that you point out the problem in detail so that we can correct it. It is best to provide us with the exact path.

should produce output and not return an “No such file or directory” error.My system returns me this exact error, what am I missing??

Which pironman5 did you bought? Which OS are you using? You need to install the good software version depending of the model variant. And follow the instructions.

Hey guys little late here…

## :warning: IMPORTANT: This is a WORKAROUND, not an ideal solution

The solutions below work but require fighting against the pironman5 service’s automatic control. **This highlights a design limitation that needs a proper fix from SunFounder.**

System Information

**Tested on:**

- **Hardware**: Pironman 5 MAX

- **OS**: Ubuntu 25.10

- **Kernel**: 6.17.0-1003-raspi

- **pironman5**: Version 1.2.22 (from service logs)

## Issue Summary

The CPU cooler (PWM fan) on Pironman 5 MAX is not spinning even though the system is running. This is because the PWM fan is in automatic temperature-controlled mode with a default threshold of 50°C, but the CPU temperature for me was idling around 43-45°C, which is below the activation threshold.
Additionally, the pironman5 service has a “sync” feature that syncs all fans (including GPIO fans) with the PWM fan state. When the PWM fan is off, all fans are off, even if you set GPIO fan mode to “Always On” (mode 0). **This sync behavior cannot be disabled and overrides manual settings.**

## Root Cause

1. PWM fan is controlled by Linux thermal subsystem via trip points

2. Default first active trip point (`trip_point_1_temp`) is set to 50°C (50000 millidegrees)

3. CPU temperature is typically 43-45°C at idle, below the threshold

4. pironman5 service logs show: “PWM Fan is supported, sync all other fan with pwm fan”

5. This sync behavior means you can’t independently control fans when PWM fan is off

## Workaround Solutions

### Option 1: Lower Temperature Threshold (Recommended for Variable Speed)

Lower the thermal trip point threshold to 32°C so the fan is always on while still using the automatic thermal control system. This allows the fan to run at variable speeds based on temperature.

### Quick Fix (Manual)

```bash

echo 32000 | sudo tee /sys/class/thermal/thermal_zone0/trip_point_1_temp

```

### Persistent Fix (Survives Reboots)

Create a systemd service file `/etc/systemd/system/fan-threshold.service`:

```ini

[Unit]

Description=Set PWM Fan Temperature Threshold to 32°C

After=pironman5.service

Wants=pironman5.service

[Service]

Type=oneshot

ExecStart=/bin/bash -c ‘echo 32000 > /sys/class/thermal/thermal_zone0/trip_point_1_temp’

RemainAfterExit=yes

[Install]

WantedBy=multi-user.target

```

Then enable and start it:

```bash

sudo systemctl daemon-reload

sudo systemctl enable fan-threshold.service

sudo systemctl start fan-threshold.service

```

### Verification

```bash

# Check threshold was set

cat /sys/class/thermal/thermal_zone0/trip_point_1_temp

# Should show: 32000

# Check fan is running

cat /sys/class/hwmon/hwmon3/pwm1

# Should show: > 0 (fan is on)

```

### Option 2: Force Maximum Speed (Requires Continuous Enforcement)

If you need the fan at 100% speed all the time, you must use a systemd service that continuously overrides the pironman5 service every 5 seconds. This is not ideal but works.

Create `/etc/systemd/system/fan-max-speed.service`:

```ini

[Unit]

Description=Force CPU Cooler Fan to Maximum Speed

After=pironman5.service

Wants=pironman5.service

[Service]

Type=simple

ExecStart=/bin/bash -c ‘while true; do echo 2 > /sys/class/hwmon/hwmon3/pwm1_enable 2>/dev/null; echo 255 > /sys/class/hwmon/hwmon3/pwm1 2>/dev/null; sleep 5; done’

Restart=always

RestartSec=5

[Install]

WantedBy=multi-user.target

```

Then:

```bash

sudo systemctl daemon-reload

sudo systemctl enable fan-max-speed.service

sudo systemctl start fan-max-speed.service

```

**:warning: Note:** This service runs continuously and fights against pironman5 service. This is a workaround, not a proper solution.

## Why These Workarounds Work

**Option 1 (Temperature Threshold):**

- Uses the existing thermal control system

- Fan still responds to temperature changes (just starts earlier)

- Works with pironman5 service’s sync behavior

- Survives reboots with systemd service

- CPU is always above 32°C, so fan stays on

**Option 2 (Force Max Speed):**

- Continuously overrides pironman5 service every 5 seconds

- Fan runs at 100% speed regardless of temperature

- Requires a service running constantly (resource overhead)

- **This is clearly a workaround, not ideal**

## Technical Details

- **Trip Point**: `trip_point_1_temp` (first active threshold)

- Note: `trip_point_0_temp` is the critical threshold at 110°C, not the fan activation point

- **Default**: 50000 millidegrees (50°C)

- **New Setting**: 32000 millidegrees (32°C)

- **PWM Fan Path**: `/sys/class/hwmon/hwmon3/pwm1`

- **Thermal Zone**: `/sys/class/thermal/thermal_zone0/`

Just thoughts