---
product_id: 390337713
title: "Teyleten Robot 2.42 inch 128x64 OLED LCD Display Module SSD1309 7 Pin SPI/IIC I2C Serial Interface for Arduino UNO R3 - White Light"
brand: "teyleten robot"
price: "9.41 OMR"
currency: OMR
in_stock: true
reviews_count: 7
category: "Teyleten Robot"
url: https://www.desertcart.com.om/products/390337713-teyleten-robot-2-42-inch-128x64-oled-lcd-display-module
store_origin: OM
region: Oman
---

# 2.42-inch crisp OLED Dual SPI/I2C interface 128x64 high-res pixels Teyleten Robot 2.42 inch 128x64 OLED LCD Display Module SSD1309 7 Pin SPI/IIC I2C Serial Interface for Arduino UNO R3 - White Light

**Brand:** teyleten robot
**Price:** 9.41 OMR
**Availability:** ✅ In Stock

## Summary

> 🚀 Elevate your DIY projects with a sleek, versatile OLED display that means business.

## Quick Answers

- **What is this?** Teyleten Robot 2.42 inch 128x64 OLED LCD Display Module SSD1309 7 Pin SPI/IIC I2C Serial Interface for Arduino UNO R3 - White Light by teyleten robot
- **How much does it cost?** 9.41 OMR with free shipping
- **Is it available?** Yes, in stock and ready to ship
- **Where can I buy it?** [www.desertcart.com.om](https://www.desertcart.com.om/products/390337713-teyleten-robot-2-42-inch-128x64-oled-lcd-display-module)

## Best For

- teyleten robot enthusiasts

## Why This Product

- Trusted teyleten robot brand quality
- Free international shipping included
- Worldwide delivery with tracking
- 15-day hassle-free returns

## Key Features

- • **Broad Compatibility:** Works flawlessly with Arduino UNO R3 and popular U8G2 libraries, plus SSD1306 driver support for easy swaps.
- • **Crystal Clear Display:** 128x64 resolution on a vibrant 2.42-inch OLED ensures your data pops with precision.
- • **Seamless Interface Switching:** Effortlessly toggle between SPI and I2C modes for ultimate project flexibility.
- • **Pro-Grade Noise Mitigation Ready:** Designed for advanced users to add capacitors and ferrite beads, minimizing power noise for sensitive microcontrollers.
- • **Built-in 3.3V Regulator & Reset Circuit:** Integrated power management and reset functionality for hassle-free, stable operation.

## Overview

This 2.42-inch OLED display module features a sharp 128x64 resolution driven by the SSD1309 chip, supporting both SPI and I2C serial interfaces selectable via onboard resistors. It includes an onboard 3.3V regulator and reset circuit, ensuring stable power and reliable startup. Compatible with Arduino UNO R3 and popular graphics libraries like U8G2, it offers professional-grade flexibility for makers and engineers. While the voltage inverter can introduce noise, the design allows for noise reduction enhancements, making it ideal for advanced projects requiring crisp visuals and adaptable communication protocols.

## Description

Features: Diagonal Screen Size: 2.42" Resolution: 128 * 64 Driver IC: SSD1309 SPI interface definition: 1.GND (power ground) 2.VCC (power supply positive) 3.SCL (clock line) 4.SDA (data line) 5.RES (reset line) 6.DC (data / command) 7.CS (chip select)

Review: Very good display, but... - Very good display, but there's a few details to know about it. I've given it 5-stars because it does work well, but it should really be about 4.5-stars, as there are a few caveats to be aware of, with the worst being that the voltage inverter generates a LOT of noise back on the power supply powering the display. First off, it will indeed run on +5V, as well as +3.3V. The chip labeled Q1 and marked as 662K is a XC6206 3.3V regulator, which several similar OLED 128x64 displays do not have. However, if you are running it on SPI mode with +5V logic, you'll probably want to limit the current on the signal lines with 220-ohm or so resistors. But if you are running on I2C mode, which uses open-drain signals, it shouldn't need any limiting resistors on the signal lines. This display uses the same common 24-pin OLED panel that many other displays on the market use -- all with the same basic pinout and function. So finding data for them online is fairly straightforward. It comes configured for SPI mode with R8 installed and R9, R10, R11, and R12 not populated. R8 and R9 switches the BS1 signal between 0V for SPI mode (with R8) and +3.3V for I2C mode (with R9). The SPI mode is the 4-wire mode, which is NOT the normal SCLK, MISO, MOSI, and SS signals of SPI, but are SCLK (labeled SCK), DC, MOSI (labeled SDA), and SS (labeled CS). That is, the display is write-only -- there is no output signal back to the micro driving it. The DC pin, when in SPI mode, is a Data/Command select input (Data when it's high or '1' and Command when it's low or '0'). Google the SSD1309 datasheet for details. And this is a separate output pin that you'll need to supply from your micro that's outside of normal SPI operation. When switching it to I2C mode, by moving R8 to R9, you also have to connect R11 with a zero-ohm resistor. R11 ties the display's D2 pin (which is the display's data output signal) together with D1 (which is the SDA or data input) pin. This is needed since I2C requires the display to output acknowledge signals during communications and on the same SDA pin. However, on SPI mode, it would interfere with communications and so it isn't initially populated. That brings up some pros/cons between SPI and I2C modes. Running in SPI mode is faster, as the clock rate is not only higher, but it doesn't have the turnaround times that I2C requires or the slow signaling of open-drain I/O lines. However, there is no way for the processor driving the display to even know that the display is out there and functioning in SPI mode. At least on I2C mode, it has the device acknowledge signals so that you at least know you are talking to something. So you must decide if you want fast operation or a (potentially) slightly more reliable operation. The remaining two non-populated jumper resistors are R10 and R12. They are more of convenience jumpers for I2C mode. R10 allows you to connect the DC pin to ground. And R12 allows you to connect the CS pin to ground. In I2C mode, the CS (or chip select) must always be tied to ground, unlike in SPI mode where it needs to cycle at the end of a transfer to resync the data and clock logic. And the DC pin, in I2C mode, lets you control the device's I2C address. If it's tied to ground or logic '0', the device will respond at address 0x3C. If it's tied to +3.3V or logic '1', the device will respond at address 0x3D. The R10 jumper just lets you tie it to ground without having to connect DC on the connector pad. However, if you want to switch it to the 0x3D address, you'll need to run a jumper wire from the correct side of R10 (or the DC pad on the connector) to a +3.3V point on the board. Similarly, R12 is just a convenient way to tie the CS pin to ground rather than connecting it on the connector pad. But, if you prefer not to solder R10 and R12, you can simply connect the DC and CS pads of the connector to ground -- it does the same thing. For the jumper resistors, you can either use a solder blob or scrap wire clippings to jumper them, but if you want a more professional looking result and want to use zero-ohm resistors, the parts are 0603 footprints. Unlike several other similar OLED displays on the market, this one actually has a reset circuit on-board. It's the R5 and C8 parts, to be exact. And it does seem to work to correctly handle the power-on reset requirements of this display. That means you don't necessarily have to connect the RES pin on the connector to anything. That isn't true of several other 2.42" OLED displays, like the ones with the connector on the side instead of the top. Those displays, not only don't have a 3.3V regulator on board, but don't have a reset circuit either and have to have a reset signal to function correctly. However, it's not a bad idea to go ahead and tie the RES pin of this display to your micro if you have enough extra outputs, as you might find a need at some point to completely reset it. It's also interesting that they did not populate capacitor C7. From searches online, it seems that that was designed to have a 4.7uF tantalum capacitor. It's on the +3.3V side of the regulator and while it's not necessary for the display to function, it would be good to add that capacitor to help absorb some of the ripple from the voltage inverter. Speaking of the voltage inverter, U1 is a FAN5333, or similar, voltage inverter that powers the LEDs in the display. It's set to output +13V. However, their circuit design for it is extremely noisy and this will wreak havoc on other circuitry you might be trying to use. For example, if you are using A/D Converters on your microprocessor, you can expect the noise from this to adversely couple with it and cause reading instability. Another caveat of the noise from that voltage inverter that I personally encountered is that it can mess up the oscillator drive circuit of your microprocessor. I was using an ATmega328PB processor with this display and initially attempted to run it at +5V and its full 20MHz speed. However, the 328PB's clock oscillator is extremely sensitive, compared to many other micros, since it's a lower-power oscillator circuit, and power supply noise can cause startup issues. I managed to completely brick two ATmega328PB chips because of the noise from this display! I ended up having to drop it down to 16MHz. And for that, I really only give this display a 4.5-star rating. To minimize noise on your circuit, I recommend not only adding a C7 part to this board (I would probably use a 10uF instead of the 4.7uF that data online seems to show their design used), but I would also add a ferrite bead on the power wire into this display to help reduce the voltage spikes back out to your other circuitry -- especially if you are trying to overclock your microprocessor or are trying to use analog/digital conversion or something. Also, this display works great with the U8G2 library and works not only with the SSD1309 driver setup, but the SSD1306 driver setup as well. My experience with other displays has shown that displays with a SSD1309 work with either driver library, but those with SSD1306 only work with SSD1306. As I recall, I think there's a difference in the initial startup configuration. So, if your application also requires swapping in a different display that uses the SSD1306, you can just use the SSD1306 driver with this display too and keep them interchangeable. Overall, with the exception of the noisy power inverter circuit, I'm quite happy with this display. I've used them not only on the aforementioned ATmega328PB (at both 3.3V and 5V) but with several different STM32 micros as well (at 3.3V). A ferrite bead and some more capacitors will greatly help with the noise issues -- so be prepared to need them.
Review: Nice display - Works great.

