This breakout can be used with either an SPI or I2C interface - selectable by cutting two jumpers on the back. The design is completely 5V-ready, with an onboard regulator and built-in boost converter. It's easier than ever to connect directly to your 3V or 5V microcontroller without needing any kind of level shifter!
The design has been redesigned to add auto-reset circuitry so that the reset pin is optional, since it speaks I2C you can easily connect it up with just two wires (plus power and ground!). SparkFun qwiic compatible STEMMA QT connectors are included for the I2C bus so you don't even need to solder when you purchase and attach a STEMMA QT cable! A QT Cable is not included.
Adafruit have a detailed tutorial and example code in the form of an Arduino library for text and graphics. You'll need a microcontroller with more than 1K of RAM since the display must be buffered. The library can print text, bitmaps, pixels, rectangles, circles, and lines. It uses 1K of RAM since it needs to buffer the entire display but it's very fast! The code is simple to adapt to any other microcontroller.
Please note that OLED displays are made of hundreds of...OLEDs! That means each pixel is a little organic LED, and if it's kept on for over 1000 hours it'll start to dim. If you want to keep the display uniformly bright, please turn off the display (set the pixels off) when it isn't needed to keep them from dimming.
EagleCAD PCB files, Fritzing, and datasheets available in the product tutorial
As of August 3, 2020 the PCB has been revised to be a little smaller, added auto-reset circuitry so the RESET pin is not required, made I2C the default configuration, and added 2 STEMMA QT connectors for easy plug-and-play usage.
- PCB: 29.2mm x 26.7mm (1.1" x 1")
- Screen: 26.6mm x 19mm
- Thickness: 6.2mm
- Weight: 4.5g
- Distance between mounting holes: 24mm
- Display current draw is completely dependent on your usage: each OLED LED draws current when on so the more pixels you have lit, the more current is used. They tend to draw ~20mA or so in practice but for precise numbers you must measure the current in your usage circuit.
- This board/chip uses I2C 7-bit address between 0x3C-0x3D, selectable with jumpers