Having a switch not output its expected keycode can be frustrating. Here are some tips to try when that happens.
First of all, check if you've soldered the legs of the switch itself. An easy mistake to check, and it happens to the best of us!
An entire row or column does not work
If an entire row or column does not work, check the solder joints on the microcontroller. You may have a bridge (when two or more pins are connected together by solder), or you may have a bad joint. Rework the joints as needed, and check again.
Sometimes, when more than one key activates on a press, it can be caused by a shorted switch or faulty diode. In case you can't find any bridged pads on the microcontroller, please follow the steps below for the offending keys.
A note on socketing
If you've socketed your microcontroller, you'll have used either diode legs or Mill Max pins to connect the microcontroller to the sockets. If you've followed the guide, you should have pressed these legs or pins firmly into the socket.
If you've followed the steps above and an entire row or column still doesn't work, remove your microcontroller from its sockets. You can do this by carefully using pliers or tweezers and using them as a lever to slowly push the microcontroller up from its sockets.
Then, view the microcontroller from the side. All the legs or pins should extend the same length outward from the microcontroller. If one or more legs are shorter, you should redo those legs to have the same length. You may do that by desoldering the leg, reseating the microcontroller into the sockets and performing the same steps as you did when socketing the microcontroller.
A single switch does not work
When a single switch does not work, follow the following steps.
Each switch has its own diode, often placed near it. Check that the black line on the diode is aligned with the square pad, or the white line on its footprint. If your diode isn't aligned properly, desolder it and place it in the correct orientation. Your kit should have included enough diodes to just replace it if reusing it would be difficult.
Also check whether the diode is still intact. For a through-hole diode (a glass body with a metal leg on both sides), check if there aren't any cracks. These should be visible with the naked eye, you won't need a loupe for this. For SMD diodes, which are plastic, check if the housing hasn't molten.
When your diode is visibly not intact, it's wise to replace it with a new diode.
You might have a bridge, which is when solder spans across more pads or pins than it should. When a bridge occurs, electricity can flow to a place where it shouldn't, which can cause issues. You should check the following places for bridges:
- The switch: Check whether the pads at the corners are bridged. The pads should not connect. Three pads are for Choc switches, while the others are for MX and ALPS. Having them connected makes a switch not work.
- The microcontroller: Check each pin of the microcontroller, both on the top and on the bottom. Each pin shouldn't touch any other pin.
Check if you've soldered the connections of the switch. Even the best of us forget to solder those joints sometimes.
It might help to apply some more heat to the connection. This is also called reflowing. This can ensure that the pad and the pin make proper contact with one another.
If you've modded your switch, you may have inadvertedly bent the leaf of your switch. This part ensures a connection when you press down on the switch. If you're into switch modding, you'll likely know how this part works - desolder the switch, take the housing apart and see if the leaf looks like it should. If you haven't modded your switch, this likely won't be the issue you're experiencing.
A Defective Component
If you checked all of the above and your key still doesn't behave as expected, you might be dealing with a defective component. Most components do not deal well with excessive heat, and quite rarely a component never worked in the first place.
First, replace the diode. Verify whether that fixed it and if not, replace the switch. If that didn't fix it either, check the microcontroller again for bridges.
If you haven't been able to find a solution, do join the Discord server for chat support, or send an email to email@example.com. Pictures of your problem will surely help, so try to make some up-close pictures of the problem area and share them with us on Discord or email.