Anyone used the Bosch BMP085 I2C baro sensor yet ?


Closed Thread
Results 1 to 40 of 52

Hybrid View

  1. #1
    Join Date
    Nov 2008
    Posts
    96

    Default Anyone used the Bosch BMP085 I2C baro sensor yet ?

    Hi all,

    If anyones used this new digital barometric sensor yet I'd love to see the PBP code to get calibrated readings out of it. I'm doing an open source project for R/C telemetry and using this sensor with a PIC16F819 is one of the first steps for me...

    http://www.bosch-sensortec.com/conte...5-DS000-05.pdf

    It's not just a simple I2C device (or I wouldn't be asking). It contains calibration data that must be referenced against an internal temperature sensor every time you calculate pressure (or altitude in this case). The math is a little more complex than I'm used too.

    Anyway. I thought I'd ask here, might save me many migraines :-)

    Thanks,
    Martin

  2. #2


    Did you find this post helpful? Yes | No

    Default SensorTech vs Intersema

    Hello Martin,

    I just scanned the Bosch datasheet. Their sensor is very similar to the Intersema MS5561C. The coding is more complex for the Bosch and the package will be tough to prototype I reckon. Have a look at the Intersema MS5540C. It is an easy package for hand solder prototyping. The Intersema range converts in about 35 mSecs. The Bosch unit at 7.5 mS has advantages in this area. Unless you need the speed I would have a go at the Intersema.

    The MS5540C is under $20 qty 1 at Digikey which is where I get them.

    HTH
    BrianT

  3. #3
    Join Date
    Feb 2006
    Location
    Gilroy, CA
    Posts
    1,530


    Did you find this post helpful? Yes | No

    Default

    Thanks Brian, I had not seen that sensor before. Nice catch.

    Martin,

    Don't know if you saw it already, but sparkfun has some C sample code here:
    http://www.sparkfun.com/commerce/pro...oducts_id=9694

    Sometimes it helps me to look at, even though I don't know C very well.

    I ordered their board, but they are out of stock right now.

    Walter

  4. #4
    Join Date
    May 2004
    Location
    NW France
    Posts
    3,648


    Did you find this post helpful? Yes | No

    Wink

    Hi,

    Also have a look to this one ...

    reminds you some other ???

    Alain
    Attached Images Attached Images
    ************************************************** ***********************
    Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
    ************************************************** ***********************
    IF there is the word "Problem" in your question ...
    certainly the answer is " RTFM " or " RTFDataSheet " !!!
    *****************************************

  5. #5
    Join Date
    Nov 2008
    Posts
    96


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by scalerobotics View Post
    Thanks Brian, I had not seen that sensor before. Nice catch.

    Martin,

    Don't know if you saw it already, but sparkfun has some C sample code here:
    http://www.sparkfun.com/commerce/pro...oducts_id=9694

    Sometimes it helps me to look at, even though I don't know C very well.

    I ordered their board, but they are out of stock right now.

    Walter
    Thanks Walter and Brian.

    Brian I'm already committed to the Bosch sensor, and I have one on the way to me. Bare sensors are $8.95US at Sparkfun which is hard to beat.
    I'd like to use it in this project as it has a good track record for use in altimeter devices. The soldering of this device shouldn't be too hard if you have some SMD experience (lots in my case). Or tip it upside down like another guy has and solder wires on top.

    Walter I didn't C the C code at Sparkfun but I did find some in another website here
    http://www.pixelproc.net/varios.html
    I downloaded the C code, but it's all double dutch to me unfortunately. Maybe it will help you.
    Walter maybe we can share some code when we have the devices.

    Martin

  6. #6
    Join Date
    Jan 2009
    Location
    Miami, Florida USA
    Posts
    699


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by mr.sneezy View Post
    Bare sensors are $8.95US at Sparkfun which is hard to beat.
    Check this sensors out.

    http://futurlec.com/Pressure_Sensors.shtml

    Robert

  7. #7


    Did you find this post helpful? Yes | No

    Default Watch out for light effects

    The FuturLec prices are excellent but I fear the HP03D will give highly variable results depending on incident light intensity. All silicon strain gauges are light sensitive. The HP01 and HP02 ones, coated in black, will be OK. The Intersema MS554x are light dependent even though they have opaque white 'silicone snot' covering the strain gauge element to reduce, but not eliminate, this effect.

    Another trap with all these sensors is that distorting the ceramic substrate will bring out very large pressure and temperature offsets. In my experience, proper SMD reflow oven soldering does not stress the subsrtate anywhere like as much as hand soldering where the thermal stresses build up as each pin is soldered individually. I have found mounting the chip upside down and hand soldering fine 0.010 inch or 0.25 mm wire wrap wires keeps a batch tracking very well. You will not see the stress effects if you only make one or two units but if you build a batch of 100+ the difference unit to unit can be very frustrating.

    The Hope HP03 has a cute feature of an on-board oscillator. I use the CCP registers of a PIC to provide the 32768 Hz MClk to the Intersema snsor but sometimes I would rather use a watch crystal direct on the pressure sensor instead of tying up a CCPWM port.

    Lastly, most of the pressure sensor application notes specify a large tantalum cap across the supply. 47 uF in the case of the Intersema. The leakage current of this cap exceeds the sleep current of the sensor so don't forget that when you calculate your battery life.

    HTH

    BrianT

  8. #8
    Join Date
    Feb 2006
    Location
    Gilroy, CA
    Posts
    1,530


    Did you find this post helpful? Yes | No

    Default

    Sorry I missed the RAM part (even though it was in capitals...)

    If my memory serves me correctly, I think the only way to test your ram space is to create a large dummy array, and see how large you can make it. If you get an error, make it smaller, to see what you have left. Yes, it would be nice if MCS counted your RAM

  9. #9
    Join Date
    May 2010
    Posts
    3


    Did you find this post helpful? Yes | No

    Default Help to program BMP085 in assembler

    Hi... I'm new in this forum and I need your help about how to manage data from BMP085 in assembler... I need test it in a PIC16f84...

  10. #10
    Join Date
    Feb 2006
    Location
    Gilroy, CA
    Posts
    1,530


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by rore85 View Post
    Hi... I'm new in this forum and I need your help about how to manage data from BMP085 in assembler... I need test it in a PIC16f84...
    That sounds a bit like torture for most of us. The math is hard enough using the longs feature in PBP, and a more robust PIC18F device. You might try the Microchip forum, as they are into that kind of thing (assembly). Likely they will help, but not do it for you.

    Good luck,

    Walter

  11. #11
    Join Date
    Nov 2008
    Posts
    96


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by rore85 View Post
    Hi... I'm new in this forum and I need your help about how to manage data from BMP085 in assembler... I need test it in a PIC16f84...
    Hi, If you can get a PIC16F84 to read and process the data from a BMP085 into true pressure and temperature I'll eat my shorts !!

    My program has hit 5.5Kb in code size on an 18F PIC. Sure I know assembly is much much tighter, but by that much ?

    I will soon post (I hope so) the complete code to use this sensor on a PIC18FXXXX device with PBP. You can use the ASM file I guess to see how blocks of it are done in assembly.
    Cheers,
    Martin

  12. #12
    Join Date
    May 2004
    Location
    NW France
    Posts
    3,648


    Did you find this post helpful? Yes | No

    Default

    Hi, Sneezzy

    I Think , with little trickery, the 16F84 could fit ...

    let's think ...

    IF you calculate the linearisation OUTSIDE the Pic, and trunk it to the PRECISION claimed ( not the resolution, eh ...)
    ...

    I'm sure a lookup table, or a couple of " ax+b " regressions could be used.

    But that implies ... the sensor and the PIC are married for life !!!

    Alain
    ************************************************** ***********************
    Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
    ************************************************** ***********************
    IF there is the word "Problem" in your question ...
    certainly the answer is " RTFM " or " RTFDataSheet " !!!
    *****************************************

  13. #13
    Join Date
    Nov 2008
    Posts
    96


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by Acetronics View Post
    Hi, Sneezzy

    I Think , with little trickery, the 16F84 could fit ...

    let's think ...

    IF you calculate the linearisation OUTSIDE the Pic, and trunk it to the PRECISION claimed ( not the resolution, eh ...)
    ...

    I'm sure a lookup table, or a couple of " ax+b " regressions could be used.

    But that implies ... the sensor and the PIC are married for life !!!

    Alain
    I did think of that early on. I think you need to map all possible pressure readings (at your needed precision) across your range, but then also map for every possible temperature change across all pressure readings in that range. I think it very quickly becomes an impressive size lookup table yes ?
    I suspect my shorts are safe, but if the poster above can do it I'll listen :-)

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts