Klipper won't PWM a fan pin

Basic Information:

Printer Model: Custom (Modified Gigabot XLT3+)
MCU / Printerboard: BTT EBB SB2209 CAN (RP2040)
Host / SBC: Raspberry Pi 3 B+
klippy.log

klippy_fan_pwm.log (106.8 KB)

Describe your issue:

Sorry for what is probably a simple issue. I am trying to use a 4-pin fan with the BTT SB2209 CAN (RP2040) board. The board has a connector for this, and GPIO15 is connected (through a 5V buffer) to the PWM pin on the connector.

if I define this pin as a generic output pin, it appears to work properly. I am able to see voltage at that pin with my multimeter, and it varies based on the PWM value given.

[output_pin fan_pwm]
pin: EBBCan:gpio15
pwm: True

However, if I define this as the control pin for a fan, it does not work.

[fan]
pin: EBBCan:gpio15

No matter what I set the fan speed to in the frontend, I see 0V on that pin.

What am I doing wrong? Is there something different about how a PWM signal is generated when the pin is setup for a fan vs as a generic output?

Do you have another [fan] in your cfg? Try [fan_generic].

Thanks for the suggestion. Switching it to a generic fan seems to work:

[fan_generic test_fan]
pin: EBBCan:gpio15

However, this fan is intended to be the part cooling fan, which from my understanding is what the [fan] section is defining. Is there something different about how I need to define the [fan] compared to [fan_generic]?

Edit: Thanks for the help, I figured I was doing something dumb :P. The problem was that I had another [fan] section defined on my other MCU. Removing that section made things work as I expected.

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.