UNO board I2C pullups? Can be enabled/disabled?

Grumpy_Mike:
Welli am running out of ideas. Any chance of posting a photo of your setup?

here are some photos:
1 of the set-up. I can't get closer and stay in focus.
1 of the wave forms while the scanner sketch is running.

Just a note: The scanner sketch miss-reports the device address. Normally the device address is shifted right one bit before passing it to the Wire.beginTransmission(address) method. The Wire lib then shifts it left with 1 for a read, or 0 for a write before sending it out.:
----------------see twi.c, line 144:
// build sla+w, slave device address + w bit
twi_slarw = TW_READ; //TW_READ=1
twi_slarw |= address << 1; //twi_slarw=twi_slarw ! (address<<1)

The passing program keeps the unshifted address.
Ex: -------------
const byte i2cAddress =(0x2E >>1); // Wire lib shifts back left for IO;
...
Wire.beginTransmission(i2cAddress);

However, the scanner sketch passes raw unshifted address. So for the reported 0x17, Wire believes it to be 0x2E. For 0x7E, its 0x2F. These are the proper read and write addresses for the module. Once the sketch is corrected the correct addresses are reported. See the attachment.

I2CAddressScan.png

I2CScannerV2.ino (1.69 KB)