The VCNL4010 sensor is a nice way to add a small-distance proximity sensor to your microcontroller project. For longer distances (in the range of cm, you can use a SHARP IR distance sensor, but those are only good if the object is over 10 cm away. The VCNL4010 is designed for much shorter distances, no more than 200mm (about 7.5") and under Adafruit's experimentation they found it worked best at distances of about 10-150mm. It would be good for say detecting when a hand moved nearby, or before a robot smacks into a wall. The sensor also has an ambient light sensor built in.
This sensor is easy to use with any microcontroller that has i2c capability. It is 5 volt compliant so you can use it with 3.3V or 5V logic with no risk of damage. There is an onboard 3.3V ultra low dropout regulator so you can power it with 3.3 to 5.0V. However, if you can give it 5.0V that is ideal since the VIN voltage powers the IR LED and the higher the voltage you can give it, the more powerful it is.
New! As of Sept 23, 2015 they are now shipping this breakout with the updated VCNL4010 - the library has changed and the chip is slightly different in that it now supports interrupts. Adafruit also made the board a little more compact. However, the overall proximity functionality is identical.
- Adafruit have working example code for the VCNL4010 version of this breakout, in the form of an Arduino sketch. It is easily adaptable to any microcontroller, check out the github repository to download! Not for use with the VCNL4000!
- If you have the original VCNL4000 version of this breakout, this github repo has an Arduino sketch for it. Not for use with the VCNL4010!
- VCNL4010 Datasheet / App Note / Product Sheet
- EagleCAD PCB files on GitHub
- Fritzing library
- PCB dimensions: 18mm x 16.5mm (0.7" x 0.6")
- Thickness including tallest SMT components: ~3.15mm (0.125")
- Thickness of PCB: 1.75mm / 0.070"
- This board/chip uses I2C 7-bit address 0x13
Datasheets for the VCNL4000 version of this board: