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

Detailed Description


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...


typedef tsl2561_t tsl2561_params_t
 Device initialization parameters.


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 (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

int tsl2561_init ( tsl2561_t dev,
i2c_t  i2c,
uint8_t  addr,
uint8_t  gain,
uint8_t  integration 
[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
0 on success
-1 if given I2C is not available
-2 if not a TSL2561 sensor
uint16_t tsl2561_read_illuminance ( tsl2561_t dev)
[in]devDevice descriptor of TSL2561 device to read from
Illuminance in Lux (lx)