Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By Numian
#73358 Hello,
I have two I.3" OLEDs running using
Code: Select allSH1106 display(0x3c, D2, D1);
and both are displaying the same. I figured out that both are usingthe same address... On OLEDs back are two 0 Ohms resistors aranged the same way(see attached picture, please). Can they be used for changing I2C address?

Thank you.
https://imgur.com/a/S1HSc
User avatar
By btidey
#73359 The SH1106 supports 2 addresses for I2C bus depending on how SA0 is wired.

Address for 128x64 is 0x3D (default) or 0x3C (if SA0 is grounded).

Assuming it is responding to the default address then SA0 is set high. It is possible that the 0 resistor connected to 1(VDD) is the SA0 line on this board, but I don't use that one so can't be certain.

If it is then switching it to 0V would change the I2C address.

A fairly safe way to test it is to remove that 0 Ohm resistor and use say a 1K resistor to 0V to see if address changes to 0x3C
User avatar
By e-lab innovations
#89803 Any solution?
I think the corresponding version of 1.3" OLED display hasn't any option to change its I2C address.
Those two resistors are for changing the power pinout.
That is all other OLED have a pinout of GND, VCC, SLC, SDA.
But that display have pinout of VCC, GND, SCL, SDA.