scd4x

package
v0.0.0-...-7691dab Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2022 License: BSD-3-Clause Imports: 3 Imported by: 0

Documentation

Overview

Package scd4x provides a driver for the scd4x I2C envrironment sensor.

Datasheet: https://sensirion.com/media/documents/C4B87CE6/627C2DCD/CD_DS_SCD40_SCD41_Datasheet_D1.pdf

This driver is heavily influenced by the scd4x code from Adafruit for CircuitPython: https://github.com/adafruit/Adafruit_CircuitPython_SCD4X Thank you!

Index

Constants

View Source
const (
	// Address is default I2C address.
	Address = 0x62

	CmdDataReady                        = 0xE4B8
	CmdFactoryReset                     = 0x3632
	CmdForcedRecal                      = 0x362F
	CmdGetAltitude                      = 0x2322
	CmdGetASCE                          = 0x2313
	CmdGetTempOffset                    = 0x2318
	CmdPersistSettings                  = 0x3615
	CmdReadMeasurement                  = 0xEC05
	CmdReinit                           = 0x3646
	CmdSelfTest                         = 0x3639
	CmdSerialNumber                     = 0x3682
	CmdSetAltitude                      = 0x2427
	CmdSetASCE                          = 0x2416
	CmdSetPressure                      = 0xE000
	CmdSetTempOffset                    = 0x241D
	CmdStartLowPowerPeriodicMeasurement = 0x21AC
	CmdStartPeriodicMeasurement         = 0x21B1
	CmdStopPeriodicMeasurement          = 0x3F86
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Device

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

func New

func New(i2c drivers.I2C) *Device

New returns SCD4x device for the provided I2C bus using default address of 0x62.

func (*Device) Configure

func (d *Device) Configure() (err error)

Configure the device.

func (*Device) Connected

func (d *Device) Connected() bool

Connected returns whether sensor has been found.

func (*Device) DataReady

func (d *Device) DataReady() (bool, error)

DataReady checks the sensor to see if new data is available.

func (*Device) ReadCO2

func (d *Device) ReadCO2() (co2 int32, err error)

ReadCO2 returns the CO2 concentration in PPM (parts per million).

func (*Device) ReadData

func (d *Device) ReadData() error

ReadData reads the data from the sensor and caches it.

func (*Device) ReadHumidity

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

ReadHumidity returns the current relative humidity in %rH.

func (*Device) ReadTempC

func (d *Device) ReadTempC() float32

ReadTempC returns the value in the temperature value in Celsius.

func (*Device) ReadTempF

func (d *Device) ReadTempF() float32

ReadTempF returns the value in the temperature value in Fahrenheit.

func (*Device) ReadTemperature

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

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

func (*Device) StartLowPowerPeriodicMeasurement

func (d *Device) StartLowPowerPeriodicMeasurement() error

StartLowPowerPeriodicMeasurement puts the sensor into low power working mode, about 30s per measurement.

func (*Device) StartPeriodicMeasurement

func (d *Device) StartPeriodicMeasurement() error

StartPeriodicMeasurement puts the sensor into working mode, about 5s per measurement.

func (*Device) StopPeriodicMeasurement

func (d *Device) StopPeriodicMeasurement() error

StopPeriodicMeasurement stops the sensor reading data.

Jump to

Keyboard shortcuts

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