Fork me on GitHub

Project Notes

#530 SSD1306 OLED Bareback I²C

Test driving a monochrome 128x32 OLED Display with an Arduino and the raw command set over I²C.


Here’s a quick demo..



In LEAP#087 I investigated using the raw command set to drive an OLED display over SPI. This is the same idea, but using a display with an I²C interface.

For this test, I’m using a white 128x32 0.91” OLED Module.

OLED Module Specs

  • OLED display, self-illuminating (no backlight), also lower consumption.
  • Driver IC: SSD1306
  • Size: 0.91 inch
  • OLED Resolution: 128 x 32
  • I²C interface
Pin Description
GND Power Ground
VCC Power + (DC 3.3~5v)
SCL Clock Line
SDA Data Line

Example Sketch

SSD1306BareBackI2C.ino demonstrates the basics of bringing up the OLED display and running some graphics and text routines. A 5*8 font is defined in font.h.

The only dependency is the Arduino Wire library. Communication with the device is not optimised (all data is sent a byte per message) but it is enough to demonstrate that running the OLED with raw commands is not too difficult.




Credits and References

Project Source on GitHub Project Gallery Return to the LEAP Catalog

This page is a web-friendly rendering of my project notes shared in the LEAP GitHub repository.

LEAP is just my personal collection of projects. Two main themes have emerged in recent years, sometimes combined:

  • electronics - usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting
  • scale modelling - I caught the bug after deciding to build a Harrier during covid to demonstrate an electronic jet engine simulation. Let the fun begin..
To be honest, I haven't quite figured out if these two interests belong in the same GitHub repo or not. But for now - they are all here!

Projects are often inspired by things found wild on the net, or ideas from the many great electronics and scale modelling podcasts and YouTube channels. Feel free to borrow liberally, and if you spot any issues do let me know (or send a PR!). See the individual projects for credits where due.