OLEDMenuUI

An intuitive and flexible menu system for SSD1306 OLED displays

๐Ÿ“Œ Introduction

OLEDMenuUI is a lightweight, highly customizable menu library for Arduino boards equipped with SSD1306 128x32 I2C OLED displays. Designed for microcontrollers with limited resources, it provides smooth navigation, dynamic submenus, EEPROM-based settings storage, and integrated sensor display support.

๐Ÿง  Features

๐Ÿ–ฅ๏ธ Compatible Boards

Board Status
Arduino Unoโœ… Fully Supported
Arduino Nanoโœ… Fully Supported
Arduino Megaโœ… Fully Supported
ESP8266 (NodeMCU)โœ… Tested & Supported
ESP32๐Ÿงช Partial Support (Under Testing)

โš™๏ธ Hardware Requirements

๐Ÿ”Œ Pin Configuration (Example)

BUTTON_UP     โ†’ D2
BUTTON_DOWN   โ†’ D3
BUTTON_SELECT โ†’ D4
BUTTON_BACK   โ†’ D5
BUZZER_PIN    โ†’ D6
DHT11         โ†’ D7
HC-SR04 TRIG  โ†’ D8
HC-SR04 ECHO  โ†’ D9
OLED SDA/SCL  โ†’ A4/A5 (for Uno/Nano)
    

๐Ÿ“ฆ Installation

  1. Clone this repository into your Arduino libraries folder:
    git clone https://github.com/sudoyasir/OLEDMenuUI
  2. Install dependencies via Library Manager:
    • Adafruit GFX Library
    • Adafruit SSD1306
    • DHT Sensor Library (by Adafruit)
  3. Restart Arduino IDE.

๐Ÿงช Example

You can find full working demo in examples/. It includes:

๐Ÿ“˜ API Overview

๐Ÿ“ Repository

Visit the GitHub repo:
github.com/sudoyasir/OLEDMenuUI

๐Ÿ“œ License

This project is licensed under the MIT License.

๐Ÿ™‹โ€โ™‚๏ธ Author

Developed by @sudoyasir. Contributions are welcome!