## Features

- Interface Selection: to choose SPI or IIC interface through R3, R4, R5
- For IIC communication, it is necessary to move the resistor on R4 to R3, and R5 is soldered with 0 ohm resistor.
- SPI communication or I2C communication can be switched by configuring three resistors R3 R4 R5

## Technical Specifications

| Specification | Value |
|---------------|-------|
| ASIN | B09LND6QJ1 |
| Best Sellers Rank | #1,078 in Single Board Computers (Computers & Accessories) |
| Brand | Teyleten Robot |
| Customer Reviews | 4.2 4.2 out of 5 stars (54) |
| Date First Available | November 11, 2021 |
| Item Dimensions LxWxH | 2.8 x 1.71 x 0.39 inches |
| Item Weight | 0.845 ounces |
| Manufacturer | Teyleten Robot |
| Number of Processors | 1 |
| Operating System | Linux |
| Processor Brand | ARM |
| Product Dimensions | 2.8 x 1.71 x 0.39 inches |
| RAM | LPDDR3 |
| Wireless Type | Bluetooth |

## Product Details

- **Brand:** Teyleten Robot
- **CPU Manufacturer:** ARM
- **Connectivity Technology:** I2C
- **Operating System:** Linux
- **Wireless Communication Standard:** Bluetooth

