I have a 4x4 Keypad that has me stumped. I'm used to taking my multimeter to the pins on continuity mode and easily determining which pins are which row/col. This one has me stumped. I've tried continuity tests, measuring voltage drops, following the only visible markings/traces on the board, and I've come up with nothing. I also tried googling the markings, but didn't have luck.
It has 16 buttons which each come out the back (as A1-4 .. D1-4), 2 what appear to be diodes for each, and then ultimately ends up with the 7x2 pin outputs.
Does anyone recognize this as something obvious, or have any tips on how I'd go about figuring out how it works? I really want to use this keypad instead of one of my others, and don't mind taking the time. (I've sank a lot already.)
You are looking for the obvious, but it could be a major design mistake. This was made long before there was internet, so there is probably very little information about it online.
16 buttons
32 diodes
14 pins (is every pin used ? I think not)
Are all keys connected to a single "COM" pin ? Perhaps that is the GND.
A normal keypad would connect the rows and columns.
This one might pull down a row (with a diode) and a column (with another diode) to the COM.
The resistors to keep those lines high are probably not on the keyboard module.
8 signal lines will be needed, plus a COM pin, that is 9 pins.
Does your multimeter have a diode test ? With a beep ? And the black wire is the GND for the diode test ?
Connect the black wire to COM, and try if any of the pins is connected to COM (via a diode) by pressing a key.
What if something inside the keys has deteriorated, and they don't make contact at all ?
For example a metal spring or other iron thingy, that has rusted away long ago.
Do you know what kind of keys they are ? I suppose you don't have a spare key to open ?
My betting is that the "matrix" is generated by the arrangement of those two diodes - notice how there are two diodes to each pin. Check with multimeter between the pins on the header and the outer sides of the diodes. I think you will find that each of the 16 buttons is connected - through the two diodes dedicated to it - to one of 4 "row" pins, and one of 4 "column" pins. I'd reckon that the pins are supposed to be externally pulled up. An external ground is also required.
This is in contrast to the normal keypad, where a row and column are connected to eachother by the buttons, and you have to do a bit of work to figure out which key is pressed.
The usual keypad library won't work here (though you can do it with just 1 read of those 8 pins, which you could put on a single port, enable PCINTs for, and read in the interrupt with a single direct read of the PINx register - I think it's easier to read in theory - also more expensive to build.)