TSL2561 illuminance sensor

Device driver interface for the illuminance TSL2561 sensor. More...

Detailed Description

Device driver interface for the illuminance TSL2561 sensor.

Files

file  tsl2561.h
 Device driver interface for the illuminance TSL2561 sensor.
 
file  tsl2561_internals.h
 Internal addresses, registers, constants for the TSL2561 sensor.
 

Data Structures

struct  tsl2561_t
 Device descriptor for the TSL2561 sensor. More...
 

Typedefs

typedef tsl2561_t tsl2561_params_t
 Device initialization parameters.
 

Functions

int tsl2561_init (tsl2561_t *dev, i2c_t i2c, uint8_t addr, uint8_t gain, uint8_t integration)
 Initialize the given TSL2561 device. More...
 
uint16_t tsl2561_read_illuminance (const tsl2561_t *dev)
 Read illuminance value from the given TSL2561 device, returned in lx. More...
 

TSL2561 I2C addresses

#define TSL2561_ADDR_LOW   (0x29)
 
#define TSL2561_ADDR_FLOAT   (0x39)
 
#define TSL2561_ADDR_HIGH   (0x49)
 

TSL2561 integration times

#define TSL2561_INTEGRATIONTIME_13MS   (0x00) /* 13.7ms */
 
#define TSL2561_INTEGRATIONTIME_101MS   (0x01) /* 101ms */
 
#define TSL2561_INTEGRATIONTIME_402MS   (0x02) /* 402ms */
 
#define TSL2561_INTEGRATIONTIME_NA   (0x03) /* N/A */
 

TSL2561 gains

#define TSL2561_GAIN_1X   (0x00)
 
#define TSL2561_GAIN_16X   (0x10)
 

TSL2561 driver initialization return codes

#define TSL2561_OK   (0)
 
#define TSL2561_NOI2C   (-1)
 
#define TSL2561_BADDEV   (-2)
 

Function Documentation

◆ tsl2561_init()

int tsl2561_init ( tsl2561_t dev,
i2c_t  i2c,
uint8_t  addr,
uint8_t  gain,
uint8_t  integration 
)

Initialize the given TSL2561 device.

Parameters
[out]devInitialized device descriptor of BMP180 device
[in]i2cI2C bus the sensor is connected to
[in]addrI2C address of the sensor on the I2C bus
[in]gainTSL2561 gain
[in]integrationTSL2561 integration time
Returns
0 on success
-1 if given I2C is not available
-2 if not a TSL2561 sensor

◆ tsl2561_read_illuminance()

uint16_t tsl2561_read_illuminance ( const tsl2561_t dev)

Read illuminance value from the given TSL2561 device, returned in lx.

Parameters
[in]devDevice descriptor of TSL2561 device to read from
Returns
Illuminance in Lux (lx)