Light sensor causes Arduino to "lock up"


I’m going through the process of testing my new build and one of the issues is with the light sensor. When it is connected to the I2C bus on the Grove base shield, the serial monitor stops outputting data all together. When I unplug it, data flows normally though the serial monitor. When it’s unplugged and data is flowing, I get an error that says “tsl2561 read register timeout”.

Here’s what I have done,

Verified 3.3v on the I2C connector
Verified SDA & SCL were actually connecting to SDA and SCL on the Arduino.

What am I doing wrong?


My next steps are going to be to test out the sensor using another Arduino to make sure the sensor isn’t just bad.


Did you check I2C slave address of your light sensor? According to datasheet, the I2C address is selectable by one pin on TSL2561. The address can be 0x29, 0x39 or 0x49. The original Seed-Studio library for TSL2561 uses 0x29. Maybe your sensor has different address?

Also, light sensor from SeedStudio is 5V device (although it should work at 3.3V). It contains 3.3V linear regulator and two MOSFETs for voltage level shifting. You should power it by 5V.


There are no jumpers of any kind on my v1.1 sensor from Seeeedstudio. The documentation says it will take 3-5v. How do I find out what the address is set to?



I screwed up in my parts ordering process and ordered a “Light Sensor”, not a “Digital Light Sensor”. Whoops, correct sensor is on the way.


It locks up the i2c buss causing the arduino to hang. I had the same problem.