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.

  • 1
    \$\begingroup\$ This 2.15V is possibly the avg duty cycle of a positive pulse row enable , which is missing. Although DMM pulse readings are never accurate. Tracing invisible tracks can be done sometimes with >100 MHz 100mV AC injection at endpoint 100mV and sniffer 2cm diameter shorted loop probe along tracks with some skill, maybe to find discontinuity in track. \$\endgroup\$ Apr 5, 2017 at 21:45
  • \$\begingroup\$ @TonyStewart.EEsince'75 I highly doubt I have the skill required to do that, to be honest I don't even understand what half of it means. Would somehow externally injecting those 2.15V to the non working keys enable them? I'm assuming that's a pretty stupid idea, but who knows. I'm open to any hacky solutions; if all else fails I will probably sacrifice the F keys row, jumper wire the non working keys to the F keys and remap them on my OS. The non working keys typing by themselves would still be an issue though. \$\endgroup\$
    – Wyse
    Apr 5, 2017 at 22:18
  • \$\begingroup\$ it needs the correct row pulse \$\endgroup\$ Apr 5, 2017 at 22:20
  • \$\begingroup\$ @TonyStewart.EEsince'75 What do you mean by "pulse"? \$\endgroup\$
    – Wyse
    Apr 5, 2017 at 22:36
  • \$\begingroup\$ Each row is sequenced in time by a row pulse while columns are shared by many keys. _ - _ _ - _ _ - _ _ - _ _ \$\endgroup\$ Apr 5, 2017 at 22:42

1 Answer 1


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)

  • \$\begingroup\$ Thanks for the input. I tried looking at the pins with a magnifying glass (that's all I have at the moment) however I can't really see any kind of visible anomaly on them. Nevertheless, I attempted to push them down with a piece of plastic but it doesn't seem to have any effect. I also found a pdf of the microcontroller (link, the model is HT68FB560), not sure if that can help though. I also did some voltage tests while the board was on, will add the results to the main post. \$\endgroup\$
    – Wyse
    Apr 5, 2017 at 21:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.