The VCNL4000 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 VCNL4000 is designed for much shorter distances, no more than 200mm (about 7.5") and under our experimentation we 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.
Check out this working example code for this breakout, in the form of an Arduino sketch. It is easily adaptable to any microcontroller, check out the github repository to download!
- PCB dimensions: 23mm x 23mm (0.9" x 0.9")
- 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