This bug makes these chips practically useless for high-impedance inputs such as touch sensors and multi-drop buses. Basically anything with an impedance above 8,2 kΩ. This is really a problem.
shrug and for those, limited, situations you could insert a buffer chip between signal and Mcu, or add an RP2040 chip, or just use an RP2040. These things are so dirt cheap that even the workarounds aren’t expensive.
And for the vast majority of cases the chip is fine, I2C is fine, the ADC is fine (despite what hackaday says), the SPI is fine, GPIO output is fine, GPIO input-with-pull-up is fine, GPIO input-with-pull-down needs a stronger pull than usual, 4K7 works great.
The use-cases where you have problems are being blown way out of proportion IMHO. All chips have errata, there are workarounds to most of this one’s issues, and there are alternate solutions for the few cases where it can’t be worked around. This is normal.
I’d also point out that there’s a guy on the RPi pico forum who’s successfully linked a touch-sensor input to the RP2350 without problems…
Agreed with the sentiment that this isn't that bad. As far as chip errata go, it's definitely unusually broad impact. So yeah, it's an abnormally bad bug. But for your average Pi Pico user, they still will never notice. The only possible thing I could imagine your average micropython tinkerer needs to know is "use pullups not pulldowns with buttons on the Pi Pico 2". Everything the entry level hobbyist is likely to encounter is a sufficiently strong drive to avoid the issue. Capacitive touch buttons might not work without external components, but I don't know.
Bigger picture, RPi is doing their third ever chip fab. The errata (silicon bug) list for the prior RP2040 is shorter than some I've seen from companies five times their age.[1] This issue isn't a logic error and wasn't going to be found by digital simulation. This is analog weirdness. Their documentation, including of errata, is among the best I (moderately experienced hobbyist) have ever encountered for a microcontroller. RPi is doing an excellent job and this is a but a hiccup. Maybe it's concerning for industrial customers, but as a hobbyist I'm still excited for my Pico 2 to arrive.
[1] Favorite errata warstory: Radio chip will lock up and need to be power cycled if a received packet has a particular corrupt length field, one bit flip away from one we used. Official solution: don't allow packet corruption. Turns out radios don't work like that.
If they hover around 2V, the means no mosfet gates too without an additional pull up/down? Seems like an issue that couldn’t possibly have made it past the first QC test.
spacedcowboy|1 year ago
And for the vast majority of cases the chip is fine, I2C is fine, the ADC is fine (despite what hackaday says), the SPI is fine, GPIO output is fine, GPIO input-with-pull-up is fine, GPIO input-with-pull-down needs a stronger pull than usual, 4K7 works great.
The use-cases where you have problems are being blown way out of proportion IMHO. All chips have errata, there are workarounds to most of this one’s issues, and there are alternate solutions for the few cases where it can’t be worked around. This is normal.
I’d also point out that there’s a guy on the RPi pico forum who’s successfully linked a touch-sensor input to the RP2350 without problems…
iracigt|1 year ago
Bigger picture, RPi is doing their third ever chip fab. The errata (silicon bug) list for the prior RP2040 is shorter than some I've seen from companies five times their age.[1] This issue isn't a logic error and wasn't going to be found by digital simulation. This is analog weirdness. Their documentation, including of errata, is among the best I (moderately experienced hobbyist) have ever encountered for a microcontroller. RPi is doing an excellent job and this is a but a hiccup. Maybe it's concerning for industrial customers, but as a hobbyist I'm still excited for my Pico 2 to arrive.
[1] Favorite errata warstory: Radio chip will lock up and need to be power cycled if a received packet has a particular corrupt length field, one bit flip away from one we used. Official solution: don't allow packet corruption. Turns out radios don't work like that.
SV_BubbleTime|1 year ago
irdc|1 year ago