NewHaven OLED Display on I2C

I’d definetly try with the 10k pull-ups.

Not sure how the display copes with 3.3V instead of 2.8V, but you could always go for 5V via Vin (also pullups to Vin).

I think /RES can be left N/C since it should have a pull-up on board.
If you want to reset via code, you could use this code with 5V too

const int _res = D6; // any pin other than A3 or DAC (not 5V tolerant)
void setup() {
  pinMode(_res, INPUT); // set for hi-Z (=default)
  ...
}

void resetDisplay() {
  pinMode(_res, OUTPUT);
  digitalWrite(_res, LOW);
  delay(100);
  pinMode(_res, INPUT); // set for hi-Z (=default)
}

You could also use the I2C scanner to first check if the display is found at all.

1 Like