Electronic – PCI Express powered fan controller


I would like to make a PWM fan controller that uses a 555 timer and be placed in a Gen 2 PCI Express x1 slot, while pulling the power from the slot as well.

I'm not looking to send or receive any signals to the PCI Express bus. I only want to pull power from the 12V.

Is this possible? Will there be any protection mechanism that prevent me pulling power from the slot without sending anything to the bus?

Best Answer

standard PCIe slots will carry 12V, so yes, that'll work. Spec says PCIe x1 devices can draw up to 10W. (You can ask for 25W, but that requires "speaking" PCIe)

Still sounds really awkward, the combination of a NE555 and modern computer hardware – in the end, you'll need to design a board to plug into the PCIe slot, just to have 12V, just to drive (a very probably 5V) fan...

If none of the on-board fan controllers work for you (mothern mainboards tend to have more fan controllers than people have fans), I'd simply replace the 555 with e.g. an STM32 with integrated USB PHY – you're designing a board anyway, and that way, you can design something that is actually usable from the PC (use the internal USB headers) software.

Personally, I'd try to go yet another route: The PCIe connector doesn't only have power lines and PCIe lanes, but also SMBUS pins – and that's the bus your mainboard uses to connect things like thermal sensors, and: fan PWM controllers! Basically, SMBUS is I²C, and any recent microcontroller will speak that, but uses a whole protocol stack on top – but there's MCU vendors that offer libraries to enumerate on the bus and act as a proper device, and it's very likely not that hard to make use of that.