I2C Pressure Sensor

From Openmoko

(Difference between revisions)
Jump to: navigation, search
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
== General ==
 
The BMP085 ([http://www.bosch-sensortec.com/content/language1/downloads/BMP085_DataSheet_Rev.1.0_01July2008.pdf Datasheet]) from [http://www.bosch-sensortec.com/content/language1/html/3477.htm Bosch Sensortec] is a simple, easy to use, pressure sensing device. It speaks I2C and includes a temperature sensor.
 
The BMP085 ([http://www.bosch-sensortec.com/content/language1/downloads/BMP085_DataSheet_Rev.1.0_01July2008.pdf Datasheet]) from [http://www.bosch-sensortec.com/content/language1/html/3477.htm Bosch Sensortec] is a simple, easy to use, pressure sensing device. It speaks I2C and includes a temperature sensor.
 
Because of it's tiny size of 5.0mm x 5.0mm x 1.2mm it fits nice into the Freerunner.
 
Because of it's tiny size of 5.0mm x 5.0mm x 1.2mm it fits nice into the Freerunner.
Line 14: Line 15:
 
It searchs for the chip at I2C address 0x77 and exports a sysfs interface where you can read the temperature and the pressure as well as adjust the internal oversampling.
 
It searchs for the chip at I2C address 0x77 and exports a sysfs interface where you can read the temperature and the pressure as well as adjust the internal oversampling.
  
--[[User:Cmair|Cmair]] 19:10, 30 September 2009 (UTC)
 
  
 +
== Random information ==
 +
Collection of random information from the mailing list
  
 +
=== Current consumption ===
 +
From the datasheet:
 +
The sensor uses about 0.1µA in standby and 12µA for one sample per second. If the highest resolution is not needed this gets down to 3µA per sample per
 +
second and scales linear with the sample rate.
 +
 +
=== Resolution ===
 +
I think I can get about 0.5m. The datasheed says 0.25m and better could be possible with software averaging.
 +
Outdoors the chip seems to work rather good (I still need to climb a hill). Going upstairs is also reflected quite good, so you can guess on which floor you are by looking at the pressure. Trying to measure height differences below one meter does not work reliable. I will continue to work on that.
 +
 +
== Todo ==
 +
* Figure out if/why the sensor reports increased pressure results if it's heated up [in progress]
 +
* Do some resolution tests
 +
* Write a nice user interface
 +
 +
== Links ==
 
For other chips and ideas on how to use them see [[Variometer]] and [[Wish_List_-_Hardware_-_Atmospheric]].
 
For other chips and ideas on how to use them see [[Variometer]] and [[Wish_List_-_Hardware_-_Atmospheric]].
 +
 +
 +
[[Category:Accessories]]
 +
[[Category:Hardware ideas]]

Latest revision as of 16:49, 9 September 2010

Contents

[edit] General

The BMP085 (Datasheet) from Bosch Sensortec is a simple, easy to use, pressure sensing device. It speaks I2C and includes a temperature sensor. Because of it's tiny size of 5.0mm x 5.0mm x 1.2mm it fits nice into the Freerunner.

Bmp085-bottom.jpg

The sensor needs just four wires: power (3.3V, GND) and I2C (SDA, SCL). The wiki page about I2C describes where to get them.

Pressure-sensor-bt.jpg

I glued mine next to the BT antenna.


An experimental kernel driver is available from gitorious. It searchs for the chip at I2C address 0x77 and exports a sysfs interface where you can read the temperature and the pressure as well as adjust the internal oversampling.


[edit] Random information

Collection of random information from the mailing list

[edit] Current consumption

From the datasheet: The sensor uses about 0.1µA in standby and 12µA for one sample per second. If the highest resolution is not needed this gets down to 3µA per sample per second and scales linear with the sample rate.

[edit] Resolution

I think I can get about 0.5m. The datasheed says 0.25m and better could be possible with software averaging. Outdoors the chip seems to work rather good (I still need to climb a hill). Going upstairs is also reflected quite good, so you can guess on which floor you are by looking at the pressure. Trying to measure height differences below one meter does not work reliable. I will continue to work on that.

[edit] Todo

  • Figure out if/why the sensor reports increased pressure results if it's heated up [in progress]
  • Do some resolution tests
  • Write a nice user interface

[edit] Links

For other chips and ideas on how to use them see Variometer and Wish_List_-_Hardware_-_Atmospheric.

Personal tools

The BMP085 (Datasheet) from Bosch Sensortec is a simple, easy to use, pressure sensing device. It speaks I2C and includes a temperature sensor. Because of it's tiny size of 5.0mm x 5.0mm x 1.2mm it fits nice into the Freerunner.

Bmp085-bottom.jpg

The sensor needs just four wires: power (3.3V, GND) and I2C (SDA, SCL). The wiki page about I2C describes where to get them.

Pressure-sensor-bt.jpg

I glued mine next to the BT antenna.


An experimental kernel driver is available from gitorious. It searchs for the chip at I2C address 0x77 and exports a sysfs interface where you can read the temperature and the pressure as well as adjust the internal oversampling.

--Cmair 19:10, 30 September 2009 (UTC)


For other chips and ideas on how to use them see Variometer and Wish_List_-_Hardware_-_Atmospheric.