Maybe the board's regulator has failed. If you connect 5 volts on Vin, do you get 3.3 volts on the 3vo pin?
Here is the page at Adafruit describing your board.
Using the sensor is easy. For example, if you're using an Arduino, simply connect the VIN pin to the 5V voltage pin, GND to ground, SCL to I2C Clock (Analog 5) and SDA to I2C Data (Analog 4).
The Adafruit BMP180 board will actually work just fine with Vin at 3.3V or even lower. I had mine connected to a coin cell battery yesterday. Vin was 2.78V and the "3Vo" output was 2.74V. The sensor chip will run at 1.8V.
Then I would suspect a hardware failure on the OP's board. If the OP doesn't get close to the same readings you do, except for the adjustment to 3.3 volts, then that would confirm it.
Connecting a 3.3V I2C module to an 5V Arduino is problematic. In detail when the board contains an voltage regulator, this means that the sensor chip only works on 3.3V, and does not support 5V on its I2C data lines - either the 5V Arduino does not detect the signals from the module, or the module is killed when pullups to 5V are added. Add an I2C level shifter and try again.
Or turn off the internal pullups on the Arduino.
After Wire (begin)
add digitalWrite (A4, LOW);
digitalWrite (A5, LOW);
to turn off the pullups to 5V, then add external pullups to 3.3V, that should be all that is needed.
DrDiettrich:
Connecting a 3.3V I2C module to an 5V Arduino is problematic. In detail when the board contains an voltage regulator, this means that the sensor chip only works on 3.3V, and does not support 5V on its I2C data lines - either the 5V Arduino does not detect the signals from the module, or the module is killed when pullups to 5V are added. Add an I2C level shifter and try again.
The level shifter (logic level converter) is on the Adafruit board.
This board is 5V compliant - a 3.3V regulator and a i2c level shifter circuit is included so you can use this sensor safely with 5V logic and power.
SurferTim:
Then I would suspect a hardware failure on the OP's board. If the OP doesn't get close to the same readings you do, except for the adjustment to 3.3 volts, then that would confirm it.
He doesn't have an Adafruit board. He's got something from eBay.
DrDiettrich:
Connecting a 3.3V I2C module to an 5V Arduino is problematic. In detail when the board contains an voltage regulator, this means that the sensor chip only works on 3.3V, and does not support 5V on its I2C data lines - either the 5V Arduino does not detect the signals from the module, or the module is killed when pullups to 5V are added. Add an I2C level shifter and try again.
In the case of the BMP180 this turns out to not be the case. The I2C lines are 5V tolerant, even though the chip only operates at 1.8-3.6V. And if SDA is only pulled up to 3.3V it will still be read as logic 1 by a 5V Arduino.
My bad on the board. The OP showed an Adafruit BMP085 (previous version of BMP180) board in reply #4, but a different board in reply #2. The board in reply #2 does not have a logic level converter.
The OP should have gone with the Adafruit board. Just my opinion...
In the case of the BMP180 this turns out to not be the case. The I2C lines are 5V tolerant, even though the chip only operates at 1.8-3.6V.
There is no indication in the BMP180 data sheet that the data lines are 5V tolerant. Indeed it is quite clear that they are not. The absolute maximum voltage on all pins is 4.25 V.
It is surprising that the chip reacted at all to the I2C scanner, but perhaps that was its death cry.