Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use 0.96 OLED: Examples, Pinouts, and Specs

Image of 0.96 OLED
Cirkit Designer LogoDesign with 0.96 OLED in Cirkit Designer

Introduction

The 0.96 OLED display module is a compact, low-power display that utilizes organic light-emitting diodes to produce bright and colorful images. Manufactured by Arduino with the part ID "UNO," this module features a resolution of 128x64 pixels, making it ideal for displaying text, graphics, and simple animations. Its small size and energy efficiency make it a popular choice for embedded systems, IoT devices, and microcontroller-based projects.

Explore Projects Built with 0.96 OLED

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
IoT Board with 0.96" OLED Display for Real-Time Data Visualization
Image of dgd: A project utilizing 0.96 OLED in a practical application
This circuit connects a 0.96" OLED display to an IoT board. The OLED display is powered by the 3.3V and GND pins of the IoT board, and communicates with the board via I2C using the SDA and SCL pins.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino 101 OLED Display Animation Project
Image of wokwi animater test: A project utilizing 0.96 OLED in a practical application
This circuit consists of an Arduino 101 microcontroller connected to a 0.96" OLED display via I2C communication. The Arduino runs a program that initializes the OLED and continuously displays an animated sequence of frames on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano and OLED Display for Real-Time Data Visualization
Image of OLED Display: A project utilizing 0.96 OLED in a practical application
This circuit consists of an Arduino Nano microcontroller connected to a 0.96" OLED display. The Arduino Nano provides power to the OLED display and communicates with it using the I2C protocol via the A4 (SDA) and A5 (SCK) pins.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Powered OLED Display Interface
Image of Display: A project utilizing 0.96 OLED in a practical application
This circuit connects an ESP32 microcontroller to a 0.96" OLED display via I2C communication protocol. The ESP32's pins D22 and D21 are used as the serial clock (SCK) and serial data (SDA) lines, respectively, to interface with the OLED's corresponding SCK and SDA pins. The OLED is powered by the 3.3V output from the ESP32, and both devices share a common ground. The embedded code initializes the display and prints 'Hello, ESP32!' on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with 0.96 OLED

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of dgd: A project utilizing 0.96 OLED in a practical application
IoT Board with 0.96" OLED Display for Real-Time Data Visualization
This circuit connects a 0.96" OLED display to an IoT board. The OLED display is powered by the 3.3V and GND pins of the IoT board, and communicates with the board via I2C using the SDA and SCL pins.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of wokwi animater test: A project utilizing 0.96 OLED in a practical application
Arduino 101 OLED Display Animation Project
This circuit consists of an Arduino 101 microcontroller connected to a 0.96" OLED display via I2C communication. The Arduino runs a program that initializes the OLED and continuously displays an animated sequence of frames on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of OLED Display: A project utilizing 0.96 OLED in a practical application
Arduino Nano and OLED Display for Real-Time Data Visualization
This circuit consists of an Arduino Nano microcontroller connected to a 0.96" OLED display. The Arduino Nano provides power to the OLED display and communicates with it using the I2C protocol via the A4 (SDA) and A5 (SCK) pins.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Display: A project utilizing 0.96 OLED in a practical application
ESP32-Powered OLED Display Interface
This circuit connects an ESP32 microcontroller to a 0.96" OLED display via I2C communication protocol. The ESP32's pins D22 and D21 are used as the serial clock (SCK) and serial data (SDA) lines, respectively, to interface with the OLED's corresponding SCK and SDA pins. The OLED is powered by the 3.3V output from the ESP32, and both devices share a common ground. The embedded code initializes the display and prints 'Hello, ESP32!' on the screen.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Displaying sensor data in IoT projects
  • Creating user interfaces for embedded systems
  • Visualizing real-time data in robotics
  • Portable devices and wearables
  • Debugging and testing microcontroller outputs

Technical Specifications

The following table outlines the key technical details of the 0.96 OLED display module:

Parameter Specification
Display Type OLED (Organic Light-Emitting Diode)
Resolution 128x64 pixels
Interface I2C (Inter-Integrated Circuit)
Operating Voltage 3.3V - 5V
Current Consumption ~20mA
Dimensions 27mm x 27mm x 4mm
Viewing Angle >160°
Operating Temperature -40°C to +85°C

Pin Configuration

The 0.96 OLED module typically has a 4-pin interface for I2C communication. The pin configuration is as follows:

Pin Name Description
1 GND Ground pin, connect to the ground of the circuit.
2 VCC Power supply pin, connect to 3.3V or 5V.
3 SCL Serial Clock Line for I2C communication.
4 SDA Serial Data Line for I2C communication.

Usage Instructions

Connecting the 0.96 OLED to an Arduino UNO

To use the 0.96 OLED module with an Arduino UNO, follow these steps:

  1. Wiring: Connect the OLED module to the Arduino UNO as shown below:
    • GND → GND
    • VCC → 5V
    • SCL → A5 (I2C Clock)
    • SDA → A4 (I2C Data)
  2. Install Libraries: Install the Adafruit_GFX and Adafruit_SSD1306 libraries in the Arduino IDE. These libraries provide functions for controlling the OLED display.
  3. Upload Code: Use the example code below to display text on the OLED.

Example Code

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// Define the OLED display width and height
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64

// Create an SSD1306 display object connected via I2C
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

void setup() {
  // Initialize the display
  if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) {
    // If the display fails to initialize, print an error message
    Serial.println(F("SSD1306 allocation failed"));
    for (;;); // Stop execution
  }

  // Clear the display buffer
  display.clearDisplay();

  // Set text size and color
  display.setTextSize(1); // Text size multiplier
  display.setTextColor(SSD1306_WHITE);

  // Display a message
  display.setCursor(0, 0); // Set cursor to top-left corner
  display.println(F("Hello, OLED!"));
  display.display(); // Render the text on the screen
}

void loop() {
  // No actions in the loop for this example
}

Best Practices

  • Ensure the OLED module is powered within its operating voltage range (3.3V - 5V).
  • Use pull-up resistors on the I2C lines (SCL and SDA) if not already included on the module.
  • Avoid exposing the OLED to direct sunlight for extended periods to prevent damage.

Troubleshooting and FAQs

Common Issues

  1. The display does not turn on:

    • Verify the wiring connections, especially GND and VCC.
    • Ensure the I2C address (default: 0x3C) matches the one in your code.
    • Check if the OLED module is receiving power (use a multimeter if necessary).
  2. Text or graphics are not displayed correctly:

    • Confirm that the correct resolution (128x64) is set in the code.
    • Ensure the Adafruit_GFX and Adafruit_SSD1306 libraries are installed and up-to-date.
  3. Flickering or unstable display:

    • Check for loose connections on the I2C lines.
    • Use shorter wires to reduce noise in the I2C communication.

FAQs

Q: Can I use the 0.96 OLED with a 3.3V microcontroller?
A: Yes, the OLED module supports both 3.3V and 5V logic levels.

Q: How do I display custom graphics on the OLED?
A: Use the Adafruit_GFX library to draw shapes or load bitmap images. Refer to the library documentation for detailed instructions.

Q: What is the maximum I2C communication speed supported?
A: The OLED module typically supports I2C speeds up to 400kHz (Fast Mode).

By following this documentation, you can effectively integrate the 0.96 OLED display into your projects and troubleshoot common issues with ease.