Barometric sensor - BMP180 -Address Error or Dead??

Breakout boards, sensors, other Adafruit kits, etc.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

Hi,
I think I've zapped my BMP180.... the story ...

I'm working thru a project in the Book - "Begining Sensor Networks with Arduino and Raspberry Pi", pp 130-136, connecting the bmp180(bmp085 in the book) to a Raspberry Pi(I'm using the B+).

I was a bit careless soldering the pins (didn't bother to push the black plastic supports to one end), as a result it didn't sit firmly in the breadboard.

Although I got address 77 from "i2cdetect -y 1", when running a program the results seemed incorrect ie. -55Hpa, although the temp was ok.

So I though I'd resolder the pins. Actually removed them(with quickchip) & replaced them.

However running "i2cdetect -y 1" returned the following !

sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

ie. 3b = UU

unsurprising running the program from the book (pi_bmp085.py) - returned the following results.

Error accessing 0x77: Check your I2C address
Error accessing 0x77: Check your I2C address
The barometric pressure at altitude 127.51 is 14449.01 hPa & Temperature is 12.80
^Z

& the temperature unlike before is unresponsive.

So I'm wondering is the sensor dead or is there something I can do to get it working, any tests??.

The book does mention something about making changes to Adafruit.i2C.py file in the Adafruit-Raspberry-Pi_Python library, but I'm not sure if this still applies.
ie. changing the return value from the getPiRevision() method

Any ideas anyone?? would be much appreciated!

Regards

User avatar
Franklin97355
 
Posts: 23911
Joined: Mon Apr 21, 2008 2:33 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by Franklin97355 »

Could you post clear pictures of your board, any soldering you did and the connections to it?

User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

Hi Franklin, thanks for your interest, ok here's 2 pics, 1 of the soldered board (looks fine ! - I think ;-) ) & a pic of the connections...

And I've included the book's, project pytthon code.

I also tried to run Arduino code - using the "Adafruit_BMP085_Unified-master" library & still no luck.

Regards

Code: Select all

# RasPi I2C Sensor - Beginning Sensor Networks
# 
# For this script, we connect to and read data from an
# I2C sensor. We use the BMP085 sensor module from Adafruit
# or Sparkfun to read barometric pressure and altitude
# using the Adafruit I2C Python code.

import time

# Import the BMP085 class
from Adafruit_BMP085 import BMP085

# Instantiate an instance of the BMP085 class passing
# the address of the sensor as displayed by i2cdetect.
bmp085 = BMP085(0x77)

# Read data until cancelled
while True:
    try:
        # Read the data
        pressure = float(bmp085.readPressure()) / 100
        altitude = bmp085.readAltitude()

        # Display the data
        print("The barometric pressure at altitude {0:.2f} "
              "is {1:.2f} hPa.".format(pressure, altitude))

        # Wait for a bit to allow sensor to stabilize
        time.sleep(3)

    # Catch keyboard interrupt (CTRL-C) keypress
    except KeyboardInterrupt:
        break
Attachments
BMP180-Conn-2-Pi.JPG
BMP180-Conn-2-Pi.JPG (389.66 KiB) Viewed 3241 times
BMP180-with-header.JPG
BMP180-with-header.JPG (325.78 KiB) Viewed 3241 times

User avatar
Franklin97355
 
Posts: 23911
Joined: Mon Apr 21, 2008 2:33 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by Franklin97355 »

It all looks OK to me from the pictures. When did you purchase the BMP180?

User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

[Franklin] I purchased it only a week or so ago!!

Yeah the soldering looks ok, but I wondered if I damaged it when desoldering ie. too much heat near the sensor or something. I was a bit liberal with the iso-propyl. Could excess amounts of that damage the sensor??? (it would have dried before turning it on of course!).

Meanwhile I found out there is an updated Python library for the BMP085/180

ie. Adafruit_Python_BMP

So I d/l the master.zip file into a Documents folder, unzipped it & ran

sudo python setup.py install

then rebooted

then running i2cdetect -y 1

again returned UU in the same address (ie. bmp180 not recognised ??) as in my orig post.

Nevertheless I ran te simpletest.py provided in the library, twice & returned the following

First Run with default bus selection in simpletest.py
===============================

sensor = BMP085.BMP085()

# Optionally you can override the bus number:
#sensor = BMP085.BMP085(busnum=2)

==================
pi@raspberrypi ~/Documents/AdaFruit_Libs/Adafruit_Python_BMP-master/examples $ sudo python simpletest.py
Traceback (most recent call last):
File "simpletest.py", line 36, in <module>
sensor = BMP085.BMP085()
File "/usr/local/lib/python2.7/dist-packages/Adafruit_BMP-1.0.0-py2.7.egg/Adafruit_BMP/BMP085.py", line 68, in __init__
self._load_calibration()
File "/usr/local/lib/python2.7/dist-packages/Adafruit_BMP-1.0.0-py2.7.egg/Adafruit_BMP/BMP085.py", line 71, in _load_calibration
self.cal_AC1 = self._device.readS16BE(BMP085_CAL_AC1) # INT16
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-0.5.0-py2.7.egg/Adafruit_GPIO/I2C.py", line 168, in readS16BE
return self.readS16(register, little_endian=False)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-0.5.0-py2.7.egg/Adafruit_GPIO/I2C.py", line 145, in readS16
result = self.readU16(register, little_endian)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-0.5.0-py2.7.egg/Adafruit_GPIO/I2C.py", line 132, in readU16
result = self._bus.read_word_data(self._address,register) & 0xFFFF
IOError: [Errno 5] Input/output error

========================================
Then Changed to busnum=2 in simpletest.py ie.

#sensor = BMP085.BMP085()

# Optionally you can override the bus number:
sensor = BMP085.BMP085(busnum=2)

================================

/Documents/AdaFruit_Libs/Adafruit_Python_BMP-master/examples $ sudo python simpletest.py
Traceback (most recent call last):
File "simpletest.py", line 39, in <module>
sensor = BMP085.BMP085(busnum=2)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_BMP-1.0.0-py2.7.egg/Adafruit_BMP/BMP085.py", line 66, in __init__
self._device = I2C.Device(address, busnum)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-0.5.0-py2.7.egg/Adafruit_GPIO/I2C.py", line 68, in __init__
self._bus = smbus.SMBus(busnum)
IOError: [Errno 2] No such file or directory

=============================================

I'm not sure if I run the simpletest.py correctly or if it's just giving an error because it can't detect the bmp180. Any ideas??

I removed the cable & connected directly to the Pi's header, but still no success.

Regards

User avatar
adafruit_support_rick
 
Posts: 35092
Joined: Tue Mar 15, 2011 11:42 am

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by adafruit_support_rick »

Jumpers and breadboards have been known to go bad. Can you try swapping things around a little?

User avatar
tdicola
 
Posts: 1074
Joined: Thu Oct 17, 2013 9:11 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by tdicola »

Yep the error "IOError: [Errno 5] Input/output error" happens because the device can't be found on the I2C bus, just like what you see with the i2cdetect command not finding it.

One quick thing to check is the wiring to the sensor and Pi, in particular if the SDA and SCL lines are hooked up to the right pins on the Pi. If those lines are mismatched you'll see behavior like what's happening now where the device doesn't enumerate using i2cdetect. The diagram on the right of this page shows where the SDA and SCL pins are located on the Pi (even though the diagram is for a Model A/B it still applies to the upper part of the B+ header too): http://elinux.org/RPi_Low-level_periphe ... .28GPIO.29 Double check all the connections are going to the right pins on the Pi just to be sure there isn't a mismatch.

Another thing that might cause the sensor to fail to enumerate is it not getting power. If you have a multimeter handy can you check the voltage going to the sensor by putting the positive lead on the sensor's VIN pin and the negative lead on the sensor's GND pin? Lets confirm you're getting 3.3 volts as expected.

User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

Thanks all

Yes, I tried on a different breadboard - no luck & pins are definitely ok! double-tripple-quadrupple checked!!
And tested power & got 3.3v

So I guess that leaves the other 2 pins or some config err on the pi.

Unless any other ideas I may get another sensor & see what happens ( fortunately pretty cheap)

I even tried Sparkfun's BMP180 Arduino code & that didn't work either.

Regards

User avatar
adafruit_support_rick
 
Posts: 35092
Joined: Tue Mar 15, 2011 11:42 am

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by adafruit_support_rick »

Please email [email protected] with a link to this thread for a replacement BMP180

User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

Thanks for the offer, but it'll cost you 3 times what it's worth in shipping, I can buy one locally & get it sooner. so no worries

User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

Wel I got a new sensor (& breadboard) & worked first go - no probs, swapped out & tried the old one & still didn't work.. ah well into the spare parts box, maybe I can salvage a few smd components..

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by adafruit_support_mike »

Send a note to [email protected] with a link to this thread anyway.

The BMP180 you got from us didn't work, and as far as we're concerned that's the end of the story. We stand behind what we sell.

If making things right costs us more than the initial sale, that just shows where our values are. Your opinion of us is worth a hell of a lot more than a new part and a shipping fee.. especially for something as small as a breakout.

If you don't want another BMP180, the folks in support will get you a refund or store credit toward your next order.

User avatar
roduino
 
Posts: 7
Joined: Sun Aug 24, 2014 7:24 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by roduino »

Ok, thank you very much

Regards

User avatar
killabyte
 
Posts: 12
Joined: Thu Oct 16, 2014 5:37 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by killabyte »

roduino wrote:Hi,
I think I've zapped my BMP180.... the story ...

I'm working thru a project in the Book - "Begining Sensor Networks with Arduino and Raspberry Pi", pp 130-136, connecting the bmp180(bmp085 in the book) to a Raspberry Pi(I'm using the B+).

I was a bit careless soldering the pins (didn't bother to push the black plastic supports to one end), as a result it didn't sit firmly in the breadboard.

Although I got address 77 from "i2cdetect -y 1", when running a program the results seemed incorrect ie. -55Hpa, although the temp was ok.

So I though I'd resolder the pins. Actually removed them(with quickchip) & replaced them.

However running "i2cdetect -y 1" returned the following !

sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

ie. 3b = UU

unsurprising running the program from the book (pi_bmp085.py) - returned the following results.

Error accessing 0x77: Check your I2C address
Error accessing 0x77: Check your I2C address
The barometric pressure at altitude 127.51 is 14449.01 hPa & Temperature is 12.80
^Z

& the temperature unlike before is unresponsive.

So I'm wondering is the sensor dead or is there something I can do to get it working, any tests??.

The book does mention something about making changes to Adafruit.i2C.py file in the Adafruit-Raspberry-Pi_Python library, but I'm not sure if this still applies.
ie. changing the return value from the getPiRevision() method

Any ideas anyone?? would be much appreciated!

Regards
Having the same issue :( ive tried everything discussed in this thread chip is less than a couple days old please help! :(

User avatar
Franklin97355
 
Posts: 23911
Joined: Mon Apr 21, 2008 2:33 pm

Re: Barometric sensor - BMP180 -Address Error or Dead??

Post by Franklin97355 »

Having the same issue :(
Could you post clear pictures of both sides of your board showing any soldering you have done and the connections to it? and how you are testing it.

Locked
Please be positive and constructive with your questions and comments.

Return to “Other Products from Adafruit”