1BMP085 Driver (Pressure and Temperature Sensor) 2=============================================== 3 4Overview 5-------- 6 7This is the driver for the pressure and temperature sensor commonly found on 8the WeatherCape expansion board for the BeagleBone. 9 10Interface 11--------- 12 13This driver implements the character device interface. It supports reading 14through /dev/bmp085b{1,3}s77. When read from, it returns a string containing 15a data label, a colon, and the sensor value. 16 17Example output of `cat /dev/bmp085b3s77`: 18 19TEMPERATURE : 23.1 20PRESSURE : 69964 21 22Temperature is expressed in Celsius (a.k.a. centigrade). The resolution is 230.1C. 24 25Pressure is expressed in Pascals. Valid values are 30000 to 110000. 26The resolution is 3 Pa. 27 28Limitations 29----------- 30 31The measurement resolution is configurable in the chip, but this driver just 32uses standard mode. It could probably be implemented with an ioctl() or by 33passing an argument via the minix-service command, but it doesn't seem too 34useful at this time. See the data sheet for the trade-offs between conversion 35time, power consumption, and resolution. 36 37While only the BMP085 is supported at present, the BMP085's predecessor, 38SMD500, should be easy to support in this driver with some small changes 39to the calculations and coefficients. 40 41As with the SHT21's temperature sensor, the BMP085's temperature sensor 42appears to be heated a couple of degrees by the BeagleBone. After power-on, 43the readings rise slightly and then level off a few degrees above room 44temperature. 45 46Testing the Code 47---------------- 48 49The driver should have been started by a script in /etc/rc.capes/ If not, 50this is how you start up an instance: 51 52cd /dev && MAKEDEV bmp085b3s77 53/sbin/minix-service up /service/bmp085 -label bmp085.3.77 \ 54 -dev /dev/bmp085b3s77 -args 'bus=3 address=0x77' 55 56Getting the sensor value: 57 58cat /dev/bmp085b3s77 59 60Killing an instance: 61 62/sbin/minix-service down bmp085.3.77 63 64