Membrain Keypad 3x4 Numeric Matrix Array

  • RM6.50

  • Product Code: Keypad Membrain 3x4
  • Availability: In Stock

Punch in your secret key into this numeric matrix keypad. This keypad has 12 buttons, arranged in a telephone-line 3x4 grid. It's made of a thin, flexible membrane material with an adhesive backing (just remove the paper) so you can attach it to nearly anything. The keys are connected into a matrix, so you only need 7 microcontroller pins (3-columns and 4-rows) to scan through the pad.


Key Features:

  • Ultra-thin design & adhesive backing provides easy integration to any project
  • Excellent price-performance ratio
  • Easy communication with any microcontroller


Application Ideas:

  • Security systems
  • Menu selection
  • Data entry for embedded systems



  • Max. Rating: 35V DC
  • Current: 100mA
  • Interface: 7-pin access to 3x4 matrix
  • Insulation Resistance: 100M Omh, 100V
  • Dielectric Withstand: 250VRms (50-60Hz, 1min)
  • Key Operating Force 150-200N
  • Rebound time 1 (ms)
  • Life Expectancy: 1 million closures
  • Dimensions: Keypad: 70mm x 77mm
  • Cable: 2.0 x 7.0 cm
  • Operating temperature: 0°C to 50°C


How it works
Matrix keypads use a combination of four rows and four columns to provide button states to the host device, typically a microcontroller. Underneath each key is a pushbutton, with one end connected to one row, and the other end connected to one column. 



Connect Membraned to Arduino

When connecting the pins to the Arduino board, we connect them to the digital output pins, D8-D2.

You can download the Keypad library here: Keypad Library. When you download, change the name to folder to something other than Keypad. If the folder and the file you are importing have the same name, it won't work.

/*3x4 Matrix Keypad connected to Arduino
This code prints the key pressed on the keypad to the serial port*/

#include <Keypad.h>

const byte numRows= 4; //number of rows on the keypad
const byte numCols= 3; //number of columns on the keypad

//keymap defines the key pressed according to the row and columns just as appears on the keypad
char keymap[numRows][numCols]=
   {'1', '2', '3'},
   {'4', '5', '6'},
   {'7', '8', '9'},
   {'*', '0', '#'}

//Code that shows the the keypad connections to the arduino terminals
byte rowPins[numRows] = {8,7,6,5}; //Rows 0 to 3
byte colPins[numCols]= {4,3,2}; //Columns 0 to 3

//initializes an instance of the Keypad class
Keypad myKeypad= Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols);

void setup()

//If key is pressed, this key is stored in 'keypressed' variable
//If key is not equal to 'NO_KEY', then this key is printed out
//if count=13, then count is reset back to 0 (this means no key is pressed during the whole keypad scan process
void loop()
   char keypressed = myKeypad.getKey();
   if (keypressed != NO_KEY)

With this code, once we press a key on the keypad, it should show up on the serial monitor of the Arduino IDE once the code is compiled and uploaded to the Arduino board.

Write a review

Note: HTML is not translated!
    Bad           Good


Related Products

Tags: Keypad