## Images

![Teyleten Robot 2.42 inch 128x64 OLED LCD Display Module SSD1309 7 Pin SPI/IIC I2C Serial Interface for Arduino UNO R3 - White Light - Image 1](https://m.media-amazon.com/images/I/71fVB3ZDC5L.jpg)

## Customer Reviews

### ⭐⭐⭐⭐⭐ Very good display, but...
*by D***. on December 29, 2022*

Very good display, but there's a few details to know about it. I've given it 5-stars because it does work well, but it should really be about 4.5-stars, as there are a few caveats to be aware of, with the worst being that the voltage inverter generates a LOT of noise back on the power supply powering the display. First off, it will indeed run on +5V, as well as +3.3V. The chip labeled Q1 and marked as 662K is a XC6206 3.3V regulator, which several similar OLED 128x64 displays do not have. However, if you are running it on SPI mode with +5V logic, you'll probably want to limit the current on the signal lines with 220-ohm or so resistors. But if you are running on I2C mode, which uses open-drain signals, it shouldn't need any limiting resistors on the signal lines. This display uses the same common 24-pin OLED panel that many other displays on the market use -- all with the same basic pinout and function. So finding data for them online is fairly straightforward. It comes configured for SPI mode with R8 installed and R9, R10, R11, and R12 not populated. R8 and R9 switches the BS1 signal between 0V for SPI mode (with R8) and +3.3V for I2C mode (with R9). The SPI mode is the 4-wire mode, which is NOT the normal SCLK, MISO, MOSI, and SS signals of SPI, but are SCLK (labeled SCK), DC, MOSI (labeled SDA), and SS (labeled CS). That is, the display is write-only -- there is no output signal back to the micro driving it. The DC pin, when in SPI mode, is a Data/Command select input (Data when it's high or '1' and Command when it's low or '0'). Google the SSD1309 datasheet for details. And this is a separate output pin that you'll need to supply from your micro that's outside of normal SPI operation. When switching it to I2C mode, by moving R8 to R9, you also have to connect R11 with a zero-ohm resistor. R11 ties the display's D2 pin (which is the display's data output signal) together with D1 (which is the SDA or data input) pin. This is needed since I2C requires the display to output acknowledge signals during communications and on the same SDA pin. However, on SPI mode, it would interfere with communications and so it isn't initially populated. That brings up some pros/cons between SPI and I2C modes. Running in SPI mode is faster, as the clock rate is not only higher, but it doesn't have the turnaround times that I2C requires or the slow signaling of open-drain I/O lines. However, there is no way for the processor driving the display to even know that the display is out there and functioning in SPI mode. At least on I2C mode, it has the device acknowledge signals so that you at least know you are talking to something. So you must decide if you want fast operation or a (potentially) slightly more reliable operation. The remaining two non-populated jumper resistors are R10 and R12. They are more of convenience jumpers for I2C mode. R10 allows you to connect the DC pin to ground. And R12 allows you to connect the CS pin to ground. In I2C mode, the CS (or chip select) must always be tied to ground, unlike in SPI mode where it needs to cycle at the end of a transfer to resync the data and clock logic. And the DC pin, in I2C mode, lets you control the device's I2C address. If it's tied to ground or logic '0', the device will respond at address 0x3C. If it's tied to +3.3V or logic '1', the device will respond at address 0x3D. The R10 jumper just lets you tie it to ground without having to connect DC on the connector pad. However, if you want to switch it to the 0x3D address, you'll need to run a jumper wire from the correct side of R10 (or the DC pad on the connector) to a +3.3V point on the board. Similarly, R12 is just a convenient way to tie the CS pin to ground rather than connecting it on the connector pad. But, if you prefer not to solder R10 and R12, you can simply connect the DC and CS pads of the connector to ground -- it does the same thing. For the jumper resistors, you can either use a solder blob or scrap wire clippings to jumper them, but if you want a more professional looking result and want to use zero-ohm resistors, the parts are 0603 footprints. Unlike several other similar OLED displays on the market, this one actually has a reset circuit on-board. It's the R5 and C8 parts, to be exact. And it does seem to work to correctly handle the power-on reset requirements of this display. That means you don't necessarily have to connect the RES pin on the connector to anything. That isn't true of several other 2.42" OLED displays, like the ones with the connector on the side instead of the top. Those displays, not only don't have a 3.3V regulator on board, but don't have a reset circuit either and have to have a reset signal to function correctly. However, it's not a bad idea to go ahead and tie the RES pin of this display to your micro if you have enough extra outputs, as you might find a need at some point to completely reset it. It's also interesting that they did not populate capacitor C7. From searches online, it seems that that was designed to have a 4.7uF tantalum capacitor. It's on the +3.3V side of the regulator and while it's not necessary for the display to function, it would be good to add that capacitor to help absorb some of the ripple from the voltage inverter. Speaking of the voltage inverter, U1 is a FAN5333, or similar, voltage inverter that powers the LEDs in the display. It's set to output +13V. However, their circuit design for it is extremely noisy and this will wreak havoc on other circuitry you might be trying to use. For example, if you are using A/D Converters on your microprocessor, you can expect the noise from this to adversely couple with it and cause reading instability. Another caveat of the noise from that voltage inverter that I personally encountered is that it can mess up the oscillator drive circuit of your microprocessor. I was using an ATmega328PB processor with this display and initially attempted to run it at +5V and its full 20MHz speed. However, the 328PB's clock oscillator is extremely sensitive, compared to many other micros, since it's a lower-power oscillator circuit, and power supply noise can cause startup issues. I managed to completely brick two ATmega328PB chips because of the noise from this display! I ended up having to drop it down to 16MHz. And for that, I really only give this display a 4.5-star rating. To minimize noise on your circuit, I recommend not only adding a C7 part to this board (I would probably use a 10uF instead of the 4.7uF that data online seems to show their design used), but I would also add a ferrite bead on the power wire into this display to help reduce the voltage spikes back out to your other circuitry -- especially if you are trying to overclock your microprocessor or are trying to use analog/digital conversion or something. Also, this display works great with the U8G2 library and works not only with the SSD1309 driver setup, but the SSD1306 driver setup as well. My experience with other displays has shown that displays with a SSD1309 work with either driver library, but those with SSD1306 only work with SSD1306. As I recall, I think there's a difference in the initial startup configuration. So, if your application also requires swapping in a different display that uses the SSD1306, you can just use the SSD1306 driver with this display too and keep them interchangeable. Overall, with the exception of the noisy power inverter circuit, I'm quite happy with this display. I've used them not only on the aforementioned ATmega328PB (at both 3.3V and 5V) but with several different STM32 micros as well (at 3.3V). A ferrite bead and some more capacitors will greatly help with the noise issues -- so be prepared to need them.

