Creative Commons images are CC BY-NC-SA 3.0


added to your
shopping cart

In stock 101 in stock
5.95 1+ units
5.36 10+ units
4.76 100+ units

Description: The TSL2561 Luminosity Sensor Breakout is a sophisticated light sensor which has a flat response across most of the visible spectrum. Unlike simpler sensors, the TSL2561 measures both infrared and visible light to better approximate the response of the human eye. And because the TSL2561 is an integrating sensor (it soaks up light for a predetermined amount of time), it is capable of measuring both small and large amounts of light by changing the integration time.

The TSL2561 is capable of direct I2C communication and is able to conduct specific light ranges from 0.1 - 40k+ Lux easily. Additionally, the TSL12561 contains two integrating analog-to-digital converters (ADC) that integrate currents from two photodiodes, simultaneously. Each breakout requires a supply voltage of 3V and a low supply current max of 0.6mA.


Comments 15 comments

  • Do you know if your TSL2561 Luminosity Sensor Breakout will work with the adafruit libraries: Adafruit_Sensor.cpp, Adafruit_Sensor.h, Adafruit_TSL2561_U.cpp, Adafruit_TSL2561_U.h. I am already using Adafruit_Sensor.cpp and .h for another I2C sensor in my setup. Thanks.

  • I am trying to compile the example software, but getting the error message ‘SFE_TSL2561_example:53: error: “SFE_TSL2561” does not name a type’. The ‘SFE_TSL2561 light;’ statement is highlighted near the top of the sketch. The downloaded folder was installed in ‘Libraries’ (on a Mac), and the .h and .cpp files are present. I don’t see how the SFE_TSL2561 class is not recognized by the compiler. Any suggestions for how to fix?

    • That error sounds exactly like the library isn’t being recognized.

      • Did you quit and restart the Arduino IDE after installing the library?

      • Under your Arduino/libraries folder is there an “SFE_TSL2561” folder that contains the .h and .cpp files?

      • Does your IDE’s “File/Preferences/Sketchbook location” point to your Arduino sketch folder that contains the libraries folder?

      If you continue to have trouble, contact our tech support department who will be happy to help get you up and running.

  • I think I have one of my 5 sensors broken. I discovered it when tried to attach last 3 of them to my arduino simultaneously (previous 2 worked, attached to other arduinos worked ok). To make it work I removed solder from PU on two of them, and soldered “1” and central on first and “0” and central on other. Let’s name:

    • A - where nothing was soldered
    • B - “1” and central soldered
    • C - “0” and central soldered

    If i have only A on the line everything is ok, A & B - ok too, as soon as I attach C it starts to heat up and communication to arduino breaks.

    I’m not sure but looks like it starts to heat on the headers side.

    I tried to measure resistance between different parts on B and C, everything looks similar.

  • Looks like its output is highly depends on its orientation. Is there any way to make it less orientation light sensor and more diffused light sensor?

    • Professional lux meters usually have a diffuser over the sensor element. You could try replicating this with a bit of uncolored translucent material in front of the TSL2561, like a ping-pong ball or milk jug. This will also attenuate the light somewhat, so you may need to alter the lux calculations to compensate. (Having a true instrument to calibrate against will make this easier.) Let us know what you try and how it worked!

      • For sensor located outside value range is 0.05 at night to 400+ in daylight, for sensor in living room that has half of ping pong ball on it value range is 0 an night with lights off to < 1 in daylight

        Here is some graphs, third column

        At the moment: (night, lights on)

        • covered with ping pong ball - 0.56
        • uncovered - 2.51

        Seems to me that ping-pong ball is not the best option

        When uncovered sensor was pointed another way it never reached 1.

        According to examples here I’m very low on my readings.

        • I was indeed coming to the same conclusion that (even without diffuser) the calculated lux values are much lower than the wikipedia examples. I hope I’ll be able to access a professional light meter, to do some tests.

          • There is a mistake in the sparkfun library - Look for if (gain) { d0 /= 16; d1 /= 16; }

                and replace with
            // Normalize for gain
            if (!gain)
                d0 *= 16;
                d1 *= 16;

            You will get a lot more realistic lux values ….

        • Any diffuser will also attenuate the light reaching the sensor, so you should multiply the output by some factor to make up for that. Using your example a quick and dirty way would be to multiply 0.56 by 4,48 to get back to 2.51. (You should really do this with a small bright source like a bare bulb in a dark room, to account for the limited field of view of the bare sensor). The best way would be to compare it to a professional luxmeter and use that to determine your multiplication factor.

  • Reading the data sheet it appears that this sensor has a illuminance response rate of 400ms, is that right?

    • There are built-in integration times of 402ms, 101ms and 13.7ms. You can also open and close the “shutter” manually, to implement your own integration time. See the Hookup Guide above for details.

  • Has anyone tried to use one of these in an Integrating Sphere?

    • Neat idea! The lux equations in the datasheet assume a bare sensor, so you’d probably need to account for the attenuation somehow. If you try it, let us know how it works. (I think we have some ping-pong balls in the breakroom…)

Related Products