The OLED 2.42 Inch SSD1309 I2C (Manufacturer: Tenstar, Part ID: OLED.2.42.Inch.SSD1309.i2c) is a compact and versatile OLED display module. It features a 2.42-inch screen with a resolution of 128x64 pixels, driven by the SSD1309 controller. This module uses the I2C communication protocol, making it easy to interface with a wide range of microcontrollers, including Arduino, Raspberry Pi, and other development boards.
Below are the key technical details and pin configuration for the OLED 2.42 Inch SSD1309 I2C module:
Parameter | Value |
---|---|
Display Type | OLED |
Screen Size | 2.42 inches |
Resolution | 128x64 pixels |
Controller | SSD1309 |
Interface | I2C |
Operating Voltage | 3.3V to 5V |
Operating Current | ~20mA (typical) |
Viewing Angle | >160° |
Operating Temperature | -40°C to +85°C |
Dimensions | 60mm x 37mm x 4mm |
Pin Name | Pin Number | Description |
---|---|---|
GND | 1 | Ground connection for the module. |
VCC | 2 | Power supply input (3.3V to 5V). |
SCL | 3 | I2C clock line (connect to microcontroller SCL). |
SDA | 4 | I2C data line (connect to microcontroller SDA). |
VCC
pin to a 3.3V or 5V power source and the GND
pin to ground.SCL
pin to the I2C clock line of your microcontroller.SDA
pin to the I2C data line of your microcontroller.Adafruit_SSD1306
and Adafruit_GFX
libraries, which support the SSD1309 controller.0x3C
. Verify this in the module's datasheet or by scanning I2C devices.Below is an example code snippet to initialize and display text on the OLED module using an Arduino UNO:
#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 (I2C address 0x3C)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
// Initialize serial communication for debugging
Serial.begin(9600);
// Initialize the OLED display
if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) {
Serial.println(F("SSD1309 initialization failed!"));
while (true); // Halt execution if initialization fails
}
// Clear the display buffer
display.clearDisplay();
// Set text size, color, and cursor position
display.setTextSize(1); // Text size multiplier
display.setTextColor(SSD1306_WHITE); // White text
display.setCursor(0, 0); // Top-left corner
// Display a message
display.println(F("Hello, OLED!"));
display.display(); // Render the text on the screen
}
void loop() {
// Nothing to do here
}
Display Not Turning On:
VCC
and GND
).SCL
and SDA
) are correctly connected.0x3C
).Flickering or Unstable Display:
Text or Graphics Not Displaying:
Adafruit_SSD1306
and Adafruit_GFX
libraries are installed.I2C Address Not Detected:
Q: Can this module work with 3.3V microcontrollers like ESP32?
A: Yes, the module is compatible with both 3.3V and 5V systems.
Q: Is the SSD1309 backward-compatible with SSD1306 libraries?
A: Yes, the SSD1309 is largely compatible with SSD1306 libraries, but some advanced features may require additional configuration.
Q: How can I adjust the brightness of the display?
A: Brightness can be controlled via software commands using the Adafruit_SSD1306
library.
Q: Can I use this module with SPI instead of I2C?
A: No, this specific module is designed for I2C communication only. For SPI, consider a different variant of the SSD1309 module.
This concludes the documentation for the OLED 2.42 Inch SSD1309 I2C module.