This project will show you how a 5-key keyboard works. Also, we would use it to create a device to input text into your Arduino projects. Hope you would find it useful.
EXPANDED TECHNICAL DETAILS
User Interface Logic
Entering alphabetic text with only 5 buttons requires a "T9" or "List-based" selection logic.
- Vertical Navigation: Two buttons (Up/Down) cycle through the character set (A-Z, a-z, 0-9, and symbols).
- Horizontal Navigation: Two buttons (Left/Right) move the cursor within the string.
- Confirmation: The fifth button acts as "Enter" or "OK" to finalize the string.
Hardware & Protocol
- Display: The SSD1306 OLED is an I2C-based display with 128x64 resolution. It is used to show a "virtual keyboard" or a scrollable character list alongside the currently typed string.
- Button Debouncing: The 5-key keyboard is handled in the firmware to prevent phantom presses. It can be implemented using individual digital pins or as a single analog input with a resistor ladder (where each keypress produces a unique voltage level).
Use Cases
This hardware module is perfect for projects that require on-site configuration without a PC, such as:
- Setting WiFi SSIDs and Passwords.
- Entering filenames for data logging on an SD card.
- Configuring timer durations or threshold values in standalone control systems.
The full tutorial can be found here:
If you like this content and you want to support me in creating similar videos go to my Patreon webpage
https://www.patreon.com/MariosIdeas
Or Paypal
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=7PD67JWZ9S3EJ&source=url