BMP085 sensor low pressure reading

Hello nice people.

I got a BMP085 today. hooked it up to the arduino mega 2560, and the temp looks ok, altitude is a little high, but the pressure reading is way low. I'm getting ~920, whereas the sensor at the local air station is 1004.

I'm not to sure how to compensate this thing, other than go into the BMP085 library where the math is done, and insert a fudge factor of sufficent value to bring the returned value up to something close to what the air station sensor reports.. I did this just now, so we'll see how it tracks as the pressure rises here over the next 36 hrs or so.

I've used several different skectches to test, and they are all reporting the same info. Not sure how to approach this. Can someone with experience with this sensor offer me a little guidance??

Thank you.
Russ Crisp
Cullowhee, NC

Looking to verify the operation of this device, I ran a test today using the paramater values contained in the Bosh data sheet. The values returned by the call to bmp085_get_cal_parm() are a little different, but I think that's to be expected, since each device is unique. Temp, altitude, and pressure values returned by my sensor using the data sheet values are in agreement with the values shown on the sheet, so I don't think I have a bad sensor.. I
ac1 = 8394
ac2 = -932
ac3 = -14631
ac4 = 33333
ac5 = 25382
ac6 = 16883
b1 = 5498
b2 = 46
mb = -32768
mc = -11075
md = 2432
Temperature = Raw temp: 23639
15.00 *C
Pressure = Raw temp: 23638
Raw pressure: 321678
X1 = 4743
X2 = -2344
B5 = 2399
B6 = -1601
X1 = 1
X2 = 56
B3 = 422
X1 = 2810
X2 = 59
B4 = 33457
B7 = 1171050000
p = 70003
X1 = 3454
X2 = -7859
p = 69964
69964 Pa
Altitude = Raw temp: 23639
Raw pressure: 40210
X1 = 4743
X2 = -2344
B5 = 2399
B6 = -1601
X1 = 1
X2 = 56
B3 = 422
X1 = 2810
X2 = 59
B4 = 33457
B7 = 1171050000
p = 70003
X1 = 3454
X2 = -7859
p = 69964
3016.74 meters
Real altitude = Raw temp: 23639
Raw pressure: 40208
X1 = 4743
X2 = -2344
B5 = 2399
B6 = -1601
X1 = 1
X2 = 56
B3 = 422
X1 = 2810
X2 = 59
B4 = 33457
B7 = 1171050000
p = 70003
X1 = 3454
X2 = -7859
p = 69964
3030.30 meters

The BMP085 is mentioned more often on the forum, did you search allready (upper right corner, and be patient :wink:

Hello again.. I think I'm on to something here. I researched barometer corrections, and found this handy calculator page:

Using a local reading, and my elevation (2200ft) this calculator indicates that I need to add 7800 pascals to my reading to adjust the absolute reading to the value adjusted for sea level. This value is very close the the 'fudge factor' I calculated I needed to add to the pressure to make it agree with the reading from the local airport. Haven't had any big swings in the barometer since I hooked this up, but it seems to be tracking pretty well. Good enough for my purpose anyway.

I discovered that Bosch has intoduced the BMP180, the successor to the BMP085. Doesn't seem to be a great deal different. Smaller, less noise, etc.. But it's out there. I did spot a couple of breakout boards for them too.

FYI
Russ

I also had an issue with my sensor reading the pressure on the low side with no clear reason for it.

I'm using Adafruit library but code from others yielded similar results. Temperature is right where it should be.

Based on some simple tests, I determined that my device consistently reads the pressure value about 4500 pascals lower than it should. I'm wondering if some of these devices are incorrectly calibrated.

I used the sketch supplied in the playground the one that Vierra wrote, mine is Very accurate when the proper altitude is 'plugged' into the sketch, I did have two issues though the first was the obvious a level shifter is needed to go between the 3.3 and 5V busses, my second issue is that I could never get the altitude measurement to work... I don't need or want that information - so I took it out. baro was within 1 m Bar and temp was within 1 - 1.5 Deg so I just left it alone mine is for a home weather station that I suspect will grow as I have time to 'grow' it...

Doc