Here is my circuit design for Arduino keypad, using only 1 analog pin (instead of 7 serial pins), 6 resistors (can be reduced to 5) and 1 capacitor:
Battery, analog: Up to 4 350 Ω load cells, 5V Excitation Keypad 8 function keys, 4 navigation keys, 12-key alphanumeric keypad, On/Off button Memory Battery-backed internal Communication Options Standard COM1 RS-232, isolated Option Slot 1 COM2 RS-232/485, isolated COM2 + D I/O RS-232/485, isolated + 2 inputs and 4 outputs (analog version only). Full-size analog mechanical keyboard. Flaretech switches (linear & clicky). Available in: US-ANSI. Ergonomic joystick gaming keypad with fully adjustable towers that fits perfectly to your hand. Joystick for 360 movement, 26 programmable buttons, easy to use Azeron software. The “analog” label is what makes the Wooting One standout. It is its main feature along with some other useful features. Design: The design is a standard tenkeyless keyboard without a number pad. I had no gripes or problems with the design, although a number pad would have been a nice addition. You can download the library and sketch from my blog here: and cheap Arduinos and sensors: ht.
And now for the full story:
I decided it’s time to add a keypad to my Arduino playground. Usually, those simple keypads come with 7 pins (actually 9, but 2 are not connected to anything on 3×4 keypads) which are connected to Arduino like this:
I wanted to use less pins as possible, so I thought of getting 74hc165, but then I decided it’s time for a new challenge – resistors, and I went with something more like this:
Gaming Keypad Analog Stick
![Analog keypad lock Analog keypad lock](/uploads/1/1/7/7/117774260/625573998.jpg)
As you can see it this diagram (and others found on the web), one can connect his keypad via 1 analog pin, using allkindof resistors schemes. I decided to build my own with the resistors I already have at home. My 1st setup worked fine, but resistors differentiation wasn’t enough and 2 keys (1 and 5) were showing same value when pressed. So I went along and fixed that, and the working result is the 1st diagram you saw in this post. Final shopping list follows:
Shopping List
Tartarus Pro Manual
Amount | Part Type | Properties |
---|---|---|
1 | Ceramic Capacitor | package 100 mil [THT, multilayer]; capacitance 0.01µF; voltage 5V |
3 | 330 Ω Resistor | package THT; tolerance ±5%; bands 4; resistance 330Ω; pin spacing 400 mil |
2 | 2.2k Ω Resistor | package THT; tolerance ±5%; bands 4; resistance 2.2kΩ; pin spacing 400 mil |
1 | 4.7k Ω Resistor | package THT; tolerance ±5%; bands 4; resistance 4.7kΩ; pin spacing 400 mil |
Keypad Analog Pin
Here is the Arduino code I’m using for my keypad. Check values to meet your own: