Control four LED states using 1×4 Membrane Matrix Keypad

The EzloPi smart devices provide automation through simple, customizable use with our open-source EzloPi platform, making daily life easier and improving human-machine interactions.

Before moving into this example, it is very important to know about the device registration, provisioning and converting the ESP32 device into an EzloPi device along with knowledge of Web Flasher, MiOS Mobile Application for Android/iOS and the MiOS Web Application.

1. About this example

The following project aims to interface a 1x4 matrix membrane keypad switch with an EzloPi device to control four LEDs. The keypad serves as the input interface, allowing users to trigger LED states corresponding to each LED. The EzloPi device acts as the central hub, receiving and executing commands from the keypad interface. Each LED corresponds to a unique keypad input, enabling users to easily manipulate the LED lighting state as on or off. This project enhances user interaction and control over the LEDs, providing a seamless interface for managing various lighting scenarios.

2. Project Video Demonstration

Welcome to the project demonstration video section. The following video showcases the key aspects of Control four LED states using 1x4 Membrane Matrix Keypad, providing a visual walkthrough of its implementation.

3. Circuit Setup & Interfacing

The following components are required for interfacing with the EzloPi device:

  • ESP32 as an EzloPi smart device.
  • 1x4 Membrane matrix keypad.
  • 4x LEDs.
  • 100 Ohms resistor.

The wiring diagram of ESP32 30 pin is represented as follows:

The following connections are made in order to complete the circuit setup:

From ESP32 to the TTP224 module:

ESP321x4 Membrane Matrix Keypad
GNDPin 5 (Common)
D15Pin 4
D2Pin 3
D5Pin 2
D18Pin 1

From ESP32 to the TTP224 module:

ESP32LED 01LED 02LED 03LED 04Resistor
D27Anode----
D26-Anode---
D25--Anode--
D33---Anode-
NACathodeCathodeCathodeCathode1st Terminal
GND----2nd Terminal

4. Interfacing the 1x4 Membrane Matrix Keypad using the EzloPi Web Flasher

1. Set up your device/hardware by visiting config.ezlopi.com

  1. Log in using the credentials which you just set earlier while signing up.
  1. Now, click on the Connect Device button and a pop-up window will appear.
  1. Now, select COM Port to which your ESP32 device is connected. In our case, the COM3 port is used.

Click Connect

  1. If you are new to this and it's your first time configuring, select Create new Device ID. Click on the Configure Wifi button. Enter Wifi SSID and Wifi Password.
  2. In the Device Configuration, tab click on Digital Input.
  1. A Digital Output window will open for inputting the following parameters:
  • Set Device name to LED 01.
  • Set Device subtype to LED.
  • Set OUT GPIO to 27.
  • Set Resistor to PULL UP.
  • Set the default value to LOW.
  • Check the Button Enable box.
  • Set INP GPIO to 15.
  • Set Resistor to PULL DOWN.
  • Set the default value to LOW.
  • Then Click Apply Button.
  1. Again, In the Device Configuration, tab click on Digital Output.
  1. A Digital Output window will open for inputting the following parameters:
  • Set Device name to LED 02.
  • Set Device subtype to LED.
  • Set OUT GPIO to 26.
  • Set Resistor to PULL UP.
  • Set the default value to LOW.
  • Check the Button Enable box.
  • Set INP GPIO to 2.
  • Set Resistor to PULL DOWN.
  • Set the default value to LOW.
  • Press the Flash Device button.
  1. Again, In the Device Configuration, tab click on Digital Output.
  1. A Digital Output window will open for inputting the following parameters:
  • Set Device name to LED 03.
  • Set Device subtype to LED.
  • Set OUT GPIO to 25.
  • Set Resistor to PULL UP.
  • Set the default value to LOW.
  • Check the Button Enable box.
  • Set INP GPIO to 5.
  • Set Resistor to PULL DOWN.
  • Set the default value to LOW.
  • Press the Flash Device button.
  1. Again, In the Device Configuration, tab click on Digital Output.
  1. A Digital Output window will open for inputting the following parameters:
  • Set Device name to LED 04.
  • Set Device subtype to LED.
  • Set OUT GPIO to 33.
  • Set Resistor to PULL UP.
  • Set the default value to LOW.
  • Check the Button Enable box.
  • Set INP GPIO to 18.
  • Set Resistor to PULL DOWN.
  • Set the default value to LOW.
  • Then Click Apply Button.
  • After clicking the apply button you can see a table of your setting in the device configuration tab.
  • Press the Flash Device button.
  1. A window will appear on the bottom right side of the screen displaying “Please press BOOT button while flashing begins.”
  1. Hold the BOOT button down until the next window appears on the bottom right side of the screen which says “Installation prepared. Please release the boot button now.”
  1. Release the BOOT button from your ESP32 when this pop-up on the bottom right window appears.
  1. After some time, a popup will appear saying Device Flashed Successfully! This means that your device has been set up successfully.

5. MiOS App

You can download the MIOS Android app from the Google Play Store and Apple App Store.

Google PlayApple App Store

  1. After downloading the app, proceed to install the application and open it.
  1. Using the MIOS mobile application, create a new Ezlo Cloud account using the sign-up option. If you already have an account, you may proceed to log in.
  1. After successfully logging in, you will be able to see the number of controllers connected such as a lamp, fan, or any other device in the MiOS app. Tap on any controller of your desired ID:
  1. You will be able to see the status of your controller whether it is online or offline. Access the device dashboard, and tap the device. The following view of the dashboard will appear:
  1. After opening the MiOS mobile dashboard, you will be able to see the tile of your connected device. The state of all the four LEDs can be controlled by just pressing on the 1x4 matrix keypad. Currently, all the tiles for the LEDs are OFF, which indicates that all the LEDs are OFF.
  1. Similarly, it can be seen that when we press one by one on the keypad, the LEDs turn ON, also the tiles indicate that all four LEDs have turned ON.

6. MiOS Web Dashboard

  1. After configuring the controller with the EzloPi web flasher, head to ezlogic.mios.com
  1. Use the same credentials to log in that you used for configuring the controller with the web flasher.
  1. After opening the MiOS web dashboard, you will be able to see the tile of your connected device. The state of all the four LEDs can be controlled by just pressing on the 1x4 matrix keypad. Currently, all the tiles for the LEDs are OFF, which indicates that all the LEDs are OFF.
  1. Similarly, it can be seen that when we press one by one on the keypad, the LEDs turn ON, also the tiles indicate that all four LEDs have turned ON.
Buy Components

eZlopie Products A single-channel 5V relay module $00.00

eZlopie Products Momentary switch $00.00

eZlopie Products Level Shifter Module (BSS138) $00.00

eZlopie Products ESP32
$00.00

eZlopie Products AC Lamp and Holder
$00.00