Image | Item | Location | Available | |
---|---|---|---|---|
Adafruit VEML6070 UV Index Sensor Breakout This little sensor is a great way to add UV light sensing to any microcontroller project. The VEML6070 from Vishay has a true UV A light sensor and an I2C-controlled ADC that will take readings and integrate them for you over ~60ms to 500ms. Unlike the Si1145, this sensor will not give you UV Index readings. However, the Si1145 does UV Index approximations based on light level not true UV sensing. The VEML6070 in contrast does have a real light sensor in the UV spectrum. It's also got a much much simpler I2C interface so you can run it on the smallest microcontrollers with ease. Unlike the GUVA analog sensor, the biasing and ADC is all internal so you don't need an ADC. This UV sensor works great with 3 or 5V power or logic, its nice and compact, and its easy to use with any I2C-capable microcontroller. Each order comes with one assembled PCB with a sensor, some handy pullup resistors, a 270K rset resistor and a small piece of header. Some light soldering is required to attach the header but its a fast task! Check out our tutorial for details on on how to use this sensor, including files, code and assembly! | 1/1 | |||
Adafruit TSL2561 Digital Luminosity/Lux/Light Sensor Breakout The TSL2561 luminosity sensor is an advanced digital light sensor, ideal for use in a wide range of light situations. Compared to low cost CdS cells, this sensor is more precise, allowing for exact lux calculations and can be configured for different gain/timing ranges to detect light ranges from up to 0.1 - 40,000+ Lux on the fly. The best part of this sensor is that it contains both infrared and full spectrum diodes! That means you can separately measure infrared, full-spectrum or human-visible light. Most sensors can only detect one or the other, which does not accurately represent what human eyes see (since we cannot perceive the IR light that is detected by most photo diodes)New! As of June 3, 2014 we are shipping a version with a 3.3V regulator and level shifting circuitry so it can be used with any 3-5V power/logic microcontroller.The sensor has a digital (i2c) interface. You can select one of three addresses so you can have up to three sensors on one board - each with a different i2c address. The built in ADC means you can use this with any microcontroller, even if it doesn't have analog inputs. The current draw is extremely low, so its great for low power data-logging systems. about 0.5mA when actively sensing, and less than 15 uA when in powerdown mode.Of course, we wouldn't leave you with a datasheet and a "good luck!" - we wrote a detailed tutorial showing how to wire up the sensor, use it with CircuitPython or Arduino and example code that gets readings and calculates lux | 2/2 | |||
GA1A12S202 Log-scale Analog Light Sensor Upgrade a project that uses a photocell with the GA1A12S202 analog light sensor. Like a CdS photo-cell, the sensor does not require a microcontroller, the analog voltage output increases with the amount of light shining on the sensor face. This sensor has a lot of improvements that make it better for nearly any project.The biggest improvement over plain photocells is a true log-lin relationship with light levels. Most light sensors have a linear relationship with light levels, which means that they're not very sensitive to changes in darkened areas and 'max' out very easily when there's a lot of light. Sometimes you can tweak a resistor to make them better in dark or bright light but its hard to get good performance at both ends. This sensor is logarithmic over a large dynamic range of 3 to 55,000 Lux, so it has a lot of sensitivity at low light levels but is also nearly impossible to "max out" so you can use it indoors or outdoors without changing code or calibration. Since the sensor is fabricated on a chip, there are also fewer manufacturing variations, so you won't have to calibrate the sensor from one board to another.Using the sensor is easy as pie: connect the Vin to 2.3-6VDC, Gnd to ground and measure the analog output on OUT. It will range up to 3V (at extremely bright outdoor sunlight). On an Arduino, just use analogRead() with the OUT pin connected to an analog pin. For more information including graphs, power consumption, etc check out the datasheet in the Tech Details tab. On this breakout we placed a 68KΩ resistor from OUT to ground to turn the current into a voltage. GA1A12S202 Log-scale Analog Light Sensor (6:52) | 2/2 | |||
RGB Color Sensor with IR filter and White LED - TCS34725 Your electronics can now see in dazzling color with this lovely color light sensor. We found the best color sensor on the market, the TCS34725, which has RGB and Clear light sensing elements. An IR blocking filter, integrated on-chip and localized to the color sensing photodiodes, minimizes the IR spectral component of the incoming light and allows color measurements to be made accurately. The filter means you'll get much truer color than most sensors, since humans don't see IR. The sensor also has an incredible 3,800,000:1 dynamic range with adjustable integration time and gain so it is suited for use behind darkened glass.We add supporting circuitry as well, such as a 3.3V regulator so you can power the breakout with 3-5VDC safely and level shifting for the I2C pins so they can be used with 3.3V or 5V logic. Finally, we specified a nice neutral 4150°K temperature LED with a MOSFET driver onboard to illuminate what you're trying to sense. The LED can be easily turned on or off by any logic level output.Connect to any microcontroller with I2C and our example code will quickly get you going with 4 channel readings. We include some example code to detect light lux and temperature that we snagged from the eval board software.A detailed tutorial is here, check out our Arduino library and follow our tutorial to install. Wire up the sensor by connecting VDD to 3-5VDC, Ground to common ground, SCL to I2C Clock and SDA to I2C Data on your Arduino. Restart the IDE and select the example sketch and start putting all your favorite fruit next to the sensor element! RGB Color Sensor with IR filter - TCS34725 (19:36) | 1/2 | |||
SI1145 Digital UV Index / IR / Visible Light Sensor Remember when you were a kid and there was a birthday party at the pool and your parents totally embarrassed you by slathering you all over with sunscreen and you were all "MOM I HAVE ENOUGH SUNSCREEN" and she wouldn't listen? Well, if you had this UV Index sensor connected up to an Arduino you could have said "According to this calibrated SI1145 sensor from SiLabs, the UV index right now is 4.5 which means I do not need more sunscreen" and she would have been so impressed with your project that you could have spent more time splashing around. The SI1145 is a new sensor from SiLabs with a calibrated light sensing algorithm that can calculate UV Index. It doesn't contain an actual UV sensing element, instead it approximates it based on visible & IR light from the sun. We took this outside a couple days and compared the calculated UV index with the news-reported index and found it was very accurate! It's a digital sensor that works over I2C so just about any microcontroller can use it. The sensor also has individual visible and IR sensing elements so you can measure just about any kind of light - we only wrote our library to printout the 'counts' rather than the calculate the exact values of IR and Visible light so if you need precision Lux measurement check out the TSL2561. If you're feeling really advanced, you can connect up an IR LED to the LED pin and use the basic proximity sensor capability that is in the SI1145 as well. We wrapped this nice little sensor up on a PCB with level shifting and regulation circuitry so you can safely use it with 3 or 5V microcontrollers. If you are using an Arduino, we've got a lovely tutorial and library already written up with example code so you can quickly read sensor readings and the UV index in under 10 minutes. Each order comes with one fully assembled and tested PCB breakout and a small piece of header. You'll need to solder the header onto the PCB but it's fairly easy and takes only a few minutes even for a beginner. | 1/1 | |||
Optomax Digital Liquid Level Sensor - LLC200D3SH-LLPK1 Electronics and water don't usually mix - which is why liquid level sensing projects can be a little challenging. You can DIY a sensor but keeping it clean and un-oxidized can be a pain. The Optomax Digital liquid level switches are a clever solution for when you need a small sensor to detect liquid/water: super easy to use and very durable too! Inside the plastic sensor casing is an infrared (IR) LED and matching photo transistor. When in the open air, the IR light bounces back to the sensor so you know its nice and dry. When the sensing tip is immersed in liquid, the IR light escapes, and the transistor turns off. The sensor can detect the presence or absence of almost any liquid type; oil or water based. It is insensitive to ambient light and is not affected by foam when in air or by small bubbles when in liquid. The microcontroller-friendly logic level output is push-pull type, and can sink and source up to 100mA at a supply voltage range of 4.5 to 15.4VDC - so you can even use it to directly control a transistor or perhaps even a small relay. Simply connect the Blue/Black wire to ground, the Red wire to 4.5-15.4VDC and look at the output with your multimeter or microcontroller. When dry the output is the same as the red wire. When wet, the output is 0V. Note they're pretty sensitive, any liquid on the sensor (e.g. droplets on the surface) can trigger it. Comes in a chemically resistant Polysulfone housing material – the standard choice for most applications – for external sensor mounting and for use in standard operating temperature ranges (-25 to 80°C). Features: Reverse polarity, ESD and transient over-voltage protected Wide supply voltage range Push-pull output, capable of sinking or sourcing up to 100mA, can directly drive small loads Solid state, fully enclosed, so no moving parts to cause unreliability Small in size so they can be installed in applications where space is limited Can detect tiny amounts of liquid when positioned correctly, ideal for leak detection Fast response time Repeatable switching point Built-in output delays available on request for applications where sloshing causes intermittent switching Very robust permitting use in a wide range of fluids and chemicals See datasheet in Technical Details for more specs and info! | 3/3 | |||
LilyPad Light Sensor This is a simple to use light sensor that outputs an analog value from 0 to 5V. With exposure to daylight, this sensor will output 5V. Covering the sensor with your hand, the sensor will output 0V. In a normal indoor lighting situation, the sensor will output from 1 to 2V. LilyPad is a wearable e-textile technology developed by Leah Buechley and cooperatively designed by Leah and SparkFun. Each LilyPad was creatively designed to have large connecting pads to allow them to be sewn into clothing. Various input, output, power, and sensor boards are available. They’re even washable! Note: A portion of this sale is given back to Dr. Leah Buechley for continued development and education of e-textiles. Features 20mm outer diameter Thin 0.8mm PCB | 1/1 | |||
VL6180X Time-of-Flight Distance Sensor Carrier with Voltage Regulator, 60cm max This sensor is a carrier/breakout board for ST’s VL6180X proximity and ambient light sensor, which measures the range to a target object up to 20 cm away (or 60 cm with reduced resolution). The VL6180X uses time-of-flight measurements of infrared pulses for ranging, allowing it to give accurate results independent of the target’s color and surface. Distance and ambient light level measurements can be read through a digital I²C interface. The board has a 2.8 V linear regulator and integrated level-shifters that allow it to work over an input voltage range of 2.7 V to 5.5 V, and the 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards. The VL6180X from ST Microelectronics is a sensor that combines proximity ranging and ambient light level measurement capabilities into a single package. This board is a carrier for the VL6180X, so we recommend careful reading of the VL6180X datasheet (2MB pdf) before using this product. Unlike simpler optical sensors that use the intensity of reflected light to detect objects, the VL6180 uses ST’s FlightSense technology to precisely measure how long it takes for emitted pulses of infrared laser light to reach the nearest object and be reflected back to a detector, making it essentially a short-range lidar sensor. This time-of-flight (TOF) measurement enables it to accurately determine the absolute distance to a target with 1 mm resolution, without the object’s reflectance influencing the measurement. The sensor is rated to perform ranging measurements of up to 10 cm (4″), but it can often provide readings up to 20 cm (8″) with its default settings. Furthermore, the VL6180X can be configured to measure ranges of up to 60 cm (24″) at the cost of reduced resolution, although successful ranging at these longer distances will depend heavily on the target and environment. (For more information, see “Range scaling factor” below.) The VL6180 also includes an ambient light sensor, or ALS, that can measure the intensity of light with which it is illuminated. Ranging and ambient light measurements are available through the sensor’s I²C (TWI) interface, which is also used to configure sensor settings, and two independently-programmable GPIO pins can be configured as interrupt outputs. The VL6180X is a great IC, but its small, leadless, LGA package makes it difficult for the typical student or hobbyist to use. It also operates at voltages below 3 V, which can make interfacing difficult for microcontrollers operating at 3.3 V or 5 V. Our breakout board addresses these issues, making it easier to get started using the sensor, while keeping the overall size as small as possible. The carrier board includes a low-dropout linear voltage regulator that provides the 2.8 V required by the VL6180X, which allows the sensor to be powered from a 2.7 V to 5.5 V supply. The regulator output is available on the VDD pin and can supply almost 150 mA to external devices. The breakout board also includes a circuit that shifts the I²C clock and data lines to the same logic voltage level as the supplied VIN, making it simple to interface the board with 3.3 V or 5 V systems, and the board’s 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards. The board ships fully populated with its SMD components, including the VL6180X, as shown in the product picture. For for similar, longer-range sensors, see our 200 cm VL53L0X carrier and 400 cm VL53L1X carrier. Both of these are physical drop-in replacements for the VL6180X carrier, but they have different APIs, so software for the VL6180X will need to be rewritten to work with the VL53L0X or VL53L1X. VL6180X datasheet graph of typical ranging performance. Specifications Dimensions: 0.5″ × 0.7″ × 0.085″ (13 mm × 18 mm × 2 mm) Weight without header pins: 0.5 g (0.02 oz) Operating voltage: 2.7 V to 5.5 V Supply current: 5 mA (typical; varies with configuration, target, and environment) Output format (I²C): 8-bit distance reading (in millimeters), 16-bit ambient light reading Distance measuring range: up to 10 cm (4″) specified; up to 60 cm (24″) possible with reduced resolution. See the graph at the right for typical ranging performance. Ranging beyond 10 cm is possible with certain target reflectances and ambient conditions but not guaranteed by specifications. By default, the sensor can report distances up to 20 cm, or it can be configured to measure up to 60 cm with reduced resolution. The datasheet does not specify a minimum range, but in our experience, the effective limit is about 1 cm. Ranging beyond 10 cm is possible with certain target reflectances and ambient conditions but not guaranteed by specifications. By default, the sensor can report distances up to 20 cm, or it can be configured to measure up to 60 cm with reduced resolution. The datasheet does not specify a minimum range, but in our experience, the effective limit is about 1 cm. Included components A 1×7 strip of 0.1″ header pins and a 1×7 strip of 0.1″ right-angle header pins are included, as shown in the picture below. You can solder the header strip of your choice to the board for use with custom cables or solderless breadboards, or you can solder wires directly to the board itself for more compact installations. VL6180X Time-of-Flight Distance Sensor Carrier with included header pins. VL6180X Time-of-Flight Distance Sensor Carrier in a breadboard. The board has two mounting holes spaced 0.5″ apart that work with #2 and M2 screws (not included). Connections At least four connections are necessary to use the VL6180X board: VIN, GND, SCL, and SDA. The VIN pin should be connected to a 2.7 V to 5.5 V source, and GND should be connected to 0 volts. An on-board linear voltage regulator converts VIN to a 2.8 V supply for the VL6180X IC. The I²C pins, SCL and SDA, are connected to built-in level-shifters that make them safe to use at voltages over 2.8 V; they should be connected to an I²C bus operating at the same logic level as VIN. The two GPIO pins are open-drain outputs pulled up to 2.8 V by the board (although GPIO0 defaults to being a chip enable input). They are not connected to level-shifters on the board and are not 5V-tolerant, but they are usable as-is with many 3.3 V and 5 V microcontrollers: the microcontroller can read the sensor’s output as long as its logic high threshold is below 2.8 V, and the microcontroller can alternate its own output between low and high-impedance states to drive the pin. Alternatively, our 4-channel bidirectional logic level shifter can be used externally with those pins. Pinout Schematic diagram The above schematic shows the additional components the carrier board incorporates to make the VL6180 easier to use, including the voltage regulator that allows the board to be powered from a 2.7 V to 5.5 V supply and the level-shifter circuit that allows for I²C communication at the same logic voltage level as VIN. This schematic is also available as a downloadable PDF (90k pdf). I²C communication The VL6180X can be configured and its distance and ambient light readings can be queried through the I²C bus. Level shifters on the I²C clock (SCL) and data (SDA) lines enable I²C communication with microcontrollers operating at the same voltage as VIN (2.7 V to 5.5 V). A detailed explanation of the I²C interface on the VL6180X can be found in its datasheet (2MB pdf), and more detailed information about I²C in general can be found in NXP’s I²C-bus specification (1MB pdf). The sensor’s 7-bit slave address defaults to 0101001b on power-up. It can be changed to any other value by writing one of the device configuration registers, but the new address only applies until the sensor is reset or powered off. The I²C interface on the VL6180X is compliant with the I²C fast mode (400 kHz) standard. In our tests of the board, we were able to communicate with the chip at clock frequencies up to 400 kHz; higher frequencies might work but were not tested. Sample Code We have written a basic Arduino library for the VL6180X that makes it easy to interface this sensor with an Arduino or Arduino-compatible controller. The library makes it simple to configure the VL6180X and read the distance and ambient light level data through I²C. It also includes example sketches that show you how to use the library. Protocol hints The datasheet provides a lot of information about this sensor, but a lot of essential info – including a mandatory initialization sequence – can only be found in other documents. Picking out the important details can take some time. Here are some pointers for communicating with and configuring the VL6180X that we hope will get you up and running a little bit faster: Unlike many other I²C sensors from ST, which use 8-bit register addresses, the VL6180X uses 16-bit register addresses. The sensor must be initialized with a particular sequence of settings on power-up or reset. This sequence is not covered in the datasheet, but it can be found in ST application note AN4545 (706k pdf) and design tip DT0037 (386k pdf). (Our Arduino library includes a function that performs this initialization.) The two documents above can also help you understand basic procedures for configuring the VL6180X and getting readings from it. Additional documents, providing details on many other aspects of the VL6180X, can be found on ST’s product page for the VL6180X. Both distance and ambient light measurements can be performed in either single-shot or continuous mode. In either mode, once each measurement is started, you must poll a status register to wait for it to complete. In continuous mode, you should ensure that the inter-measurement period you select is longer than the time it takes to actually perform each measurement. Range scaling factor Although the VL6180X specifications state a maximum “guaranteed” range of 10 cm, the sensor can report distances of up to 20 cm with its default settings. By configuring a range scaling factor, the potential maximum range of the sensor can be increased at the cost of lower resolution. Setting the scaling factor to 2 provides up to 40 cm range with 2 mm resolution, while a scaling factor of 3 provides up to 60 cm range with 3 mm resolution. In all cases, the reading is given as a number between 0 and 200; with the default 1× scaling, this corresponds directly to a distance in mm, but with 2× or 3× scaling, the raw reading will represent a measurement in units of 2 mm or 3 mm, respectively (so the reading should be multiplied by 2 or 3 to obtain a result in millimeters). Range scaling is not mentioned in the VL6180X datasheet as of Rev 7, but it is available in the VL6180X API provided by ST (STSW-IMG003). Our Arduino library also provides functions to set the range scaling factor. People often buy this product together with: | 4/4 | |||
VL53L1X Time-of-Flight Distance Sensor Carrier with Voltage Regulator, 400cm Max This sensor is a carrier/breakout board for ST’s VL53L1X laser-ranging sensor, which offers fast and accurate ranging up to 4 m. It uses the time of flight (ToF) of invisible, eye-safe laser pulses to measure absolute distances independent of ambient lighting conditions and target characteristics like color, shape, and texture (though these things will affect the maximum range). The VL53L1X also features a programmable region of interest (ROI), so the full field of view can be reduced or divided into multiple zones. Distance measurements can be read through a digital I²C interface. The board includes a 2.8 V linear regulator and level-shifters that allow it to work over an input voltage range of 2.6 V to 5.5 V, and the 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards. The VL53L1X from ST Microelectronics is a long-distance ranging time-of-flight (TOF) sensor integrated into a compact module. This board is a carrier for the VL53L1X, so we recommend careful reading of the VL53L1X datasheet (1MB pdf) before using this product. The VL53L1X is effectively a tiny, self-contained lidar system featuring an integrated 940 nm Class 1 laser, which is invisible and eye-safe. Unlike conventional IR sensors that use the intensity of reflected light to estimate the distance to an object, the VL53L1X uses ST’s FlightSense technology to precisely measure how long it takes for emitted pulses of infrared laser light to reach the nearest object and be reflected back to a detector. This approach ensures absolute distance measurements independent of ambient lighting conditions and target characteristics (e.g. color, shape, texture, and reflectivity), though these external conditions do affect the maximum range of the sensor, as do the sensor configuration settings. Under favorable conditions, such as low ambient light with a high-reflectivity target, the sensor can report distances up to 4 m (13 ft) with 1 mm resolution. See the datasheet for more information on how various external conditions and sensor configurations affect things like maximum range, repeatability, and ranging error. The minimum ranging distance is 4 cm; inside of this range, the sensor will still detect a target, but the measurement will not be accurate. Ranging measurements are available through the sensor’s I²C (TWI) interface, which is also used to configure sensor settings, and the sensor provides two additional pins: a shutdown input and an interrupt output. The VL53L1X offers three distance modes: short, medium, and long. Long distance mode allows the longest possible ranging distance of 4 m, but the maximum range is significantly affected by ambient light. Short distance mode is mostly immune to ambient light, but the maximum ranging distance is typically limited to 1.3 m (4.4 ft). The maximum sampling rate in short distance mode is 50 Hz while the maximum sampling rate for medium and long distance modes is 30 Hz. Performance can be improved in all modes by using lower sampling rates and longer timing budgets (as can be seen in the figure above). For advanced applications, the VL53L1X supports configurable thresholds that can be used to trigger interrupts when a target is detected below a certain distance, beyond a certain distance, outside of a range, or within a range. It also supports an alternate detection mode that generates an interrupt when no target is present. Additionally, unlike its predecessors, the VL53L1X supports a configurable region of interest (ROI) within its full 16×16 sensing array, allowing you to reduce the field of view (FoV). With all 265 detection elements enabled, the FoV is 27°. An “Autonomous Low Power” mode that is specially tuned for advanced presence detection is available. This mode allows for significant system power saving by switching off or waking up the host automatically when a human or object is detected within the configured distance thresholds in the region of interest. The VL53L1X is a great IC, but its small, leadless, LGA package makes it difficult for the typical student or hobbyist to use. It also operates at a recommended voltage of 2.8 V, which can make interfacing difficult for microcontrollers operating at 3.3 V or 5 V. Our breakout board addresses these issues, making it easier to get started using the sensor, while keeping the overall size as small as possible. The carrier board includes a low-dropout linear voltage regulator that provides the 2.8 V required by the VL53L1X and allows the sensor to be powered from a 2.6 V to 5.5 V supply. The regulator output is available on the VDD pin and can supply almost 150 mA to external devices. The breakout board also includes a circuit that shifts the I²C clock and data lines to the same logic voltage level as the supplied VIN, making it simple to interface the board with 3.3 V or 5 V systems, and the board’s 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards. The board ships fully populated with its SMD components, including the VL53L1X, as shown in the product picture. For for similar but shorter-range sensors, see our 200 cm VL53L0X carrier and 60 cm VL6180X carrier. Both of these are physical drop-in replacements for the VL53L1X carrier, but they have different APIs, so software for the VL53L1X will need to be rewritten to work with the VL53L0X or VL6180X. Features and specifications Dimensions: 0.5″ × 0.7″ × 0.085″ (13 mm × 18 mm × 2 mm) Weight without header pins: 0.5 g (0.02 oz) Operating voltage: 2.6 V to 5.5 V Supply current: ~15 mA (typical average during active ranging at max sampling rate) Varies with configuration, target, and environment; peak current can reach 40 mA Varies with configuration, target, and environment; peak current can reach 40 mA Fast and accurate ranging with three distance mode options: Short: up to ~130 cm, 50 Hz max sampling rate; this mode is the most immune to interference from ambient light Medium: up to ~300 cm in the dark, 30 Hz max sampling rate Long: up to 400 cm in the dark, 30 Hz max sampling rate Short: up to ~130 cm, 50 Hz max sampling rate; this mode is the most immune to interference from ambient light Medium: up to ~300 cm in the dark, 30 Hz max sampling rate Long: up to 400 cm in the dark, 30 Hz max sampling rate Minimum range: 4 cm (objects under this range are detected, but measurements are not accurate) Emitter: 940 nm invisible Class 1 VCSEL (vertical cavity surface-emitting laser) – eye-safe Detector: 16×16 SPAD (single photon avalanche diode) receiving array with integrated lens Typical full field of view (FoV): 27° Programmable region of interest (ROI) size on the receiving array, allowing the sensor FoV to be reduced Programmable ROI position on the receiving array, allowing multizone operation control from the host Typical full field of view (FoV): 27° Programmable region of interest (ROI) size on the receiving array, allowing the sensor FoV to be reduced Programmable ROI position on the receiving array, allowing multizone operation control from the host Configurable detection interrupt thresholds for implementing autonomous low-power presence detection: target closer than threshold target farther than threshold target within distance window target outside of distance window no target target closer than threshold target farther than threshold target within distance window target outside of distance window no target Output format (I²C): 16-bit distance reading (in millimeters) Included components A 1×7 strip of 0.1″ header pins and a 1×7 strip of 0.1″ right-angle header pins are included, as shown in the picture below. You can solder the header strip of your choice to the board for use with custom cables or solderless breadboards, or you can solder wires directly to the board itself for more compact installations. VL53L1X Time-of-Flight Distance Sensor Carrier with included header pins. VL53L1X Time-of-Flight Distance Sensor Carrier in a breadboard. The board has two mounting holes spaced 0.5″ apart that work with #2 and M2 screws (not included). Important note: This product might ship with a protective liner covering the sensor IC. The liner must be removed for proper sensing performance. Connections At least four connections are necessary to use the VL53L1X board: VIN, GND, SCL, and SDA. The VIN pin should be connected to a 2.6 V to 5.5 V source, and GND should be connected to 0 volts. An on-board linear voltage regulator converts VIN to a 2.8 V supply for the VL53L1X IC. Note that if your input voltage is under 3.5 V, you can connect it directly to VDD instead to bypass the regulator; in this configuration, VIN should remain disconnected. The I²C pins, SCL and SDA, are connected to built-in level-shifters that make them safe to use at voltages over 2.8 V; they should be connected to an I²C bus operating at the same logic level as VIN. The XSHUT pin is an input and the GPIO1 pin is an open-drain output; both pins are pulled up to 2.8 V by the board. They are not connected to level-shifters on the board and are not 5V-tolerant, but they are usable as-is with many 3.3 V and 5 V microcontrollers: the microcontroller can read the GPIO1 output as long as its logic high threshold is below 2.8 V, and the microcontroller can alternate its own output between low and high-impedance states to drive the XSHUT pin. Alternatively, our 4-channel bidirectional logic level shifter can be used externally with those pins. Pinout Schematic diagram The above schematic shows the additional components the carrier board incorporates to make the VL53L1 easier to use, including the voltage regulator that allows the board to be powered from a 2.6 V to 5.5 V supply and the level-shifter circuit that allows for I²C communication at the same logic voltage level as VIN. This schematic is also available as a downloadable PDF (110k pdf). I²C communication The VL53L1X can be configured and its distance readings can be queried through the I²C bus. Level shifters on the I²C clock (SCL) and data (SDA) lines enable I²C communication with microcontrollers operating at the same voltage as VIN (2.6 V to 5.5 V). A detailed explanation of the I²C interface on the VL53L1X can be found in its datasheet (1MB pdf), and more detailed information about I²C in general can be found in NXP’s I²C-bus specification (1MB pdf). The sensor’s 7-bit slave address defaults to 0101001b on power-up. It can be changed to any other value by writing one of the device configuration registers, but the new address only applies until the sensor is reset or powered off. ST provides an application note (196k pdf) that describes how to use multiple VL53L0X sensors on the same I²C bus by individually bringing each sensor out of reset and assigning it a unique address, and the approach can be easily adapted to apply to the VL53L1X instead. The I²C interface on the VL53L1X is compliant with the I²C fast mode (400 kHz) standard. In our tests of the board, we were able to communicate with the chip at clock frequencies up to 400 kHz; higher frequencies might work but were not tested. Sensor configuration and control In contrast with the information available for many other devices, ST has not publicly released a register map and descriptions or other documentation about configuring and controlling the VL53L1X. Instead, communication with the sensor is intended to be done through ST’s VL53L1X API (STSW-IMG007), a set of C functions that take care of the low-level interfacing. To use the VL53L1X, you can customize the API to run on a host platform of your choice using the information in the API documentation. Alternatively, it is possible to use the API source code as a guide for your own implementation. Sample code We have written a basic Arduino library for the VL53L1X, which can be used as an alternative to ST’s official API for interfacing this sensor with an Arduino or Arduino-compatible controller. The library makes it simple to configure the VL53L1X and read the distance data through I²C. It also includes example sketches that show you how to use the library. We also have an implementation of ST’s VL53L1X API for Arduino available, including an example sketch. Compared to our library, the API has a more complicated interface and uses more storage and memory, but it offers some advanced functionality that our library does not provide and has more robust error checking. Consider using the API for advanced applications, especially when storage and memory are less of an issue. People often buy this product together with: | 4/4 |