✨ Illuminate Your Ideas with OLED Magic!
The MakerFocus 4pcs OLED Display Module features a 128x64 pixel resolution, self-luminous display, and is compatible with various microcontrollers including Raspberry Pi and Arduino. It allows for customizable font creation and easy installation, making it a versatile choice for tech enthusiasts.
T**S
Works great! Great value! Tested with ESP8266 NodeMCU & Arduino IDE
Works great. Great value for money.Lack of documentation so docked one star on Ease of use.The sketch that finally made it work for me.Screen has two colors but they are fixed so it's really a monochrome screen.Small section on top is yellow and rest is blue.Need to solder the pins ... easy if you know your way around a soldering iron. Took less than 2 minutes.Adafruit library and example sketch are a great place to start. My working sketch for this OLED display is shown below. Hopefully, others find it useful.// Import the Adafruit 1306 library and select your board on the Arduino IDE// The sketch below worked for me// Minimal sketch to display "Hello World" on OLED SSD1315 working with ESP8266 NodeMCU// Sketch for Arduino or other boards would be quite similar#include <SPI.h>#include <Wire.h>#include <Adafruit_GFX.h>#include <Adafruit_SSD1306.h>#define SCREEN_WIDTH 128 /// OLED display width, in pixels#define SCREEN_HEIGHT 64 /// OLED display height, in pixels#define OLED_RESET -1 ///-1 => no reset on 4 pin SSD1315 OLEDAdafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);/// define screen params#define I2C_SDA 4 /// ESP8266 NodeMCU SDA pin GPIO4 = D2#define I2C_SCL 5 /// ESP8266 NodeMCU SCL pin GPIO5 = D1#define SCREEN_ADDRESS 0x3C /// 0x3C for SSD1315 OLEDvoid setup() { Serial.begin(9600); /// for debug messages, I don't have any Wire.begin(I2C_SDA, I2C_SCL); /// #2 Identify SDA & SLC pins for your board display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS); /// Mode + Screen Address delay(200); /// time for board to initialize? display.clearDisplay(); /// display.setTextColor(WHITE); /// display.setTextSize(1); /// display.setCursor(10, 30); /// display.print("Hello World!"); /// display.display(); /// needed to actually display the message delay(1000); /// time for message to stay up display.clearDisplay();}void loop() {}
B**B
Works great using standard libraries
Despite other reviews and the product listing mentioning that their modified version of the SSD1306 library is needed, I wasn't able to get the display to work until I used the standard Adafruit_SSD1306 and Adafruit_GFX libraries. When using the standard libraries, the display works flawlessly. Great, crisp text and build quality is excellent.If you need a basic "Hello World" code sample, the below works great with my Arduino Nano BLE:#include <SPI.h>#include <Wire.h>#include <Adafruit_GFX.h>#include <Adafruit_SSD1306.h>#define SCREEN_WIDTH 128 // OLED display width, in pixels#define SCREEN_HEIGHT 32 // OLED display height, in pixels// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);void setup() { Serial.begin(9600); // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x32 Serial.println(F("SSD1306 allocation failed")); for(;;); // Don't proceed, loop forever } display.clearDisplay(); display.setTextSize(1); // Normal 1:1 pixel scale display.setTextColor(SSD1306_WHITE); // Draw white text display.setCursor(0,0); // Start at top-left corner display.cp437(true); // Use full 256 char 'Code Page 437' font display.println(F("Hello, world!!")); display.display();}void loop() {}
C**D
Need pullups, work fine with libraries that handle SH1106 - details below
These work just fine. Text is crisp and clear, which makes it surprisingly readable at a given size. Three things to know:First, the board doesn't include pullup resistors on the clock (SCL) and data (SDA) lines. There's room on the back of the board to piggyback 1/8 W resistors at the connector pads.Second, as others have noted, the default I2C address is 0x3C.Third, for me these only work with libraries that include support for the SH1106. This includes the u8g2 library, as well as some others - such as SH1106 ports of earlier versions of Adafruit's SD3106 library - that you'll find. For me, the Adafruit SD3106 library yielded a display that looked like pixels were being addressed incorrectly (not just shifted). This may be processor dependent. I am working with an Adafruit nrf52840 Express which includes hardware I2C.The u8g2 library is solid and works well. The library does require choosing a constructor corresponding to the board. For this board and my nrf52840 (hardware I2C), it'sU8G2_SH1106_128X64_NONAME_F_HW_I2C display(U8G2_R1, /* reset=*/ U8X8_PIN_NONE);
R**Y
Excellent display at an affordable price.
Works great. Needs driver #included (Adafruit GFX, and Adafruit SSD1306 work fine).Fits much more text on the screen than an old LCD1602, and using a LOT less power.Overall, this this the way to go. I recommend it without reservation.
M**C
Works great. Use this library Adafruit_SH110X.h
This is the lib you need. Adafruit_SH110X.h Have fun!
M**I
Good Product, as described and affordable
OLED screen is as advertised, would buy again. Easy enough to wire up and program with nano and existing code on the internet or sample sketches.
M**T
Total Fail. Does not work.
All 4 of these units were a complete bust. Tried each one, not a single one worked. In fact, it caused my ESP32 to lock up and fail to load the bootloader.
Trustpilot
1 month ago
2 days ago