Go Down

Topic: Adafruit SSD1306 128x32 OLED, I2C pull up resistors? (Read 4897 times) previous topic - next topic


I want to use this monochrome 128x32 I2C OLED graphic display from Adafruit: http://www.adafruit.com/products/931

It can be connected to the Arduino Due via standard I2C (pins 20 and 21) and the Adafruit library https://github.com/adafruit/Adafruit_SSD1306 seems to support the Arduino Due.

Question 1:

The Arduino Due standard I2C on pins 20 and 21 has the well known 1 K pull up resistor problem. Would this OLED display work with the 1 K pull ups on pins 20 and 21?

Or do I have to remove the 1 K pull up resistors from the Arduino Due board? If I remove the 1 K pull ups, what pull up values does this OLED display need on SDA and SCL?

I checked the Adafruit documentation of this OLED display and it does not say anything about pull up resistors for SDA and SCL.

Question 2:

Has anybody successfully used this OLED display with an Arduino Due?

Greetings, Conrad


Mar 07, 2014, 04:34 pm Last Edit: Mar 07, 2014, 07:02 pm by chriskner Reason: 1

It looks like the adafruit board has 10k pullups (see attached pic).
Sourced from:

It might be easier to remove those instead.

If you don't remove any resistors, the net effect would be a 4mA pulldown current.  This is still in-spec for the SAM chip (source 3mA, sink 6mA).  It's just unnecessarily stressful.

I have never used this board.




thank you for posting the schematics of the "SSD1306 Monochrome 128x32 I2C OLED graphic display break out board", that clarifies my question very accurately.

I have to download the Eagle program to be able to look at schematics and board layout files. The schematics you posted are available at the Adafruit web site (as I found out just now), but one needs the Eagle program to display it.

Thanks to your answers I am now understanding the I2C pull up resistor issue. I already found steel tweezers with the correct gripper size to remove the offending 1 K pull up resistors from the Arduino Due board. I plan to heat the tweezers with the soldering iron (holding the tweezers with gloves to protect my fingers). Need to do some trials before manhandling the Arduino Due board.

It is not easy to find a practical little LCD or OLED display for the Arduino Due, they are often sold out.

I also found this I2C LCD display http://at.farnell.com/midas/mccog21605b6w-fptlwi/lcd-cog-16x2-i2c-fstn-schw-weiss/dp/2218942?Ntt=2218942
which is not expensive and does not seem to difficult to drive. It allows to define 10 custom icons, which could be used to display "bars".

Well, display and keyboard are still the most expensive part of any microprocessor project.

Greetings, Conrad

Go Up