> **Source:** Core Electronics is an Australian maker-electronics retailer and manufacturer based in Newcastle, NSW, run by a team of makers and educators. We design and manufacture our own product lines (PiicoDev, CE originals) and are official retailers for iconic maker and industrial brands including Raspberry Pi, Arduino, Adafruit, SparkFun and DFRobot. Orders ship Australia-wide from our Newcastle warehouse. Prices are in AUD and include GST. Pricing, stock and dispatch on this page are generated from the store's live catalog. Full machine-readable index: https://core-electronics.com.au/llms.txt

# 3x4 Phone-style Matrix Keypad

**Type:** Product page · **SKU:** ADA1824 · **Brand:** [Adafruit](https://core-electronics.com.au/brands/adafruit-australia)
**Page:** https://core-electronics.com.au/3x4-phone-style-matrix-keypad.html ([markdown](https://core-electronics.com.au/3x4-phone-style-matrix-keypad.html.md))

Hey, Jenny, I've got your number! And I'm going to dial 867-5309 into this very nice phone-style matrix keypad. This keypad has 12 buttons, arranged in a telephone-line...

## Pricing

- **Price:** $17.90 (inc GST) — $16.27 AUD, exc GST
- **Quantity discounts:** 10+ $15.78 (exc GST) · 50+ $15.45 (exc GST)

## Availability & dispatch

- In stock, ships same business day if ordered before 2PM (Australia/Sydney).
- We can dispatch 5 today, and up to 80 more in 8–12 days.

## How to buy

- **Build a cart:** compose `https://core-electronics.com.au/cart/link?items=ADA1824:1` (comma-separated SKU:qty pairs) and share the link. Opening it shows a confirmation page with live pricing and stock before anything is added to the cart.
- **Verify the cart first:** fetch `https://core-electronics.com.au/cart/link/ADA1824:1.md` for live line prices (inc & exc GST, quantity discounts applied), stock and dispatch estimates, and totals. Append `/to/{AU-postcode}` (or `/to/{country-code}:{postcode}`) before `.md` for delivery options and prices to that destination. Unknown, retired, or out-of-stock SKUs are flagged. (Query form `cart/link.md?items=...` also works but some robots parsers refuse query strings here.)
- **Checkout** is completed on-site and includes a captcha at the payment step. Share the cart link; checkout takes it from there.
- **Search the catalogue:** `https://core-electronics.com.au/search/{query}.md` (URL-encode the query; pages 2-3 at `search/{query}/{page}.md`; `search.md?q=` also works)
- **Payment methods, purchase orders, policies and contact details:** https://core-electronics.com.au/llms.txt
## Description

Hey, Jenny, I've got your number! And I'm going to dial 867-5309 into this very nice phone-style matrix keypad. This keypad has 12 buttons, arranged in a telephone-line 3x4 grid. It's made of plastic with sturdy plastic buttons. The keys are connected to a matrix so you only need 7 microcontroller pins (3-columns and 4-rows) to scan through the pad.

There's a great Matrix Keypad Arduino library that should work great with this item with minor adjustments. It's basically a sturdier version of Adafruit's [Membrane 3x4 Matrix Keypad](https://core-electronics.com.au/membrane-3x4-matrix-keypad-3x4.html) and comes with 7 or 8 header pins pre-soldered on for easy plugging. Starting from the left there are three column pins, and then to the right are the four row pins. If yours has an 8th pin, its not used and you can just leave it disconnected

## Technical Details

## ![](https://core-electronics.com.au/attachments/localcontent/1824_dims_16193484b81.jpg)

- Force: 160-180g
- Contact Resistance: &lt;100O
- Weight: 23g
 
There is a very nice Matrix Keypad Arduino library that works great with this item. The only thing we suggest is to change the initialization code in the examples to this:

 ```
#include "Arduino.h" #include "Keypad.h" const byte ROWS = 4; //four rows const byte COLS = 3; //three columns char keys[ROWS][COLS] = { {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'} }; byte rowPins[ROWS] = {5, 6, 7, 8}; //connect to the row pinouts of the keypad byte colPins[COLS] = {2, 3, 4}; //connect to the column pinouts of the keypad Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); void setup(){ Serial.begin(9600); } void loop(){ char key = keypad.getKey(); if (key != NO_KEY){ Serial.println(key); } } 
```

This will swap the \* and # keys and also let you connect to the Arduino with all the pins in order/in a row starting from digital 2 through digital 9

## Images

- [Product image 1](https://core-electronics.com.au/media/catalog/product/1/8/1824-03.jpg)
