OLED display, 1.3 inch SH1106
The 1.3 inch OLED. It looks like an SSD1306 and is not: 132 columns, page addressing only.
- 4 pins
- 1 setting
- In 1 project
- In 1 lesson
The OLED display, 1.3 inch SH1106 in brief
What it is, and every setting the properties panel gives it.
The 1.3 inch 128x64 OLED looks like a bigger SSD1306 and has the same four pins, GND, VCC, SCL and SDA, at the same 0x3C address, but its controller is an SH1106, and that difference is the whole story of this part. It runs from 3.3 or 5 volts with pull-ups on the module, wired to A4 and A5 on an Uno or GPIO 21 and 22 on an ESP32. The SH1106 has 132 columns of RAM for 128 of glass, bonded from column 2, so a driver has to start every page there; it has page addressing only, with no horizontal mode or column window; and its DC-DC converter starts on, with no 0x8D charge pump command. Mokxi models all three, so an SSD1306 sketch on it shows a picture two pixels out of place with a stripe of noise down one side, or every pixel piled into the top eight rows. Mokxi’s Adafruit_SH110X header drives it properly through Adafruit_SH1106G. U8g2’s SH1106 constructors are not included, and contrast reaches the picture as sixteen steps.
- Family
- Displays
- Pins
- 4
- address
- 60
- the I2C address,
0x3Cby default.
4 pins
Named as the editor names them, so a wire lands where you expect it.
How to use a 1.3 inch SH1106 OLED with an Arduino
On its own, wire it like any I2C OLED: SDA to A4, SCL to A5, VCC to 5 V and GND to GND, at address 0x3C. Use Adafruit_SH1106G rather than Adafruit_SSD1306: call begin(0x3C, true), draw with the usual GFX calls, and send the frame with display(). The SSD1306 library gives a shifted, half-missing picture.
The project beside this puts it on A3 and A2 instead, on a bus of its own, because the 128x32 SSD1306 next to it also answers at 0x3C. Its hand-written driver starts every page at column 2, which is the one thing an SH1106 driver has to get right.
What is true about the OLED display, 1.3 inch SH1106, here
In its help article’s own words: what the simulation gets right, and where it stops.
Not modeled
The same as the SSD1306: no clock stretching, no read transfers, no bus errors, and
the multiplex, offset, clock, pre-charge, COM pin and VCOM commands are taken and
change nothing. The read-modify-write mode (0xE0, 0xEE) is accepted and does
nothing, since nothing reads the RAM back. Contrast reaches the picture as sixteen
steps.
From SH1106 1.3 inch OLED, in full.
See the OLED display, 1.3 inch SH1106 in a project
One built-in project uses it. It opens in the editor, already wired.
Where it turns up in a lesson
One lesson places it in its own circuit.
The boards it is shown on
This board has a built-in project with the OLED display, 1.3 inch SH1106 in it.
Arduino libraries for the OLED display, 1.3 inch SH1106
Built in, so the sketch compiles with nothing to install. Each page has the calls, the wiring and an example to run.
The rest of the bench
Every one of these is drawn and simulated the same way.
Wire up the OLED display, 1.3 inch SH1106
Open the editor and push it into the breadboard. It is free, and it runs on your own machine.