# How to read input from silicone calculator keyboard?

Hello World!

I need help reading the input of a silicone calculator keyboard with arduino. I want to read buttonpresses with my arduino but I don't know how I can realize this because I don't know how to connect the keyboard with my arduino. Can somebody help me please?

I have attached images of my silicone keyboard:

Engin

I don't know how I can realize this because I don't know how to connect the keyboard with my arduino.

Why not just buy a keyboard that uses standard connections? For that board, you'll need a connector that matches the one used by that board, connected to a PCB that breaks out the connections so that they can be connected to the Arduino. Probably more trouble than it is worth.

I disagree with giving up precisely because the OP is a noob and this should cause him to use his brain a little. Plus it's a kool keypad. I'm sure there is a reason he wants to use it beyond saving the \$3 a 4x4 membrane keypad costs.

If you haven't done a keypad before, consider this keypad and the Matrix library:

The way most two or three key keypads work is to have a common connection and one line per key and you put +5V on the common line and when it goes high on the line that represents a key you know it has been depressed.

For larger keypads like that 12 key one above, there are 4 connections for rows and 3 for columns. The way you read it is to hold all row pins at high impedance, put row 1 high, check the 3 column pins to see if any are depressed, note which are, then put row 1 into high impedance and move on to row 2. You are scanning the rows for depressed columns.

I don't have the time or inclination to deduce the pinout of that keypad from the images posted. It looks like signals are coming from one side with the solid lines to the side with the squigglies. Each squiggly is a key. I'd number each input on that ribbon connector and correlate it to each of the passthrough pads and then put that number on the switch side and correlate each key to the two lines that it connects. If you can't do it by just looking, a continuity tester should work fine. You need to know that, you will never find the data sheet for that keypad. So figure out the pinout and then apply lessons learned in the datasheet above.

Thank you so much for your help. I think it won't be easy to let this keyboard communicate with arduino but as you said, the silicone keyboard does certainly have a purpose because in my situation I can´t use a common keyboard because the chance of water damage. It will be better to buy a silicone keyboard made for arduino but I don´t know if they exist??? Do you know a silicone keyboard, which is suitable for arduino?

Thank you so much,

Engin

fbengo: Thank you so much for your help. I think it won't be easy to let this keyboard communicate with arduino but as you said, the silicone keyboard does certainly have a purpose because in my situation I can´t use a common keyboard because the chance of water damage. It will be better to buy a silicone keyboard made for arduino but I don´t know if they exist??? Do you know a silicone keyboard, which is suitable for arduino?

Thank you so much,

Engin

I really don't off the top of my head, I would search the heck out of eBay. With that said, I disagree again that this is a hard job. All keypads like this it work the same. You connect one one side of a set of switches to the Arduino and energize them one at a time, connect the other side as inputs and poll them one at a time. The only issue here is figuring the lines into the output set that has to be switched between high and high impedance and the other input set that has to be polled. And you have all the data in front of you, you just need a continuity tester or alternately a battery, resistor and LED (i.e. make your own continuity tester). Figuring the "pinout" of this keyboard should be a 10 minute exercise.

You can get these silicone calculators on www.dx.com for \$4. I might take a punt on one of these, I like the idea of a flexible keypad. Does anyone have a good idea how to connect to those conductive ink traces?

The connectors just seem to press the traces against a set of contacts, so you could either buy/scrounge the appropriate connector, or find/make a PCB with tracks in the right places and arrange for something to press the traces against it.