SSD1306, Interfacing I2C OLED 128 x 32 with Arduino(SSD1306)

Hello Geeks,

So recently I was working with OLED(I2C 128x32 SSD1306). I found out that OLEDs are pretty awesome replacement of a standard LED display and LCDs. If you are stuck somewhere in Interfacing the above OLED.I have explained how to interface this OLED with Arduino.

Use this link to check the blog

It has pretty much good information about what are OLEDs? Why an OLED? Types of OLED and its interfacing with Arduino. If you don't know much about OLEDs you can read this blog and get a lot of information from it.

If you still face any issue please reply to this post or quote me.
Hope the information helps you in some way.

--Apurva
Embedded Engineer

Thanks for the link to your blogpost. I like 12832 and 12864 OLEDS and I have implemented them in some projects because of advantages you mention and also because they are 3.3V, ideal for use with ESP8266 based boards, have graphical capability and, most of all, their small form factor.

Two questions:

  1. What is life expectancy of an OLED display working 24/7/365 compared with LCD displays - i have one LCD display working continuously now for 3 years and still going strong. I had a 128*32 OLED that died after 6 weeks continuous service.

  2. With respect to question 1: Does the Adafruit GFX library or some other means provide a kinda 'sleep mode' for OLED displays to prolong their life expectancy?

Thank you for the appreciation @photoncatcher.

I will be answering your questions below.

1.

LG says that OLEDs have a lifespan of 100,000 hours to half brightness, a figure that's similar to LED LCDs.

If you're the type of person who can't stop worrying about the longevity of their TV, then I guess LCD is your only option. Though keep in mind, there's no guarantee about those either, as any glance at Amazon or Internet forums will tell you.

OLEDs have less lifespan compared to LCDs. When we compare modules. It depends on the manufacturer of the OLED as well. If you go for a better module I think lifespan can get close to the LCD. As OLED being a new tech. It still needs improvements. Now QLEDs are launched so I think It will replace OLEDs. But energy usage of an OLED will be less than the LCD.

2.

You can program your OLED accordingly to make it sleep after some time. I will suggest you read the datasheet of your OLED or you can read the below.

while(i2cstatus>0)
{
Wire.beginTransmission(0x3c);
i2cstatus=Wire.endTransmission();
}

or

display.ssd1306_command(SSD1306_SETCONTRAST);
display.ssd1306_command(c); // Where c is a value from 0 to 255 (sets contrast e.g. brightness)

display.ssd1306_command(SSD1306_DISPLAYOFF); // To switch display off
display.ssd1306_command(SSD1306_DISPLAYON); // To switch display back on

I think this will help you.
Hope this information helps you.