### ⭐⭐⭐⭐⭐ Nice display
*by E***. on February 4, 2026*

Works great.

### ⭐⭐⭐⭐⭐ Easier to see than the smaller OLED displays
*by J***M on October 2, 2023*

gI was using the smaller 1.3" OLEDs with i2C interface and an Adafruit QT-Py ESP32 and all is working fine, then discovered this 2.4" OLED display. I did the i2C interface mod and plugged it in and it worked perfectly without and change. No i2C address change and no Arduino C++ code changes. The Adafruit library worked just fine. #include <Adafruit_SH110X.h> Adafruit_SH1106G display = Adafruit_SH1106G(128, 64, &Wire1); // &Wire1 used for ESP32s The SH1106G must be the same interface as the SSD1309. Much easier to see. My QT-Py ESP32 uses 3.3V and I have a linear regulator feeding it from my 9VDC source. I did a separate 100ohm resistor drop to feed to OLED display directly from the 9VDC power with a 5V zener and 10uf bypass cap on the power leads. This isolates the OLED noise from my QT-Py processor and makes the OLED run on about 5V instead of 3.3. The display draws about 50ma, and does generate noise on the power source, which was interfering with the processor and analog read pins. When well isolated it works very nicely.

## Frequently Bought Together

- Teyleten Robot 2.42 inch 128x64 OLED LCD Display Module SSD1309 7 Pin SPI/IIC I2C Serial Interface for Arduino UNO R3 - White Light
- ELEGOO 120pcs Multicolored Dupont Wire 40pin Male to Female, 40pin Male to Male, 40pin Female to Female Breadboard Jumper Ribbon Cables Kit Compatible with Arduino Projects
- Hosyond 5 Pcs 0.96 Inch OLED I2C IIC Display Module 12864 128x64 Pixel SSD1306 Mini Self-Luminous OLED Screen Board Compatible with Arduino Raspberry Pi(Blue and Yellow)

---

## Why Shop on Desertcart?

- 🛒 **Trusted by 1.3+ Million Shoppers** — Serving international shoppers since 2016
- 🌍 **Shop Globally** — Access 737+ million products across 21 categories
- 💰 **No Hidden Fees** — All customs, duties, and taxes included in the price
- 🔄 **15-Day Free Returns** — Hassle-free returns (30 days for PRO members)
- 🔒 **Secure Payments** — Trusted payment options with buyer protection
- ⭐ **TrustPilot Rated 4.5/5** — Based on 8,000+ happy customer reviews

**Shop now:** [https://www.desertcart.com.om/products/390337713-teyleten-robot-2-42-inch-128x64-oled-lcd-display-module](https://www.desertcart.com.om/products/390337713-teyleten-robot-2-42-inch-128x64-oled-lcd-display-module)

---

*Product available on Desertcart Oman*
*Store origin: OM*
*Last updated: 2026-02-24*