Raspberry Pi RP2350 microcontroller has a bug that causes faulty pull-down behavior on resistors
Raspberry Pi LTD recently released the Raspberry Pi RP2350, a microcontroller designed for use with the Raspberry Pi Pico 2 and other third-party RP2350-based products. However, a hardware bug was soon discovered that affects the onboard pull-up resistors’ voltage control. Specifically, when the GPIO pins are set to 3.3 volts, they fail to return to 0 volts, instead getting stuck at 2.1 volts. This issue is due to unintended latching behavior, which prevents the GPIO pins from properly discharging to ground.
The bug was first identified by Ian Lesnet, known as Bus Pirate on Mastodon, and has since been documented in the official RP2350 datasheet. The datasheet clarifies that the issue impacts the pull-up Serial Wire Debug (SWD) pads but does not affect Quad Serial Peripheral Interface (QSPI) pads, as they lack the problematic circuitry. Additionally, the USB PHY pull-down resistors are not impacted by this issue.
To address the problem, there are two suggested solutions: one from Raspberry Pi LTD and another from Lesnet. The Bus Pirate solution involves adding external pull-down resistors, which effectively fixes the issue but requires more board space. Raspberry Pi‘s solution involves enabling an input buffer before a read operation and disabling it afterward. This software-based workaround is more suitable when space constraints prevent the use of external resistors. However, many users may find the Bus Pirate solution more straightforward and effective unless they need to use the internal pull-down resistors for a specific reason.
According to Hackaday, Raspberry Pi engineer Luke Wren attributed the oversight to an external IP block vendor responsible for the flawed circuitry that wasn’t caught during validation tests. As a result, Hackaday recommends using the RP2350 A0 version only as an “engineering sample” and opting for the A3 or B0 versions for production purposes. Enthusiasts and developers are hopeful that Raspberry Pi will soon release a revision of the microcontroller that resolves this voltage issue entirely. In the meantime, users should be aware of this known problem when working with the RP2350.
Read more: Raspberry Pi RP2350 microcontroller has a bug that causes faulty pull-down behavior on resistors