Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/rm-hull/luma.oled/llms.txt

Use this file to discover all available pages before exploring further.

Before installing any software, you must wire your OLED display correctly to your single-board computer. The physical connection method — the interface — determines which pins you use, how fast the display updates, and how complex the wiring is. Getting this step right is essential: an incorrectly wired display will not work, and reversing power pins can cause permanent damage.

Choosing an interface

There are three interface types supported by luma.oled. Each involves a different trade-off between simplicity, speed, and cost.
InterfacePins requiredSpeedComplexity
I2C4Moderate (100–400 KHz)Easiest
SPI6–7FastestModerate
Parallel9+SlowerMost complex
I2C uses only four pins (VCC, GND, SDA, SCL) and is the easiest interface to wire. It is a good default choice for most projects. SPI requires six or seven pins and runs at a higher frequency with less protocol overhead, making it better suited for applications that need fast display refresh rates. Parallel (6800-style bus) requires nine or more pins, is slower than SPI, and involves more complex wiring. Its main advantage is cost — parallel-bus displays are often less expensive.
You can identify your display’s interface type by counting the number of pins. Four pins means I2C; six or seven means SPI; nine or more means parallel.
Always double-check your wiring before applying power. In particular, do not reverse VCC and GND — this can permanently damage your display or your single-board computer.

Interface guides

I2C

Simplest wiring with just 4 pins. Recommended for most setups.

SPI

Faster updates with 6–7 pins. Good for refresh-sensitive applications.

Parallel

9+ pin bus interface. Slower but often lower cost.

Build docs developers (and LLMs) love