Do you need more GPIO for your Pi Pico project? A creative keyboard maker named HealthyCabinet found a way to unlock up to four new GPIO pins on the Raspberry Pi Pico or Pi Pico W. It requires a bit of soldering work, but nonetheless, it's a surprisingly simple modification.
Out of the box, both the Raspberry Pi Pico and wireless Pi Pico W feature 26 GPIO headers, which line the outsides of the circuit board. But as reported by Hackster.io, crafty maker HealthyCabinet discovered that 26 GPIO pins aren't enough for some projects---HealthyCabinet needed just one more pin to replace a mechanical keyboard's MCU with the Pico microcontroller.
After a look at the Pi Pico datasheet, HealthyCabinet noticed that four extra pins are utilized for semi-non-essential internal board functions:
- GP1029: IP Used in ADC mode (ADC3) to measure VSYS/3
- GPI025: OP Connected to user LED
- GPI024: IP VBUS sense - high if VBUS is present, else low
- GPI023: OP Controls the on-board SMPS Power Save pin
Because HealthyCabinet's project runs on USB power, it doesn't require VBUS sense (GPI024). It also doesn't need the power indicator LED (GPI025), which is primarily a quality of life feature.
After removing the resistors connected to these pins, HealthyCabinet soldered 26AWG wires in their place for easy GPIO access. Tests with a multimeter and a CircuitPython program confirm that these pins are still functional and controlled through software.
HealthyCabinet explains that, if a user needs even more GPIO pins, they can free the SMPS mode switch (GPI023) and VYSY voltage meter (GP1029). But the first modification requires a wire to ground or the 3v3 pin (for power equivalent to board-level voltage), and the former option requires dedicated USB power.
Unfortunately, modifications to the Pi Pico firmware are required to take full advantage of these extra pins. HealthyCabinet doesn't have a GitHub for this mod, but you can read all about it on the Raspberry Pi subreddit.
Source: HealthyCabinet (Reddit, Imgur) via Hackster.io