Keypad 4X5 Button Membrane Sealed

AED 19.95



The 4x5 Matrix Sixteen-Key Membrane Switch Keypad is a user-friendly input solution. With four additional keys compared to standard 4x4 keypads, this matrix keypad opens up possibilities for more features in your projects. Boasting nine outputs, it utilizes the "Scan Mode" to determine which button has been pressed. This keypad is compatible with popular platforms such as Arduino, AVR, PIC, STM, and Raspberry Pi.



  • Extended Key Count: 4x5 matrix design provides a total of sixteen keys.Four additional keys compared to standard 4x4 keypads for increased functionality.
  • Compatibility: Compatible with popular development platforms: Arduino, AVR, PIC, STM, and Raspberry Pi.
  • Nine Outputs: Provides nine outputs, enhancing project flexibility and functionalities.
  • Easy Integration with Arduino: Simplifies integration with Arduino through provided libraries and clear setup instructions.
  • Customizable Key Functions: Each key has a defined function in the provided Arduino code, allowing easy customization.
  • Compact Design: Panel size of 75 x 85mm and a length of 18cm for a space-efficient solution.
  • Reliable Construction: Designed with quality materials for durability and longevity in various project environments.



  • Panel Size: 75 x 85mm
  • Length: 18cm
  • Insulation Resistance: 100MΩ at 100V
  • Withstand Voltage: 250V Rms. (50-60Hz minimum)
  • Storage Temperature: +15°C to +35°C
  • Storage Humidity: 70-90%


Connecting the Keypad With Arduino: To integrate the keypad with Arduino, follow these steps:

  1. Download the necessary libraries:
  2. Add the libraries to the Arduino IDE by navigating to Sketch > Include Library > Add.ZIP Library.
  3. Upload the provided Arduino code.

Arduino Code:

#include "Wire.h"
#include "LiquidCrystal_I2C.h"
#include "Keypad.h"
LiquidCrystal_I2C lcd (0x27, 20, 4); // LCD2004

const byte numRows = 5; // Number of rows on the keypad
const byte numCols = 4; // Number of columns on the keypad
char keymap[numRows][numCols] =
byte rowPins[numRows] = {10, 9, 8, 7, 6};
byte colPins[numCols] = {2, 3, 4, 5};
Keypad myKeypad = Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols);
String numstr = "";

void setup()
 lcd.init(); // Initialize the LCD
 lcd.print("start LCD2004");

void loop()
 lcd.setCursor(0, 0);
 lcd.print("S187:4x5 20 Keypad");
 char keypressed = myKeypad.getKey();
 if (keypressed != NO_KEY)
   lcd.setCursor(0, 1);
   lcd.print("keypressed=" + (String)keypressed + " ");
   switch (keypressed)
     // Handle different keypress scenarios
   if (numstr != "")
     lcd.setCursor(0, 2);
     lcd.print("numstr=" + (String)numstr + " ");


Video Tutorial: