- Stok Durumu: 10-15 Days
- Marka: OEM
- Model: 1.3 Beyaz Oled Enkoder 2x Buton
- SKU: RBZ.101.753
1.3 Inch White Oled Module Ec11 Rotary Encoder 2 Button
3.3V SH1106 128x64 Pixel IIC I2C Serial 1.3” Display Lcd Indicator Arduino STM32 ESP32
If you supply 5V the product may be damaged. Supply only with 3.3V
It is a ready menu interface module offering an SH1106 driver 1.3 inch white OLED display, an Ec11 rotary encoder and two buttons (BACK, CONFIRM) together. With 128x64 pixel resolution and a high contrast ratio, it provides a legible image despite its small size. It works with bright white pixels on a black background, requires no backlight and consumes low power.
It connects to the microcontroller over only two signal lines (SCL, SDA) with the I2C communication protocol. Since the SH1106 driver IC is embedded inside the display, no external component is required. It can be used directly with Arduino, ESP32, STM32, MSP430 and 8051 series microcontrollers.
The Ec11 encoder offers clockwise and counterclockwise rotation together with the push function in a single body. The BACK and CONFIRM buttons have 4.7K pull-up resistors and pull to ground when pressed. With this structure, menu navigation, value increase-decrease and confirm-cancel operations can be implemented without requiring an additional circuit. Connection is provided over a 9 pin male header. It can be fixed to an enclosure or onto a PCB with 4 M3 mounting holes. It works with 3.3V supply; if 5V supply is applied the product may be damaged.
Features:
- Display size: 1.3"
- Ec11 Encoder and Aluminum knob cap (With button)
- Buttons: 2 pcs (BACK, CONFIRM), 4.7K pull-up resistor, 3.3V reference
- 9 Pin male header connection socket
- Communication: I2C (IIC)
- Display color: White
- Operating voltage: DC 3.3V
- Driver IC: SH1106 ( embedded inside the Lcd )
- Resolution: 128 x 64 pixel
- High brightness contrast
- Operating temperature: -30C / 70C
- 4 M3 mounting holes
- Dimensions: 35mm x 65mm
- Weight: 15gr
Pin description:
- VCC: 3V3
- GND: Ground
- BAK: Back button
- TRS: Encoder Phase B
- TRA: Encoder Phase A
- PSH: Encoder Button
- SCL: IIC Clock pin
- SDA: IIC Data pin
- CON: CONFIRM button

Package contents:
- 1 Pcs 1.3 White Oled Encoder 2x Button

Example code:
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SH110X.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SH1106G display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
#define LX 4
#define LY 16
void drawLogo() {
display.drawRoundRect(LX, LY, 56, 47, 5, SH110X_WHITE);
display.fillCircle(LX + 18, LY + 7, 5, SH110X_WHITE);
display.fillRect(LX + 10, LY + 12, 6, 28, SH110X_WHITE);
display.fillCircle(LX + 19, LY + 20, 11, SH110X_WHITE);
display.fillCircle(LX + 19, LY + 20, 7, SH110X_BLACK);
display.fillRect(LX + 8, LY + 12, 12, 18, SH110X_WHITE);
display.fillRect(LX + 16, LY + 14, 10, 13, SH110X_BLACK);
display.fillRect(LX + 17, LY + 16, 4, 4, SH110X_WHITE);
display.fillRect(LX + 23, LY + 16, 4, 4, SH110X_WHITE);
display.drawLine(LX + 16, LY + 27, LX + 30, LY + 40, SH110X_WHITE);
display.drawLine(LX + 17, LY + 27, LX + 31, LY + 40, SH110X_WHITE);
display.drawLine(LX + 18, LY + 27, LX + 32, LY + 40, SH110X_WHITE);
display.drawCircle(LX + 18, LY + 36, 8, SH110X_WHITE);
display.drawCircle(LX + 18, LY + 36, 7, SH110X_WHITE);
display.fillRect(LX + 10, LY + 42, 5, 4, SH110X_WHITE);
display.fillRect(LX + 22, LY + 42, 5, 4, SH110X_WHITE);
}
void drawYellowBar(const char* text) {
display.setTextColor(SH110X_WHITE);
display.setTextSize(1);
display.setCursor(0, 0);
display.print(text);
display.drawLine(0, 13, 127, 13, SH110X_WHITE);
}
void screen1() {
display.clearDisplay();
drawYellowBar("robiz.net");
drawLogo();
display.setTextSize(2);
display.setTextColor(SH110X_WHITE);
display.setCursor(66, 20);
display.print("robiz");
display.setTextSize(1);
display.setCursor(66, 40);
display.print("robiz.net");
display.display();
}
void screen2() {
display.clearDisplay();
drawYellowBar("robiz.net");
for (int i = 0; i < display.width(); i += 8) {
display.drawLine(0, 16, i, 63, SH110X_WHITE);
}
for (int i = 16; i < display.height(); i += 8) {
display.drawLine(0, 16, 127, i, SH110X_WHITE);
}
display.display();
}
void screen3() {
display.clearDisplay();
drawYellowBar("robiz.net");
for (int r = 4; r <= 22; r += 4) {
display.drawCircle(63, 40, r, SH110X_WHITE);
}
display.display();
}
void setup() {
if (!display.begin(0x3C, true)) {
while (1);
}
}
uint8_t idx = 0;
unsigned long last = 0;
void loop() {
if (millis() - last >= 5000) {
last = millis();
switch (idx) {
case 0: screen1(); break;
case 1: screen2(); break;
case 2: screen3(); break;
}
idx = (idx + 1) % 3;
}
}