I've been playing with a BMP180 barograph chip https://www.sparkfun.com/products/11824. The setup is quite simple, one wire to ground, one to 3.3v and the other two to SDA and SCL. The wiring is shown here https://learn.sparkfun.com/tutorials/bmp180-barometric-pressure-sensor-hookup-/connecting-the-hardware. The problem is this, I've noticed that after plugging the module's power leads (only) into the arduino, the voltage across them is 3.3 volts (as expected) but as soon as I plug in the SDA and SCL leads then the voltage across the power leads goes up to 5 volts. This isn't what I was expecting, I guess somehow either the SDA or SCL lead is 'pulling' the voltage up to 5 volts, which probably isn't very healthy! (the 'resting state' for both the SDA and SCL pins seems to be 5 volts)
Is this right? I know I'm following the wiring diagram correctly and connecting SDA and SCL directly to the arduino, but I'm wondering if because the arduino is a 5 volt device and the BMP180 is a 3.3 volt device I ought to be using some sort of buffer or level shifter between the two. (different to what sparkfun claim)
Some background info - I'm working with a Mega2560, and using pins 20 and 21. I've not actually attempted to run any code yet, I unplugged it straight away as soon as I noticed the voltage come up. I have got a compass module https://www.sparkfun.com/products/7915 to work on the same arduino which indicates that a) the mega works ok, and b) I'm not a complete numpty (others may dispute this) and c)I2C works on this arduino. I first noticed this issue on a old BMP080 http://www.coolcomponents.co.uk/barometric-pressure-sensor-bmp085-breakout.html but I put this down to it being an old unit that had been lying in a draw for 6 months, hence this issue was the first thing I checked when I plugged in the new unit. I haven't run any code on it, because I didn't want to risk frying the chip, so far it's only been connected for about 3 seconds so I'm hoping it hasn't been damaged.
All guidance appreciated!