Electrical – Faulty mechanical keyboard: Identifying “defective” ground connection on PCB

diodesgroundkeyboardmicrocontrollerpcb

So, I got a mechanical keyboard (Ajazz AK33) which had a problem since the start: a row of keys was either unresponsive or typing on its own; after reconnecting it a few times and restating my PC it started working fine, and it did for about three days.

Then I desoldered all the mechanical switches and LEDs, and soldered some other switches in. While the soldering/desoldering process was a bit rough, I don't believe I damaged anything on the PCB. Now, after reconnecting it, the same row which didn't work the first time started not working again.

After some snooping around on the PCB with a multimeter, I figured out what might be the problem (or at least something is different on the non-working row compared to the others): the upper switch contact of every key in the non-working row is directly connected to ground on the mini USB connector.

Here is a picture of the PCB (click the picture for larger version):

enter image description here

(Original image here)

All the little red dots are connected to each other (which I believe is normal, since all of the working rows are connected the same way and the keys are read in a matrix by the microcontroller) and to the same pin on the microcontroller (also normal). However they are all directly connected to ground on the mini USB connector, the bigger red dot, which I believe is not normal since all other rows seem to be connected to ground through a diode (my multimeter gives me a ~.580 to ~.640 one way reading on diode/continuity mode).

This also means that the pin of the non-working row is directly connected to ground on the microcontroller, that can't be good, right?

Also, each diode seems to be connected from the cathode to ground, and the same thing happens in the non-working row: each key in the non-working row gives me a ~.580 to ~.640 one way reading if I measure it from cathode to ground. However, if I measure it from the upper contact of the switch to ground, it gives me a direct connection while all the other working rows give me the same ~.580 to ~.640 one way reading.

There seems to be some kind of connection to ground on the non-working row which should not be there; what would be the best way to identify it, and/or possibly get rid of it? I tried following the traces on the PCB, but they are not clear at all.

EDIT: I did some voltage testing while the board was on, measuring the voltage on the switches' contacts: the working keys stay at a ~2.15 V when not pressed and drop to 0.00 V when pressed. The non-working keys, on the other hand, stay at ~0.08 V when not pressed and drop to 0.00 V when pressed.

Best Answer

Good effort, but my hunch is a lifted pad on the row enable from one of these pins. If you have a 10x eye piece, from a microscope , or really good eyes, you might see something, or press down with a wood or plastic tool gently on pads. or even your finger pressure.

Otherwise a cracked via or trace may be impossible to find without locating the row enable track on either side.

An open is more likely than a short here as a short might block all rows.

All it takes is a few "nm" to open from IS and it can bridge with capacitance with scan pulses. ( explaining possibly why restart affected results.) Otherwise expect ESD damage.... N.G.

Solder defects usually are 98% of all mfg defects and intermittent ones are harder to find. Usually IS insufficient solder, SB , solder balls , or BR, bridge are the notations we used in Contract Mfg. but large panels can crack vias from excessive warp or improper depanelization stress.

enter image description here

Keep up the good effort. With practice you can fix mine. ( I used to twist some to get working momentary (not recommended)