I2c scanner not returning result

Hey all,

Just bought a Wemos Oled shield and am trying to get it to work with an Arduino pro mini.

I have connected it as follows

Oled Pro mini

ground to ground

3.3 volt to a voltage divider from Vcc. It tests ok at 3.3 volts…

D1 to A5 SCL

D2 to A4 SDA

When I run an I2C scanner it returns no result as It just says I2c scanner… Scanning…

#include <Wire.h>
 
 
void setup()
{
  Wire.begin();
 
  Serial.begin(9600);
  while (!Serial);             // Leonardo: wait for serial monitor
  Serial.println("\nI2C Scanner");
}
 
 
void loop()
{
  byte error, address;
  int nDevices;
 
  Serial.println("Scanning...");
 
  nDevices = 0;
  for(address = 1; address < 127; address++ )
  {
    // The i2c_scanner uses the return value of
    // the Write.endTransmisstion to see if
    // a device did acknowledge to the address.
    Wire.beginTransmission(address);
    error = Wire.endTransmission();
 
    if (error == 0)
    {
      Serial.print("I2C device found at address 0x");
      if (address<16)
        Serial.print("0");
      Serial.print(address,HEX);
      Serial.println("  !");
 
      nDevices++;
    }
    else if (error==4)
    {
      Serial.print("Unknown error at address 0x");
      if (address<16)
        Serial.print("0");
      Serial.println(address,HEX);
    }    
  }
  if (nDevices == 0)
    Serial.println("No I2C devices found\n");
  else
    Serial.println("done\n");
 
  delay(5000);           // wait 5 seconds for next scan
}

And there it sits …

I have tested the A4 and A5 with a simple blink code and both pins return 5 volts so they should be ok.

I have included the pinouts of the Oled shield and the Pro mini.

I have ordered another different type of oled shield to see if mine was DOA.

Any help appreciated.

Wemos oled.jpg

Pro mini pinout.jpg

3.3 volt to a voltage divider from Vcc. It tests ok at 3.3 volts...
. . .
I have ordered another different type of oled shield to see if mine was DOA.

The use of a voltage divider is more likely to be the source of your problem.

Have you considered replacing the Pro Mini with a Wemos ESP8266 which would mate directly with your OLED shield.

Don

Look at the pinout of the Pro mini and note that A4 and A5 are SDA and SCL. Connect the Pro mini direct to the OLED, this is OK as an I2C driver only drives the line low and the pullup is on the OLED. Th Pro mini will accept the 3.3V logic level. Just don't set A4 or A5 to output high in your sketch.