did you ever encounter some RP2040 GPIOs just not... working? i.e. you tell it to output a logic high level, but the actual pin is close to GND? we have some pocket keyboards that are like that. there is no short on the board. so i'm wondering how this can happen. damage during soldering, handling?
Conversation
Notices
-
minute (mntmn@mastodon.social)'s status on Thursday, 09-May-2024 22:31:15 JST minute -
Timon 🛠 (timonsku@mastodon.social)'s status on Thursday, 09-May-2024 22:57:32 JST Timon 🛠 @mntmn hrm, maybe blown ESD diode. Damage like that from reflow feels unlikely
-
minute (mntmn@mastodon.social)'s status on Thursday, 09-May-2024 23:00:52 JST minute @timonsku i _think_ keyswitches were handsoldered by pcbway. maybe there was damage during that process/handling
-
minute (mntmn@mastodon.social)'s status on Thursday, 09-May-2024 23:24:00 JST minute @Laberpferd @timonsku with my fluke, ohmmeter, i measure a resistance to GND on the broken pins, varying from like 10k to 10M, and on the working pins there is no measurable resistance
-
Laberpferd (laberpferd@sueden.social)'s status on Thursday, 09-May-2024 23:24:06 JST Laberpferd @mntmn @timonsku
I would also suspect ESD damage as the first thingYou could use an low voltage ohmmeter (i dont know the exact term) that applies less than 0,6V and then test all the pins on an unpowered chip
If you see any observable current, there is definitely either a short on the PCB or a blown diode inside the chip
-
minute (mntmn@mastodon.social)'s status on Thursday, 09-May-2024 23:29:53 JST minute @Laberpferd @timonsku ah, on one board there is actually a short to GND (1.7 ohms) on that pin
-
Timon 🛠 (timonsku@mastodon.social)'s status on Thursday, 09-May-2024 23:35:10 JST Timon 🛠 @mntmn @Laberpferd You can use the diode mode of the multimeter too to get the voltage drop of the diode and compare it to a working pin, will likely be very low or nothing at all.
-
minute (mntmn@mastodon.social)'s status on Thursday, 09-May-2024 23:44:22 JST minute @timonsku @Laberpferd diode measurement from GND to the pins is actually fine hm
-
Marcus Müller (funkylab@mastodon.social)'s status on Thursday, 09-May-2024 23:56:16 JST Marcus Müller @mntmn @Laberpferd @timonsku hm, but if that ESD diode became self-sacrificial, that would either be a severely underdimensioned protection, or a serious ESD surge that I wouldn't expect pcbway to have on series prod.
Q: is there a reasonable way you could estimate the worst-case negative pulse amplitude caused by opening a keyswitch under load? How much current do you put through your keys while scanning the key matrix? What's the (order of) inductivity of the longest trace? -
minute (mntmn@mastodon.social)'s status on Friday, 10-May-2024 00:00:04 JST minute @funkylab @Laberpferd @timonsku so far i think these keyboards are DOA, it doesn't happen because of continued use. assembled, flashed, some columns not working--dead pins.
the circuit is like: column GPIO outputs logical 1 (3.3V). on closed switch, this connects through a diode to a row GPIO input. on the broken boards, one or two of the column GPIO outputs cannot produce a logical 1.
-
minute (mntmn@mastodon.social)'s status on Friday, 10-May-2024 00:00:26 JST minute @funkylab @Laberpferd @timonsku i just desoldered the first chip from a board. the problem is not on the board itself, there are no shorts. so it is the chip
-
minute (mntmn@mastodon.social)'s status on Friday, 10-May-2024 00:02:26 JST minute @funkylab @Laberpferd @timonsku flipped desoldered rp2040 over. multimeter beeper from pin 8 (the output) to GND pad beeps (1 ohm). chip is damaged
-
minute (mntmn@mastodon.social)'s status on Friday, 10-May-2024 00:02:41 JST minute @azonenberg @funkylab @Laberpferd @timonsku oh yes, that would be mega awesome. lets do it!
-
Andrew Zonenberg (azonenberg@ioc.exchange)'s status on Friday, 10-May-2024 00:02:42 JST Andrew Zonenberg @mntmn @funkylab @Laberpferd @timonsku Innnteresting.
If you want to send me one or two of the fried chips I can do a decap and see if there's any obvious damage?
-
Olimex (olimex@mastodon.social)'s status on Friday, 10-May-2024 10:32:57 JST Olimex @mntmn do you initialize for GPIO function? There are several registers to set, sometimes default values may change
-