bme280

package
v0.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 7, 2020 License: BSD-3-Clause Imports: 2 Imported by: 0

Documentation

Overview

Package bme280 provides a driver for the BME280 digital combined humidity and pressure sensor by Bosch.

Datasheet: https://cdn-shop.adafruit.com/datasheets/BST-BME280_DS001-10.pdf

Index

Constants

View Source
const (
	CTRL_MEAS_ADDR        = 0xF4
	CTRL_HUMIDITY_ADDR    = 0xF2
	CTRL_CONFIG           = 0xF5
	REG_PRESSURE          = 0xF7
	REG_CALIBRATION       = 0x88
	REG_CALIBRATION_H1    = 0xA1
	REG_CALIBRATION_H2LSB = 0xE1
	CMD_RESET             = 0xE0

	WHO_AM_I = 0xD0
	CHIP_ID  = 0x60
)

Registers. Names, addresses and comments copied from the datasheet.

View Source
const Address = 0x76

The I2C address which this device listens to.

View Source
const (
	SEALEVEL_PRESSURE float32 = 1013.25 // in hPa
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Device

type Device struct {
	Address uint16
	// contains filtered or unexported fields
}

Device wraps an I2C connection to a BME280 device.

func New

func New(bus machine.I2C) Device

New creates a new BME280 connection. The I2C bus must already be configured.

This function only creates the Device object, it does not touch the device.

func (*Device) Configure

func (d *Device) Configure()

Configure sets up the device for communication and read the calibration coefficientes.

func (*Device) Connected

func (d *Device) Connected() bool

Connected returns whether a BME280 has been found. It does a "who am I" request and checks the response.

func (*Device) ReadAltitude

func (d *Device) ReadAltitude() (alt int32, err error)

ReadAltitude returns the current altitude in meters based on the current barometric pressure and estimated pressure at sea level. Calculation is based on code from Adafruit BME280 library

https://github.com/adafruit/Adafruit_BME280_Library

func (*Device) ReadHumidity

func (d *Device) ReadHumidity() (int32, error)

ReadHumidity returns the relative humidity in hundredths of a percent

func (*Device) ReadPressure

func (d *Device) ReadPressure() (int32, error)

ReadPressure returns the pressure in milli pascals mPa

func (*Device) ReadTemperature

func (d *Device) ReadTemperature() (int32, error)

ReadTemperature returns the temperature in celsius milli degrees (°C/1000)

func (*Device) Reset

func (d *Device) Reset()

Reset the device

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL