When the first Raspberry Pi rolled off the production line back in 2012 it sported a 26-pin expansion header that seemed to conceal endless possibilities. A later upgrade to the 40-pin header we have today unleashed a few more precious interfaces, but even then it’s still possible to run out. This was the problem faced by [woj], who needed a PWM line to drive a cooling fan but whose other work had used everything on the header. The solution? Dive into the other connectors on board looking for an unused GPIO.
Every full-sized Pi has a connector for the camera and the LCD screen, and to operate some of the functions of those peripherals they contain a few extra GPIOs that aren’t normally used by end users. If the camera or LCD is not being used then these lines are potentially up for grabs. In particular there’s a GPIO that turns the camera on or off that’s relatively easy to solder a wire to, and it was this one that fed the PWM line.
There are of course a few other ways to find some more lines on a Pi and indeed almost any microcontroller, with one of the many types of GPIO expansion chips. This trick is a particularly simple one though. and perhaps unsurprisingly it has surfaced here before.