Login
  • Login
117 items has been found
ImageItemLocationAvailable
Azoteq TPS65 Capacitive Touch Pad

The ProxSense® series of capacitive trackpads offer best in class sensitivity, signal to noise ratio and power consumption. Automatic tuning for sense electrodes guarantees optimal operation over production and environmental changes.

Main Features

Trackpad with on chip XY coordinate calculation

3072 x 2048 resolution (TPS65)

100Hz report rate

Adjustable Sensitivity

Proximity wake up from low power

Automatic drift compensation

1 & 2 Finger Gesture Detection Swipe

Tap

Pinch / Zoom

Gesture with Hold

Fast I2C Interface

Optional Snap Overlay

Low Power, suitable for battery applications

Supply voltage: 1.65V to 3.6V

<40μA active sensing LP mode

I2C interface to BlueTooth SoC

https://media.digikey.com/pdf/Data%20Sheets/Azoteq%20PDFs/TPS43,_TPS65_Datasheet_Web.pdf
touch azoteq sensor trackpad
A-09
10/10
Azoteq TPS43 Capacitive Touch Pad

The ProxSense® series of capacitive trackpads offer best in class sensitivity, signal to noise ratio and power consumption. Automatic tuning for sense electrodes guarantees optimal operation over production and environmental changes.

Main Features

Trackpad with on chip XY coordinate calculation

3072 x 2048 resolution (TPS65)

100Hz report rate

Adjustable Sensitivity

Proximity wake up from low power

Automatic drift compensation

1 & 2 Finger Gesture Detection Swipe

Tap

Pinch / Zoom

Gesture with Hold

Fast I2C Interface

Optional Snap Overlay

Low Power, suitable for battery applications

Supply voltage: 1.65V to 3.6V

<40μA active sensing LP mode

I2C interface to BlueTooth SoC

https://media.digikey.com/pdf/Data%20Sheets/Azoteq%20PDFs/TPS43,_TPS65_Datasheet_Web.pdf
azoteq touch trackpad sensor
A-09
9/9
Rotary Encoder + Extras

This rotary encoder is the best of the best, its a high quality 24-pulse encoder, with detents and a nice feel. It is panel mountable for placement in a box, or you can plug it into a breadboard (just cut/bend the two mechanical side tabs.) We also include a nice soft-touch knob with an arrow in it, fits perfectly and looks great. This encoder also has a push-button built into it so you can press onto the knob to close a separate switch. One side has a 3 pin connector (ground and two coding pins) and the other side has two pins for a normally-open switch.

Rotary encoders are useful as rotation sensors or selectors and look similar to potentiometers. However they are not like potentiometers at all, so it's important to realize the difference! These rotary encoders rotate all the way around continuously, and are divided up into 24 'segments'. Each segment has a click-y feeling to it, and each movement clockwise or counter-clockwise causes the two switches to open and close. There is no way to know what the current 'position' is - instead you would use a microcontroller to count how many 'clicks' left or right it has been turned. If you need to detect rotational 'position' a potentiometer would be a better choice.

https://www.adafruit.com/product/377
adafruit sensor touch
B-01
1/1
Mini 8-Way Rotary Selector Switch - SP8T

When you need a lot of options, you need a Mini 8-Way Rotary Selector Switch. This is basically a single-pole to 8-throw switch. As you rotate the knob around, the middle pin will make contact with each of the outer pins. Rotary switches are very simple to use and are also nice and compact. This one is easy to panel mount, thanks to the included washer and hex nut. It has a T18-size shaft so you can pick one of our T18 knobs to go with it for easier turning.

https://www.adafruit.com/product/2925
adafruit sensor touch shaft
B-01
3/3
Scrubber Knob for Rotary Encoder - 35mm

Round and round it goes, this nice round "scrubber" knob is the perfect mate to a rotary encoder.  It's got a wide 34.7mm diameter with a nice finger groove on its face so it's easy to turn with just one finger.  It works best with our rotary encoder, just snap it on and away you go.

Please note: this knob won't work with our potentiometers which have T18 spline shafts! While rotary encoders look similar to potentiometers, they're actually very different.  Rotary encoders rotate all the way around continuously, which is why a knob like this is handy, you can twist it around very fast.

Does not come with a rotary encoder

We also sell potentiometers in the Adafruit store and plenty of knobs to match if you're really just a knob fanatic.

https://www.adafruit.com/product/2055
adafruit sensor touch shaft adafruit
B-01
1/1
Slim Metal Potentiometer Knob - 10mm Diameter x 15mm - T18

This slim and modern potentiometer is small and compact, yet looks good and has a nice feel. We hand selected the best knobs for your project in different sizes and varieties.  This one is the Slim Metal Knob 10mm diameter x 15mm Tall (T18 Splines).

It's a brushed aluminum knob with a shiny black (anodized?) coating.  It kind of looks like the type of knob you'd find in a very fancy, modern kitchen.  There's a silver mark on the black finish so you can know where you are and figure out where you're going.  It's a good knob if you're looking for something basic and subtle and it's super tiny and subdued, we also have a shorter version.

This knob will not work on our Rotary Encoder (which has a D shaft)! It will work, however, on all of our Potentiometers (which have T18 shafts)

https://www.adafruit.com/product/2057
adafruit sensor touch shaft
B-01
4/4
Potentiometer Knob - Soft Touch T18 - Blue

Oh say can you see

By the knob's early light...

Sorry - we thought that was clever.  And while it wasn't really, this potentiometer knob definitely is.  It's a 'soft touch' T18 knob that works great with our Panel Mount 10K, Panel Mount 1K, and Panel Mount 100K potentiometers.  The knob is designed to set directly on the potentiometer's ridges so it's an easy & secure fit. It has a nice feel, with a rubbery grip, tweaking it is quite fulfilling

This is the blue version and it has a nice deep color on the inside with a striking blue line on the outside for great visibility with whatever you're making.  We also carry it in white and red if you're looking for a variety of colors.

https://www.adafruit.com/product/2048
adafruit sensor touch
B-01
5/5
Potentiometer Knob - Soft Touch T18 - Red

Oh say can you see

By the knob's early light...

Sorry - we thought that was clever.  And while it wasn't really, this potentiometer knob definitely is.  It's a 'soft touch' T18 knob that works great with our Panel Mount 10K, Panel Mount 1K, and Panel Mount 100K potentiometers.  The knob is designed to set directly on the potentiometer's ridges so it's an easy & secure fit. It has a nice feel, with a rubbery grip, tweaking it is quite fulfilling

This is the Red version and it has a nice deep color on the inside with a striking red line on the outside for great visibility with whatever you're making.  We also carry it in white and blue if you're looking for a variety of colors.

https://www.adafruit.com/product/2046
adafruit sensor touch
B-01
5/5
Pimoroni Skywriter HAT - 3D Gesture Sensor for Raspberry Pi

Control your Raspberry Pi 3, 2, A+, B+, or Zero with a flick of the wrist! The Pimoroni Skywriter HAT senses the position of your fingers in the air above.

Using Pimoroni's Python API you can read off the positional data (x, y, z) and common gestures like flick left, tap, and double tap.

Electrical near-field 3D/gesture sensing

4-layer PCB for best sensing performance

Senses from up to 5cm away

Full 3D position data and gesture information (swipes, taps)

Comes fully assembled

Full Python API

This is compatible with the Raspberry Pi Models 3, 2, A+, B+, and Zero!

Because the sensing distance is up to 5cm you can mount the Skywriter HAT behind a sheet of non-conductive material (like acrylic or fabrics) and completely hide it inside your project.

https://www.adafruit.com/product/2325
adafruit raspberry pi add-on hat sensor
B-02
1/1
Pimoroni Explorer pHAT for Raspberry Pi Zero

The Explorer pHAT is the perfect prototyping side-kick for your Raspberry Pi. Based on Pimoroni's popular Explorer Hat Pro, this is a smaller cheaper version designed to fit perfectly on a Raspberry Pi Zero!

A heap of useful input and output options have been added that will take your projects to the next level. Great for driving motors, using analog sensors, and interfacing with 5V sensors & systems

Though designed to match the format of the Raspberry Pi Zero it is compatible with all 40-pin GPIO Raspberry Pi variants (2/B+/A+).

Features:

Python API

Four analog inputs - A tidy way to integrate analog signals into your project.

Two H-bridge motor drivers - Drive two 5V motors bidirectionally with up to 200mA per channel. Ideal with our micro-metal gear-motors to create the perfect little buggy! You can even soft-PWM for full speed control.

Four buffered 5V tolerant inputs - Hook up your Pi to accept input from 5V systems (like Arduino Uno/Leonardo or 5V Trinkets). We've used a 5-channel buffer that will accept anything from 2V-5V as logic high.

Four powered 5V outputs (up to 500mA!) - The onboard darlington array can supply up to 500mA per channel (but you'll be limited to driving around 1A total from the board). Ideal for stepper motors, solenoids, and relays.

Kit includes: Assembled Explorer HAT PCB, one 2x20 0.1" female GPIO header, and one 1x20 0.1" female header. Some light soldering is required to attach the header on, or you can of course solder the pHAT right onto the Pi Zero

Check out Pimonori's full Python library, documentation and examples.

Raspberry Pi not included!

https://www.adafruit.com/product/3018
adafruit raspberry pi pi zero motor hat sensor stepper
B-02
1/1
Pulse Sensor Amped

Pulse Sensor Amped is a greatly improved version of the original Pulse Sensor, a plug-and-play heart-rate sensor for Arduino and Arduino compatibles. It can be used by students, artists, athletes, makers, and game & mobile developers who want to easily incorporate live heart-rate data into their projects.Pulse Sensor Amped adds amplification and noise cancellation circuitry to the hardware. It's noticeably faster and easier to get reliable pulse readings. Pulse Sensor Amped works with either a 3V or 5V Arduino.Lastly, the Pulse Sensor creators have also streamlined and improved the Processing visualization software and Arduino code that comes with this hardware.The kit includes:

A 24-inch Color-Coded Cable, with a standard male header connectors. Plug it straight into an Arduino or a Breadboard. No soldering is required.

An Ear Clip, perfectly sized to the sensor. It can be hot-glued or epoxied to the back of the sensor to get reading from an ear lobe.

Parts to make a handy Velcro finger strap. This is another great way to get heart-rate data.

4 Transparent Stickers, to insulate the front of the Pulse Sensor from oily fingers and sweaty earlobes.

The Pulse Sensor has 3 holes around the outside edge which make it easy to sew it into almost anything.

Visualization software (made in Processing) to instantly see output of the sensor and for troubleshooting.

https://www.adafruit.com/product/1093
adafruit sensor biometric arduino part cable
B-03
5/5
WAV Trigger

The WAV Trigger is a unique high-fidelity polyphonic audio player with surprising capabilities. Supporting up to 2048 uncompressed 16-bit, 44.1kHz wav files – the same quality as an audio CD – the WAV Trigger can play and mix up to 14 stereo tracks simultaneously and independently, with very low latency. Tracks can be controlled via 16 programmable trigger inputs, or by using a native serial control protocol or even MIDI.

Trigger inputs can be connected directly to switches and buttons, or to digital outputs from sensors or another microcontroller. Alternate functions can be specified using a free cross-platform GUI application, and allow triggers to play sequential or random tracks, pause and resume groups of tracks and even control volume. An Arduino library allows for complex serial control like real-time mixing, starting multiple tracks in sample-sync and smooth cross-fading between tracks.

On-board sample rate conversion allows for smoothly changing playback speed/pitch from 0.5x to 2x. in real-time.

MIDI allows you to use the WAV Trigger as a polyphonic sampling synthesizer to play your own sounds from any MIDI keyboard controller. MIDI Channels and Note numbers are mapped to track numbers, and MIDI Controllers adjust volume as well as attack and release times. MIDI Program Change is supported to switch between up to 16 banks of 128 sounds. The WAV Trigger audio engine even implements, pitch bending, voice stealing (oldest playing voices are used for new MIDI Notes when all 14 voices are being used), note attack (fade-in), note release (fade-out) and latency averages 8 ms.

The WAV Trigger supports both SDSC (up to 2GB) and SDHC (up to 32GB) type microSD cards.

Check the link in the documents below to keep up with the latest Firmware updates!

Note: This product is a collaboration with Robertsonics. A portion of each sales goes back to them for product support and continued development.

Features

Supports up to 2048 uncompressed 16-bit stereo WAV files at 44.1kHz – CD quality

Polyphonic! Play and mix up to 14 stereo tracks independently and simultaneously

Sample-accurate starting and playback of up to 14 parallel stereo tracks

Trigger-to-sound delay: 8 msecs typ, 12 msecs max

MIDI control: Velocity-sensitive triggering of up to16 banks of 128 tracks

Real-time playback rate control and MIDI Pitch Bend

Pause and resume individual or groups of tracks. Multiple random trigger ranges

True line-level stereo output: 2.1V RMS ground centered, 100dB SNR

On-board mono audio amplifier and speaker connector: 2W into 4 Ohms, 1.25W into 8 Ohms

16 trigger inputs are individually adjustable for contact closure, 3.3V or 5.0V control

Trigger inputs can be individually inverted, and/or set to be edge, latched or level sensitive

Volumes adjustable from +10dB to -70dB in 0.5dB increments

Firmware volume fades (attacks & decays) and cross-fades

A dedicated “Play” status digital output pin

3.3V and 5.0V output pins

Extensive serial control. Arduino library available. Pin compatible with SparkFun FTDI Basic

https://www.sparkfun.com/products/13660
sparkfun audio board arduino sensor sparkfun button
B-03
2/2
MyoWare Muscle Sensor

Using our muscles to control things is the way that most of us are accustomed to doing it. We push buttons, pull levers, move joysticks… but what if we could take the buttons, levers and joysticks out of the equation? This is the MyoWare Muscle Sensor, an Arduino-powered, all-in-one electromyography (EMG) sensor from Advancer Technologies. The MyoWare board acts by measuring the filtered and rectified electrical activity of a muscle; outputting 0-Vs Volts depending the amount of activity in the selected muscle, where Vs signifies the voltage of the power source. It’s that easy: stick on a few electrodes (not included), read the voltage out and flex some muscles!

The MyoWare Muscle Sensor is the latest revision of the Muscle Sensor of old, now with a new wearable design that allows you to attach biomedical sensor pads directly to the board itself getting rid of those pesky cables. This new board also includes a slew of other new features including, single-supply voltage of +3.1V to +5V, RAW EMG output, polarity protected power pins, indicator LEDs, and (finally) an On/Off switch. Additionally, we have developed a few shields (Cable, Power, and Proto) that can attach to the Myoware Muscle Sensor to help increase its versatility and functionality!

Measuring muscle activity by detecting its electric potential, referred to as electromyography (EMG), has traditionally been used for medical research. However, with the advent of ever shrinking yet more powerful microcontrollers and integrated circuits, EMG circuits and sensors have found their way into all kinds of control systems.

Note: Biomedical sensor pads can be found in the Recommended Products section below to be purchased separately.

Get Started with the MyoWare Muscle Sensor Guide

Features

Wearable Design

Single Supply

+2.9V to +5.7V

Polarity reversal protection

+2.9V to +5.7V

Polarity reversal protection

Two Output Modes

EMG Envelope

Raw EMG

EMG Envelope

Raw EMG

Expandable via Shields

LED Indicators

Specially Designed For Microcontrollers

Adjustable Gain

0.82" x 2.06"

https://www.sparkfun.com/products/11776
sparkfun biometric sensor power wearable shield arduino development muscle myoware
B-03
1/1
PT100 Temperature Sensor

This is a SF-R PT100 high temperature sensor. It is a high quality plantinum thermistor with a range between -50C - 350C, meet the most reuqest of temperature application. It is used as the Overlord temperature sensor. The resistance value it reads inside the nozzle is fed to the mainboard which converts the raw data in to a temperature reading. The printer can then adjust the temperature of the nozzle. It is compatible with both the Overlord and Overlord Pro.

https://www.dfrobot.com/product-1333.html
sensor temperature
B-05
1/1
Emic 2 Text-to-Speech module

Give your project a voice! Designed by Parallax in conjunction with Grand Idea Studio, the Emic 2 Text-to-Speech Module is a multi-language voice synthesizer that converts a stream of digital text into natural sounding speech. Its simple command-based interface makes it easy to integrate into any embedded system. It is by far the best sounding, easiest-to-use TTS module we've ever seen!

Key Features:

High-quality speech synthesis for English and Spanish languages

Nine pre-defined voice styles comprising male, female, and child

Dynamic control of speech and voice characteristics, including pitch, speaking rate, and word emphasis

Industry-standard DECtalk text-to-speech synthesizer engine (5.0.E1)

Application Ideas:

Reading Internet-based data streams (such as e-mails or Twitter feeds)

Conveying status or sensor results from robots, scientific equipment, or industrial machinery

Language learning or speech aids for educational environments

Example Sounds:

Audio Sample – English (.wav)

Audio Sample – Spanish (.wav)

Audio Sample – Singing “Daisy Bell” (.wav)

This video by Hack-a-Week TV shows a great example of it working with an Arduino. Creator Joe Grand also has A bunch of youtube video showing off the advanced feature-set!

https://www.adafruit.com/product/924
adafruit breakout board amplifier sound sensor arduino
B-07
1/1
SparkFun H2OhNo! ATtiny Dev Board / Water Alarm

The SparkFun H2OhNo! is a water sensor alarm kit that you build yourself. When water is detected across the sense pins an alarm goes off and an LED starts blinking. If you’ve ever had a water heater explode or tried to create submersible electronics you know how important it is to be able to detect when water is around!

Underneath the default function of H2OhNo! is a small but powerful development board for the ATtiny85 microcontroller. The board includes a buzzer, LED, a coin cell battery, and the ability to detect analog and digital sensors. This mixture of parts creates a great low-cost tool to learn how to program and sense things!

This board can be re-programmed to be an Annoy-A-Tron (originally made by Think Geek). Please annoy respectfully, otherwise your board may get demolished.

Note: Please check the hookup guide below for helpful tips and assembly instructions.

Note: Due to the requirements of shipping the battery in this kit, orders may take longer to process and therefore do not qualify for same-day shipping. Additionally, these batteries can not be shipped via Ground or Economy methods to Alaska or Hawaii. Sorry for any inconvenience this may cause.

Get Started with the H2OhNo! Guide

Includes

1x H2OhNo! PCB

1x ATtiny85 (Pre-Programmed)

1x 20mm Coin Cell Battery Holder

1x CR2032 Coin Cell Battery

1x Slide Switch

1x 2kHz Piezo Speaker

1x 8-pin DIP Socket

1x Super Bright Red LED

2x Jumper Wire

1x Capacitor 0.1uF

Features

22.86mm x 52.07mm (0.90" x 2.05")

https://www.sparkfun.com/products/12069
sparkfun kit battery led sensor
B-08
5/5
Snap-Action Switch with 50mm Lever: 3-Pin, SPDT, 5A

This single-pole, double-throw (SPDT) momentary switch can be used as a general-purpose micro switch, but the long lever arm makes it especially useful as a tactile bump sensor for your robot (e.g whiskers or antennae). The switch body dimension is 20.0 x 6.4 x 10.2 mm, and the lever arm is 50 mm long.

This single-pole, double-throw (SPDT) momentary switch can be used as a general-purpose micro switch, but the 2"-long lever arm makes it especially useful as a simple tactile obstacle-detector for your robot. The switch body dimension is 20.0 x 6.4 x 10.2 mm (0.79" x 0.25" x 0.40"), and the lever arm is 50 mm (2") long. This three-pin switch can also be used as a two-pin single-pole, single-throw (SPST) switch that is open or closed by default, depending on which two pins are used.

Dimensions (in mm) of snap-action switch with 50mm lever: 3-pin, SPDT, 5A.

For a more sophisticated tactile sensor, see our force-sensing resistors.

People often buy this product together with:

https://www.pololu.com/product/1403
pololu electronic prototyping switch button relay sensor
C-01
4/4
Miniature Slip Ring - 12mm diameter, 12 wires, max 240V @ 2A

With a slip ring assembly, your electronics can now twist and turn safely. Add wheel encoders, 360 degree sensors, rotating LEDs, rotors and more! We've seen a lot of people DIY slip ring's out of desperation but no longer, simply pick up one of these to solve any rotation needs you have.Inside the miniature plastic tube is a gold plated slip ring for 12 wires. There are twelve color coded wire sets made of 28 AWG and no matter how you twist the assembly, they will remain in continuity. Each of the wire sets can carry up to 2A at up to 240VAC or 240VDC. This model is the tiniest slip ring you can get, a mere 20mm long, 12mm diameter. Rated to rotate up to 300 RPM (but you can probably go faster if you don't mind a reduced life and/or noise).

12-wire slip rings (3:42)

https://www.adafruit.com/product/1195
adafruit cnc slip ring ring led sensor
C-01
2/2
SparkFun RedBot Sensor - Mechanical Bumper

These simple switches are the Mechanical Bumper sensor for the SparkFun RedBot, giving you the ability to detect a collision before it really happens. This sensor works by acting as a SPST switch. When the “whisker” bumps into a foreign object it will make contact with a nut next to it, closing the connection and, by default, turning off the motor. By attaching these mechanical bumpers to you robot the whisker will bump something before your robot crashes into it.

The sensor has a 3-pin header which connects directly to the RedBot Mainboard via female to female jumper wires. Use the included RedBot library to make sure your robot never crashes into anything again.

Check out the entire RedBot family of products!

Note: Our RedBot tutorials utilize two of these Mechanical Bumper Sensors. Please take this into consideration before placing your order.

Includes

1x Mechanical Bumper Board

1x Whisker

1x ¾" 4-40 Nylon Standoff

1x 4-40 Hex Nut

3x 3/8" 4-40 Phillips Machine Screw

Features

1.03 x 0.69" (26.27 x 17.67 mm)

https://www.sparkfun.com/products/11999
sparkfun proximity sensor sparkfun board motor bumper redbot robotic
C-01
1/1
Snap-Action Switch with 16.3mm Roller Lever: 3-Pin, SPDT, 5A

This single-pole, double-throw (SPDT) momentary switch can be used as a general-purpose micro switch or tactile bump sensor for your robot. The switch body dimension is 20.0 x 6.4 x 10.2 mm, and the 16.3mm lever arm is has a roller at the tip.

This single-pole, double-throw (SPDT) momentary switch can be used as a general-purpose micro switch or tactile obstacle-detector for your robot. The switch body dimension is 20.0 x 6.4 x 10.2 mm (0.79" x 0.25" x 0.40"), and the 16.3mm (0.64") lever arm has a roller at the tip. This three-pin switch can also be used as a two-pin single-pole, single-throw (SPST) switch that is open or closed by default, depending on which two pins are used.

Dimensions (in mm) of snap-action switch with 16.3mm roller lever: 3-pin, SPDT, 5A.

For a more sophisticated tactile sensor, see our force-sensing resistors.

People often buy this product together with:

https://www.pololu.com/product/1404
pololu electronic prototyping switch button relay sensor
C-01
4/4
Long Flex sensor

This sensor can detect flexing or bending in one direction. They were popularized by being used in the Nintendo PowerGlove as a gaming interface.These sensors are easy to use, they are basically resistors that change value based on how much they're flexed. If they're unflexed, the resistance is about ~10KΩ. When flexed all the way the resistance rises to ~20KΩ. They're pretty similar to FSRs so following this tutorial will get you started. You can use an analog input on a microcontroller (with a pullup resistor) or a digital input with the use of a 0.1uF capacitor for RC timing.The bottom part of the sensor (where the pins are crimped on) is very delicate so make sure to have strain relief - such as clamping or gluing that part so as not to rip out the contacts!

https://www.adafruit.com/product/182
adafruit sensor touch part
C-03
3/3
Short Flex Sensor

This sensor can detect flexing or bending in one direction. They were popularized by being used in the Nintendo PowerGlove as a gaming interface.These sensors are easy to use, they are basically resistors that change value based on how much their flexed. If they're unflexed, the resistance is about ~25KΩ. When flexed all the way the resistance rises to ~100KΩ. They're pretty similar to FSRs so following this tutorial will get you started. You can use an analog input on a micro-controller (with a pullup resistor) or a digital input with the use of a 0.1uF capacitor for RC timing.The bottom part of the sensor (where the pins are crimped on) is very delicate so make sure to have strain relief - such as clamping or gluing that part so as not to rip out the contacts!

https://www.adafruit.com/product/1070
adafruit sensor touch part
C-03
10/10
Parallax ColorPAL

The Parallax ColorPAL combines an RGB LED, a light sensor, and a microcontroller to make a color sensor that can also be used as an ambient light detector and a color generator. Readings are reported via a 1-wire asynchronous serial interface.

ColorPAL side view.

The ColorPAL from Parallax is a miniature color and light sensor that can double as a color generator with its RGB LED. When sensing color, the ColorPAL uses its LED to illuminate a sample one color component at a time while measuring the light reflected back with a broad-spectrum light-to-voltage converter. The amount of light reflected from the sample under illumination from each red, green, and blue LED can be used to determine the sample’s color. For the ColorPAL to detect the color of a subject, the subject must be reflective and non-fluorescent. The color of objects that emit light (e.g. LEDs) cannot be detected.

Detects a wide range of colors and outputs data as 10-bit RGB (Red/Green/Blue) components.

Detects broad-spectrum ambient light with sensitivity down to 44µW/cm2 per lsb.

Generates 24-bit color using onboard RGB LED.

Plugs into servo headers or cables or solderless breadboards.

Single-pin interface uses a simple serial protocol to define and initiate color detection and generation.

Color detection and generation details handled by onboard microcontroller.

Onboard EEPROM for saving custom color detection and generation programs.

Autorun feature permits running a pre-designated EEPROM program with only a power supply.

Power requirements: 5.0 VDC

Communication: 1-wire serial (asynchronous, non-inverted, open-drain serial protocol) with automatic baud rate detection from 2400 – 7200 bps

Dimensions: 1.72 × 0.90 × 0.65 in (44 × 23 × 17 mm)

Communication with the ColorPAL takes place using serial I/O, transmitting and receiving at between 2400 and 7200 baud, using a non-inverted, open-drain protocol. The ColorPAL includes a pull-up resistor to Vdd, so you do not need to apply one externally. Because of the open-drain protocol, the pin used to communicate with the ColorPAL should always be configured as an input, except when being driven low. Also, when starting up, you should wait for this pin to be pulled high by the ColorPAL before trying to send it any commands. Please see the user’s manual (297k pdf) for more information.

People often buy this product together with:

https://www.pololu.com/product/1608
pololu sensor led rgb component
C-03
1/1
AM2302 (wired DHT22) temperature-humidity sensor

The AM2302 is a wired version of the DHT22, in a large plastic body. It is a basic, low-cost digital temperature and humidity sensor. It uses a capacitive humidity sensor and a thermistor to measure the surrounding air, and spits out a digital signal on the data pin (no analog input pins needed). Its fairly simple to use, but requires careful timing to grab data. The only real downside of this sensor is you can only get new data from it once every 2 seconds, so when using our library, sensor readings can be up to 2 seconds old.Simply connect the red 3-5V power, the yellow wire to your data input pin and the black wire to ground. Although it uses a single-wire to send data it is not Dallas One Wire compatible! If you want multiple sensors, each one must have its own data pin.

We have a Adafruit Learning System guide with schematics, Arduino & CircuitPython code, datasheets and more!Compared to the DHT11, this sensor is more precise, more accurate and works in a bigger range of temperature/humidity, but its larger and more expensiveThere is a 5.1K resistor inside the sensor connecting VCC and DATA so you do not need any additional pullup resistors

https://www.adafruit.com/product/393
adafruit sensor temperature arduino power
C-03
1/1
FlexiForce Pressure Sensor - 1lb.

This is a piezoresistive force sensor from Tekscan. The harder you press, the lower the sensor’s resistance. Pressing lightly, the resistance changes from infinite to ~300k. The sensor itself is thin and flexible, but the resistance does not change while being flexed. Resistance changes only when pressure is applied to the round area at the end of the sensor. Used as a presence sensor (someone standing), weight sensor, pressure sensor (impact testing), etc.

The overall length is about 8.5". Sensor comes with 0.1" spaced, reinforced, breadboard friendly connector.

This sensor comes in three flavors. This sensor ranges from 0 to 1lb of pressure.

https://www.sparkfun.com/products/8713
sparkfun flex force sensor
C-03
4/4
Force Sensitive Resistor - Small

This is a small force sensitive resistor. It has a 0.16" (4 mm) diameter active sensing area. This FSR from Interlink Electronics will vary its resistance depending on how much pressure is being applied to the sensing area. The harder the force, the lower the resistance. When no pressure is being applied to the FSR, its resistance will be larger than 1MΩ, with full pressure applied the resistance will be 2.5kΩ.

Two pins extend from the bottom of the sensor with 0.1" pitch making it bread board friendly.

These sensors are simple to set up and great for sensing pressure, but they aren’t incredibly accurate. Use them to sense if it’s being squeezed, but you may not want to use it as a scale.

Features

Actuation Force as low as 2 grams

Wide force sensitivity range 0.1N - 10N* Overall length: 1.75"

Overall width: 0.28"

Sensing area: 0.3"\

https://www.sparkfun.com/products/9673
sparkfun flex force sensor board
C-03
17/17
FlexiForce Pressure Sensor - 25lbs (1" area)

This is a piezoresistive force sensor from Tekscan. The harder you press, the lower the sensor’s resistance. Pressing hard, the resistance changes from infinite to ~50k. The sensor itself is thin and flexible, but the resistance does not change while being flexed. Resistance changes only when pressure is applied to the round area at the end of the sensor. Used as a presence sensor (someone standing), weight sensor, pressure sensor (impact testing), etc.

The overall length is about 2.25". The sensor comes with a 0.1" spaced, reinforced, breadboard friendly connector.

This sensor ranges from 0 to 25lbs of pressure.

https://www.sparkfun.com/products/11207
sparkfun flex force sensor
C-03
2/2
Force Sensitive Resistor 0.5"

This is a force sensitive resistor with a round, 0.5" diameter, sensing area. This FSR will vary its resistance depending on how much pressure is being applied to the sensing area. The harder the force, the lower the resistance. When no pressure is being applied to the FSR its resistance will be larger than 1MΩ. This FSR can sense applied force anywhere in the range of 100g-10kg.

Two pins extend from the bottom of the sensor with 0.1" pitch making it bread board friendly. There is a peel-and-stick rubber backing on the other side of the sensing area to mount the FSR.

These sensors are simple to set up and great for sensing pressure, but they aren’t incredibly accurate. Use them to sense if it’s being squeezed, but you may not want to use it as a scale.

Note: As it states in the Integration Guide, do NOT solder directly to the exposed silver traces. With flexible substrates, the solder joint will not hold and the substrate can easily melt and distort during the soldering. We recommend using a male or female clincher connector instead.

Features

Overall length: 2.375"

Overall width: 0.75"

Sensing diameter: 0.5"

https://www.sparkfun.com/products/9375
sparkfun flex force sensor board
C-03
6/6
Romi 32U4 Control Board

The Romi 32U4 Control Board turns the Romi chassis into a programmable robot based on the Arduino-compatible ATmega32U4 MCU. Its features include integrated dual motor drivers, a versatile power circuit, and inertial sensors, as well as connections for quadrature encoders and an optional LCD. The board also has the ability to interface with an added Raspberry Pi, making the foundation for a complete Raspberry Pi-controlled Romi robot.

The Romi 32U4 Control Board is designed to be assembled with a Romi chassis to create a capable integrated robot platform that can easily be programmed and customized.

Like our A-Star 32U4 programmable controllers, the Romi 32U4 Control Board is built around a USB-enabled ATmega32U4 AVR microcontroller from Microchip (formerly Atmel), and it ships preloaded with an Arduino-compatible bootloader. The control board features two H-bridge motor drivers and is designed to connect to a Romi Encoder Pair Kit (available separately) to allow closed-loop motor control. It also includes a powerful 5 V switching step-down regulator that can supply up to 2 A continuously, along with a versatile power switching and distribution circuit. A 3-axis accelerometer and gyro enable a Romi 32U4 robot to make inertial measurements, estimate its orientation, and detect external forces. Three on-board pushbuttons offer a convenient interface for user input, while indicator LEDs, a buzzer, and a connector for an optional LCD allow the robot to provide feedback.

Romi 32U4 Control Board on a Romi chassis, top view.

Romi 32U4 Control Board with LCD on a Romi chassis.

The Romi 32U4 Control Board can be used either as a standalone control solution or as a base for a more powerful Raspberry Pi controller. Its on-board connector and mounting holes allow a compatible Raspberry Pi (Model B+ or newer, including Pi 3 Model B and Model A+) to plug directly into the control board. Integrated level shifters make it easy to set up I²C communication and interface other signals between the two controllers, and the control board automatically supplies 5 V power to an attached Raspberry Pi. In this setup, the Raspberry Pi can handle the high-level robot control while relying on the Romi 32U4 Control Board for low-level tasks, like running motors, reading encoders, and interfacing with other analog or timing-sensitive devices.

Romi 32U4 Control Board with Raspberry Pi on a Romi chassis.

The I/O lines of both the ATmega32U4 and the Raspberry Pi are broken out to 0.1″-spaced through-holes along the front and rear of the control board, and the board’s power rails are similarly accessible, enabling sensors and other peripherals to easily be connected.

A software add-on is available that makes it easy to program a Romi 32U4 robot from the Arduino environment, and we have Arduino libraries and example sketches to help get you started. A USB A to Micro-B cable (not included) is required for programming.

The Romi 32U4 Control Board ships with all of its surface-mount components populated, and it includes a number of through-hole parts and mounting hardware, as shown in the picture above. Note that assembly (including soldering) is required; please see the user’s guide for assembly instructions.

The Romi chassis itself and other parts required to build a complete Romi 32U4 robot are not included; these are listed below, along with some optional additions.

What you will need

To build a robot with the Romi 32U4 Control Board, you will need a few additional parts:

a Romi Chassis Kit (this includes motors, wheels, one ball caster, and battery contacts)

a Romi Encoder Pair Kit

six AA batteries; The Romi chassis and control board work with both alkaline and NiMH batteries, though we recommend rechargeable NiMH cells

a USB A to Micro-B cable to connect the robot to your computer for programming and debugging

tools to help with kit assembly; see the user’s guide for a list of specific tools

Optional accessories

You might also consider getting these for your Romi 32U4 robot:

an 8×2 character LCD

a compatible Raspberry Pi (Model B+ or newer, including Pi 3 Model B and Model A+)

sensors

connectors (headers, jumper wires, etc) for adding those sensors or other peripherals

In addition to the Romi 32U4 Control Board, we have some more basic boards designed to mount onto a Romi chassis:

The Motor Driver and Power Distribution Board for Romi Chassis includes the same motor drivers and power circuit (including 5 V regulator) as the Romi 32U4 Control Board, but offers you flexibility in choosing and connecting your own microcontroller.

The Power Distribution Board for Romi Chassis only includes reverse voltage protection and a pushbutton power switch circuit; it is intended to be a convenient way to access the chassis’s battery power and pass it on to the rest of your electronics.

The Romi 32U4 Control Board uses the same microcontroller and includes many of the same features as some of our other programmable robots and controller boards. Consider these alternatives if you want similar electronics on a different chassis:

The Zumo 32U4 is a smaller tracked robot sized to qualify for Mini Sumo competitions and equipped with appropriate sensors. It is available fully assembled or as a kit.

The A-Star 32U4 Robot Controller SV with Raspberry Pi Bridge shares most of the same functionality as the Romi 32U4 Control Board, including the ability to interface with a Raspberry Pi, but it is a smaller board with a more general-purpose form factor instead of being designed to work with a specific chassis. It is also available in a lower-voltage LV version.

People often buy this product together with:

https://www.pololu.com/product/3544
pololu romi chassis accessory board power motor sensor
C-05
1/1
SparkFun Touch Potentiometer

The SparkFun Touch Potentiometer, or Touch Pot for short, is an intelligent linear capacitive touch sensor that implements potentiometer functionality with 256 positions. It can operate as a peripheral to a computer or embedded microcontroller or in a stand-alone capacity. The Touch Potentiometer provides both a dual-channel analog and PWM output for direct control of other circuitry. Configurable analog and PWM transfer functions support a wide variety of applications such as volume control and LED dimming.

The Touch Potentiometer is controlled by a Microchip PIC16F1829 8-bit micro-controller that provides the host interface, LED control, capacitive sense and peripheral control functions. A built-in low-dropout voltage regulator allows operation over a range of input voltages up to 12V and breadboard friendly connectors make it easy to play with. A desktop application has been created by our collaborator, Dan Julio, that communicates with the Touch Pot over a serial connection. From this utility app you can change configuration settings, alter LED behavior, calibrate the capacitive touch sensor, view current readings in jabber mode, and much more.

Note: This product is a collaboration with danjuliodesigns. A portion of each sales goes back to them for product support and continued development.

Get Started with the SparkFun Touch Potentiometer Guide

Features

Dual host interfaces: Logic-level serial and I2CTM

Dual 8-bit 20 k-ohm 3-terminal digitally controlled variable resistor outputs

PWM output

8 LED display with multiple display modes and intensity levels

Option for interpolated (soft) changes between touches

Configurable touch sensor parameters for a variety of PCB covers

Easily configurable I2C address to allow multiple devices on one bus

Configurable linear or non-linear PWM transfer function

Configurable linear or simulated logarithmic variable resistor transfer function

Variable resistor supports single- or dual-supply operation

Simple register interface with jabber option

Programmable power-on default operation

Built-in calibration procedure

User-accessible EEPROM data storage

Built-in 5V LDO voltage regulator

Through-hole and SMT connectors

https://www.sparkfun.com/products/13144
sparkfun capacitive touch led pwm sensor
C-10
2/2
Adafruit Capacitive Touch HAT for Raspberry Pi - Mini Kit - MPR121

This touch-able add on HAT for Raspberry Pi will inspire your next interactive project with 12 capacitive touch sensors. Capacitive touch sensing works by detecting when a person (or animal) has touched one of the sensor electrodes. Capacitive touch sensing used for stuff like touch-reactive tablets and phones, as well as control panels for appliances, which is where you may have used it before. This HAT allows you to create electronics that can react to human touch, with up to 12 individual sensors.

The HAT has 12 'figure 8' holes in it that can be gripped onto with alligator clip cables. Attach one side of the clip to the HAT and the other side to something electrically conductive (like metal) or full of water (like vegetables or fruit!) Then start up our handy Python library code to detect when the object is touched. That's pretty much it, very easy! For advanced users, you can also solder to a pad to make a slimmer & more permanent connection.

Works great with Raspberry Pi Model A+, B+, or Pi 2. This HAT can be used with Model A or Model B but requires purchase/soldering of a extra-tall 2x13 header instead of the 2x20 included.

We're working on a detailed tutorial, meanwhile you can check out the tutorial for the non-HAT/breakout-version of this chip with the Raspberry Pi here which uses the exact same library and code. We have examples for reading touches, turning touches into keyboard KeyUp/KeyDown presses (so you can make a veggie-keyboard) as well as an audio player that will play a sound per sensor (fruit drums!)

Each order comes with a Capacitive Touch HAT and a 2x20 socket header. You'll need to do some light through-hole soldering to attach the headers onto the HAT circuit board, but its easy to do with basic soldering tools like a soldering iron and rosin core electronics solder. You'll also likely want to pick up a 12 pack of alligator clips!

Please note! This kit does not come with Raspberry Pi, alligator clips, speaker, or delicious fruit! However, we do have all of those in the store. Well, all except fruit - despite being called Adafruit, we do not actually sell fruit

https://www.adafruit.com/product/2340
adafruit raspberry pi add-on hat touch sensor kit
C-10
1/1
SparkFun Block for Intel® Edison - 9 Degrees of Freedom

The Intel® Edison is an ultra small computing platform that will change the way you look at embedded electronics. Each Edison is packed with a huge amount of tech goodies into a tiny package while still providing the same robust strength of your go-to single board computer. Powered by the Intel® Atom™ SoC dual-core CPU and including an integrated WiFi, Bluetooth LE, and a 70-pin connector to attach a veritable slew of shield-like “Blocks” which can be stacked on top of each other. It’s no wonder how this little guy is lowering the barrier of entry on the world of electronics!

The 9 Degrees of Freedom Block for the Intel® Edison uses the LSM9DS0 9DOF IMU for full-range motion sensing. This chip combines a 3-axis accelerometer, a 3-axis gyroscope, and a 3-axis magnetometer. By default, the IMU is connected to the Edison through the I2C bus. Each sensor in the LSM9DS0 supports a wide range of, well, ranges: the accelerometer’s scale can be set to ± 2, 4, 6, 8, or 16 g, the gyroscope supports ± 245, 500, and 2000 °/s, and the magnetometer has full-scale ranges of ± 2, 4, 8, or 12 gauss. Additionally, the LSM9DS0 includes an I2C serial bus interface supporting standard and fast mode (100 kHz and 400 kHz) and an SPI serial standard interface.

If you are looking to add a little more stability to your Intel® Edison stack, check out this Hardware Pack. It will provide you with increased mechanical strength for stacking Blocks on your Edison!

Note: We are currently working on a Hookup Guide for this kit. Check back later for more updates.

Note: While there are jumpers for SPI, it is not supported.

https://www.sparkfun.com/products/13033
sparkfun intel bluetooth board sensor shield 9dof intel edison iot wifi wireless
D-01
1/1
SparkFun Block for Intel® Edison - I2C

The Intel® Edison is an ultra small computing platform that will change the way you look at embedded electronics. Each Edison is packed with a huge amount of tech goodies into a tiny package while still providing the same robust strength of your go-to single board computer. Powered by the Intel® Atom™ SoC dual-core CPU and including an integrated WiFi, Bluetooth LE, and a 70-pin connector to attach a veritable slew of shield-like “Blocks” which can be stacked on top of each other. It’s no wonder how this little guy is lowering the barrier of entry on the world of electronics!

This I2C Block simply breaks out an I2C bus on the Intel® Edison while level shifting it from 1.8V to your sensors voltage. This a simple board that can snap into your Edison and be used right away.

If you are looking to add a little more stability to your Intel® Edison stack, check out this Hardware Pack. It will provide you with increased mechanical strength for stacking Blocks on your Edison!

https://www.sparkfun.com/products/13034
sparkfun intel board bluetooth sensor shield block i2c intel edison iot wifi wireless
D-01
5/5
SparkFun Altitude/Pressure Sensor Breakout - MPL3115A2

Life has its ups and downs, so why not measure them? The MPL3115A2 is a MEMS pressure sensor that provides Altitude data to within 30cm (with oversampling enabled). The sensor outputs are digitized by a high resolution 24-bit ADC and transmitted over I2C, meaning it’s easy to interface with most controllers. Pressure output can be resolved with output in fractions of a Pascal, and Altitude can be resolved in fractions of a meter. The device also provides 12-bit temperature measurements in degrees Celsius.

This breakout board makes it easy to prototype using this tiny device by breaking out the necessary pins to a standard 0.1" spaced header. The board also has all of the passive components needed to get the device functioning, so you can simply connect it to something that talks I2C and get to work!

Features

1.95V to 3.6V Supply Voltage, internally regulated by LDO

1.6V to 3.6V Digital Interface Supply Voltage

Fully Compensated internally

Direct Reading, Compensated

Pressure: 20-bit measurement (Pascals)

Altitude: 20-bit measurement (meters)

Temperature: 12-bit measurement (degrees Celsius)

Pressure: 20-bit measurement (Pascals)

Altitude: 20-bit measurement (meters)

Temperature: 12-bit measurement (degrees Celsius)

Programmable Events

Autonomous Data Acquisition

Resolution down to 1 ft. / 30 cm

32 Sample FIFO

Ability to log data up to 12 days using the FIFO

1 second to 9 hour data acquisition rate

I2C digital output interface (operates up to 400 kHz)

https://www.sparkfun.com/products/11084
sparkfun weather i2c sensor temperature breakout
D-05
1/1
SparkFun Atmospheric Sensor Breakout - BME280

The SparkFun BME280 Atmospheric Sensor Breakout is the easy way to measure barometric pressure, humidity, and temperature readings all without taking up too much space. Basically, anything you need to know about atmospheric conditions you can find out from this tiny breakout. The BME280 Breakout has been design to be used in indoor/outdoor navigation, weather forecasting, home automation, and even personal health and wellness monitoring.

The on-board BME280 sensor measures atmospheric pressure from 30kPa to 110kPa as well as relative humidity and temperature. The breakout provides a 3.3V SPI interface, a 5V tolerant I2C interface (with pull-up resistors to 3.3V), takes measurements at less than 1mA and idles less than 5µA. The BME280 Breakout board has 10 pins, but no more than six are used at a single time. The left side of the board provide power, ground, and I2C pins. The remaining pins which provide SPI functionality and have another power and ground, are broken out on the other side.

Note: The breakout does NOT have headers installed and will need to purchased and soldered on yourself. Check the Recommended Products section below for the type of headers we use in the Hookup Guide!

Features

Operation Voltage: 3.3V

I2C & SPI Communications Interface

Temp Range: -40C to 85C

Humidity Range: 0 - 100% RH, =-3% from 20-80%

Pressure Range: 30,000Pa to 110,000Pa, relative accuracy of 12Pa, absolute accuracy of 100Pa

Altitude Range: 0 to 30,000 ft (9.2 km), relative accuracy of 3.3 ft (1 m) at sea level, 6.6 (2 m) at 30,000 ft.

Incredibly Small

https://www.sparkfun.com/products/13676
sparkfun weather breakout i2c board sensor atmosphere bme280
D-05
3/3
SparkFun RGB and Gesture Sensor - APDS-9960

This is the SparkFun RGB and Gesture Sensor, a small breakout board with a built in APDS-9960 sensor that offers ambient light and color measuring, proximity detection, and touchless gesture sensing. With this RGB and Gesture Sensor you will be able to control a computer, microcontroller, robot, and more with a simple swipe of your hand! This is, in fact, the same sensor that the Samsung Galaxy S5 uses and is probably one of the best gesture sensors on the market for the price.

The APDS-9960 is a serious little piece of hardware with built in UV and IR blocking filters, four separate diodes sensitive to different directions, and an I2C compatible interface. For your convenience we have broken out the following pins: VL (optional power to IR LED), GND (Ground), VCC (power to APDS-9960 sensor), SDA (I2C data), SCL (I2C clock), and INT (interrupt). Each APDS-9960 also has a detection range of 4 to 8 inches (10 to 20 cm).

Features

Operational Voltage: 3.3V

Ambient Light & RGB Color Sensing

Proximity Sensing

Gesture Detection

Operating Range: 4-8in (10-20cm)

I2C Interface (I2C Address: 0x39)

https://www.sparkfun.com/products/12787
sparkfun proximity sensor i2c rgb
D-05
2/2
SparkFun Soil Moisture Sensor

The SparkFun Soil Moisture Sensor is a simple breakout for measuring the moisture in soil and similar materials. The soil moisture sensor is pretty straight forward to use. The two large exposed pads function as probes for the sensor, together acting as a variable resistor. The more water that is in the soil means the better the conductivity between the pads will be and will result in a lower resistance, and a higher SIG out.

To get the SparkFun Soil Moisture Sensor functioning all you will need is to connect the VCC and GND pins to your Arduino-based device (or compatible development board) and you will receive a SIG out which will depend on the amount of water in the soil. One commonly known issue with soil moisture senors is their short lifespan when exposed to a moist environment. To combat this, we’ve had the PCB coated in Gold Finishing (ENIG or Electroless Nickel Immersion Gold). We recommend either a simple 3-pin screw pin terminal or a 3-pin jumper wire assembly (both can be found in the Recommended Products section below) to be soldered onto the sensor for easy wiring.

Note: Check the Hookup Guide below for assembly and weatherproofing instructions as well as a simple example project that you can put to together yourself!

Get Started with the Soil Moisture Sensor Guide

https://www.sparkfun.com/products/13322
sparkfun biometric sensor sparkfun breakout development moisture soil weather
D-05
10/10
SparkFun Humidity and Temperature Sensor Breakout - Si7021

The Si7021 is a low-cost, easy-to-use, highly accurate, digital humidity and temperature sensor. This sensor is ideal for environmental sensing and data logging and perfect for build a weather stations or humidor control system. All you need are two lines for I2C communication, and you’ll have relative humidity readings and very accurate temperature readings as a bonus!

There are only four pins that need to be hooked up in order to start using this sensor in a project. One for VCC, one for GND, and two data lines for I2C communication. This breakout board has built-in 4.7KΩ pullup resistors for I2C communications. If you’re hooking up multiple I2C devices on the same bus, you may want to disable these resistors.

Features

0.6" x 0.6"

https://www.sparkfun.com/products/12064
sparkfun weather i2c sensor temperature breakout
D-05
1/1
SparkFun Humidity and Temperature Sensor Breakout - SHT15

The SHT15 Breakout is an easy to use, highly accurate, digital temperature and humidity sensor. This board has been fully calibrated and offers high precision and excellent long-term stability at low cost. The digital CMOSens® technology integrates two sensors and readout circuitry on one single chip. All you need is two lines for 2-wire communication, and you’ll have relative humidity and temperature readings to help you sense the world around you!

The two sensors built into the SHT15 have been seamlessly coupled to a 14bit analog to digital converter and a serial interface circuit resulting in superior signal quality, fast response time, and a strong resistance to external disturbances. Additionally, the on board SHT15 features a 0-100% RH measurement range with a temperature accuracy of +/- 0.3°C @ 25°C. There are only four pins that need to be hooked up in order to start using this sensor in a project. One for VCC, one for GND, and the two data lines SDA and SCL.

Features

Operating Voltages: 2.4V min - 5.5V max

2 factory calibrated sensors for relative humidity & temperature

Digital 2-wire interface (Not I2C, but similar)

Measurement range: 0-100% RH

Absolute RH accuracy: +/- 2% RH (10…90% RH)

Repeatability RH: +/- 0.1% RH

Temp. accuracy: +/- 0.3°C @ 25°C

Precise dewpoint calculation possible

Fast response time

Low power consumption (typ. 30 µW)

https://www.sparkfun.com/products/13683
sparkfun weather sensor temperature breakout board
D-05
2/2
SparkFun ToF Range Finder Sensor - VL6180

This is the SparkFun “Time-of-Flight” Range Finder, a sensor board for the VL6180 distance sensor. Unlike most distance sensors that rely on reflected light intensity or reflected angles to determine range, the VL6180 uses a precise clock to measure the time it takes light to bounce back from a surface. This affords the ToF Range Finder and VL6180 a great benefit over other methods because it can be much more accurate and more immune to noise. Does this technology sound familiar? Well it should, it’s the same means cellphones use to detect when the caller is holding their phone to their ear.

The VL6180 is actually a 3-in-1 package that combines an IR emitter, a range sensor, and an ambient light sensor together for you to easily use and communicate with via an I2C interface. The ToF Range Finder is very similar to its breakout cousin with a few important differences. What sets this board apart is this sensor is equipped with an on-board 2.8V regulator, which means if you were to plug in a voltage higher than 2.8V it will be shifted down without worry of damaging your board! Another thing to note is the form factor of the sensor itself. Many small robotics platforms have integrated hole patterns for the long time favorite Sharp IR sensor line. This allows the VL6180 Sensor to be a near drop-in replacement for most Sharp sensors.

Note: Though the datasheet states the VL6180 measures an absolute range of up to 10cm, we have successfully tested it up to 25cm. The more you know.

Features

2.8V Regulator - Provides the required 2.8V for the sensor

I2C Level Shifter - Provides logic level conversion from 2.8V to VCC

3-in-1 Module

IR Emitter

Range Sensor

Ambient Light Sensor

IR Emitter

Range Sensor

Ambient Light Sensor

Measures absolute range up to 10cm

Gesture Recognition

I2C Interface

Two Programmable GPIO

Sharp Sensor Board Layout

https://www.sparkfun.com/products/12785
sparkfun proximity sensor board i2c regulator
D-05
1/1
Adafruit PT100 RTD Temperature Sensor Amplifier - MAX31865

For precision temperature sensing, nothing beats a Platinum RTD. Resistance temperature detectors (RTDs) are temperature sensors that contain a resistor that changes resistance value as its temperature changes, basically a kind of thermistor. In this sensor, the resistor is actually a small strip of Platinum with a resistance of 100 ohms at 0°C, thus the name PT100. Compared to most NTC/PTC thermistors, the PT type of RTD is much most stable and precise (but also more expensive) PT100's have been used for many years to measure temperature in laboratory and industrial processes, and have developed a reputation for accuracy (better than thermocouples), repeatability, and stability. 

However, to get that precision and accuracy out of your PT100 RTD you must use an amplifier that is designed to read the low resistance. Better yet, have an amplifier that can automatically adjust and compensate for the resistance of the connecting wires. If you're looking for a great RTD sensor, today is your lucky day because we have a lovely Adafruit RTD Sensor Amplifier with the MAX31865 breakout for use with any 2, 3 or 4 wire PT100 RTD!

If you have a PT1000 RTD, please visit this page to purchase a version of this board with the reference resistor for 1000-ohm RTDs

We've carried various MAXIM thermocouple amplifiers and they're great - but thermocouples don't have the best accuracy or precision, for when the readings must be as good as can be. The MAX31865 handles all of your RTD needs, and can even compensate 3 or 4 wire RTDs for better accuracy. Connect to it with any microcontroller over SPI and read out the resistance ratio from the internal ADC. We put a 430Ω 0.1% resistor as a reference resistor on the breakout. We have some example code that will calculate the temperature based on the resistance for you.

We even made the breakout 5V compliant, with a 3.3V regulator and level shifting, so you can use it with any Arduino or microcontroller.

Each order comes with one assembled RTD amplifier breakout board. Also comes with two 2-pin terminal blocks (for connecting to the RTD sensor) and pin header (to plug into any breadboard or perfboard). A required PT100 RTD is not included! (But we stock them in the shop). Some soldering is required to solder the headers and terminal blocks to the breakout, but it's an easy task with soldering tools.

Please note: this does not include an RTD sensor! Also, the terminal blocks included with your product may be blue or black

https://www.adafruit.com/product/3328
adafruit sensor temperature amplifier breakout
D-09
1/1
Electret Microphone - 20Hz-20KHz Omnidirectional

This electret capsule microphone is the same one we use in our great microphone amplifier board. It contains a small vibrating element that will output a few milllivolts peak-to-peak. You will need an op-amp to amplify the signal, some chips are designed with the amplifier built in in which case you can wire it up directly.

This is an "omnidirectional" microphone, with -44dB sensitivity, and has 20-20KHz frequency response. You can plug it into a breadboard or perfboard or solder wires to the little wires sticking out the back.

Check out OpenMusicLab's great tutorial on Electret Microphones for a deeper look at how these sensors work. If you need an amplifier board, see our fully-assembled and tested mic amp board with adjustable gain.

https://www.adafruit.com/product/1064
adafruit sensor sound noise board amplifier amp
D-10
1/1
Electret Microphone Amplifier - MAX4466 with Adjustable Gain

Add an ear to your project with this well-designed electret microphone amplifier. This fully assembled and tested board comes with a 20-20KHz electret microphone soldered on. For the amplification, we use the Maxim MAX4466, an op-amp specifically designed for this delicate task! The amplifier has excellent power supply noise rejection, so this amplifier sounds really good and isn't nearly as noisy or scratchy as other mic amp breakouts we've tried!This breakout is best used for projects such as voice changers, audio recording/sampling, and audio-reactive projects that use FFT. On the back, we include a small trimmer pot to adjust the gain. You can set the gain from 25x to 125x. That's down to be about 200mVpp (for normal speaking volume about 6" away) which is good for attaching to something that expects 'line level' input without clipping, or up to about 1Vpp, ideal for reading from a microcontroller ADC. The output is rail-to-rail so if the sounds gets loud, the output can go up to 5Vpp!Using it is simple: connect GND to ground, VCC to 2.4-5VDC. For the best performance, use the "quietest" supply available (on an Arduino, this would be the 3.3V supply). The audio waveform will come out of the OUT pin. The output will have a DC bias of VCC/2 so when its perfectly quiet, the voltage will be a steady VCC/2 volts (it is DC coupled). If the audio equipment you're using requires AC coupled audio, place a 100uF capacitor between the output pin and the input of your device. If you're connecting to an audio amplifier that has differential inputs or includes decoupling capacitors, the 100uF cap is not required.The output pin is not designed to drive speakers or anything but the smallest in-ear headphones - you'll need an audio amplifier (such as our 3.7W stereo amp) if you want to connect the amp directly to speakers. If you're connecting to a microcontroller pin, you don't need an amplifier or decoupling capacitor - connect the OUT pin directly to the microcontroller ADC pin.For audio-reactive Arduino projects, we suggest using an FFT driver library (such as the one in this library) which can take the audio input and 'translate' it into frequencies. Also, check out this awesome Voice Changer project that uses this mic and an Adafruit Wave Shield!

If you're using with CircuitPython, this audio-reactive pendant project is pretty easy and works great with any CircuitPython board.

https://www.adafruit.com/product/1063
adafruit sensor sound noise audio amplifier amp dc
D-10
1/1
Maxbotix Ultrasonic Rangefinder - LV-EZ4 - LV-EZ4

LV-EZ4 Maxbotix Ultrasonic Rangefinder provides very short to long-range detection and ranging, in an incredibly small package. It can detect objects from 0-inches to 254-inches (6.45-meters) and provides sonar range information from 6-inches out to 254-inches with 1-inch resolution. (Objects from 0 inches to 6-inches range as 6-inches.) The interface output formats included are pulse width output (PWM), analog voltage output (Vcc/512 volts per inch), and serial digital output (9600 baud).

A good sensor for when a Sharp IR distance sensor won't cut it. For example of using this with an Arduino, see the Halloween Pumpkin project.

Many applications require a narrower beam or lower sensitivity than the LV MaxSonar EZ1. Consequently, MaxBotix is offering the EZ2, EZ3, & EZ4 with progressively narrower beam angles allowing the sensor to match the application.

LV-EZ4 Data Sheet / Product Information Guide is available here.

The different LV models have different beam width patterns, check this image for a comparison of all the LV model beam patterns.For higher sensitivity, check out the HR-LV models - they have up to 1mm sensitivity and 5 meter range!

https://www.adafruit.com/product/982
adafruit sensor proximity pwm voltage arduino
D-17
1/1
Maxbotix LV-MaxSonar-EZ1 Sonar Range Finder MB1010

This compact sonar range finder by Maxbotix detects objects from 0 to 6.45 m (21.2 ft) with a resolution of 2.5 cm (1") for distances beyond 15 cm (6"). Unlike other sonar range finders, the LV-MaxSonar has virtually no dead zone: it can detect even small objects up to and touching the front sensor face!The EZ0, EZ1, EZ2, EZ3, and EZ4 versions have progressively narrower beam angles.

MaxBotix ultrasonic sensor line comparison chart.

The Maxbotix LV-MaxSonar-EZ family of sonar range finders offers very short- to long-range detection and ranging in an incredibly small package with ultra-low power consumption. The LV-MaxSonar-EZ detects objects from 0 to 6.45 meters (21.2 feet) and provides sonar range information beyond 15 cm (6") with a resolution of 2.5 cm resolution (1 in). Objects between 0 and 15 cm range as 15 cm. The sensor provides three output interfaces, all of which are active simultaneously: digital pulse width output, analog voltage output, and asynchronous serial digital output. The LV-MaxSonar is available in five factory-calibrated beam patterns (EZ0-4).

For a higher-resolution, longer-range version, please consider the XL-MaxSonar-EZ and XL-MaxSonar-AE families of distance sensors.

Small and light: 0.870" x 0.785" x 0.645" (2.2 x 2.0 x 1.6 cm), 0.15 oz (4.3 g)

Long range detection: 0 – 6.45 m (21.2 ft)

No dead zone (detections from 0 to 6" are output as 6")

Resolution of 1" (2.5 cm)

Low typical current consumption: 2 mA

Runs on 2.5 – 5.5 V

42 kHz ultrasonic sensor

20 Hz reading rate

Free-run or triggered operation

Three interfaces (all are active simultaneously):

Serial output: asynchronous, logic-level, inverted, 9600 bps 8N1

Analog output: (Vcc/512) / inch (10 mV/inch when input voltage Vcc = 5 V)

Pulse width output: 147 μs/inch

Serial output: asynchronous, logic-level, inverted, 9600 bps 8N1

Analog output: (Vcc/512) / inch (10 mV/inch when input voltage Vcc = 5 V)

Pulse width output: 147 μs/inch

Since there are 15 members of the XL- and LV-MaxSonar acoustic distance sensor family, we recommend using the Maxbotix sonar range finder selection guide when choosing a acoustic range sensor for your application. There are 5 different beam configurations for the LV-MaxSonar family (EZ0 – EZ4), each pictured below.

LV-MaxSonar-EZ beam patterns (range shown on 1-foot grid to various diameter dowels)

Maxbotix LV-MaxSonar-EZ0 MB1000 beam characteristics:

Maxbotix LV-MaxSonar-EZ1 MB1010 beam characteristics:

Maxbotix LV-MaxSonar-EZ2 MB1020 beam characteristics:

Maxbotix LV-MaxSonar-EZ3 MB1030 beam characteristics:

Maxbotix LV-MaxSonar-EZ4 MB1040 beam characteristics:

People often buy this product together with:

https://www.pololu.com/product/726
pololu proximity sensor range finder finder sensor voltage power
D-17
2/2
Maxbotix LV-MaxSonar-EZ0 Sonar Range Finder MB1000

This compact sonar range finder by Maxbotix detects objects from 0 to 6.45 m (21.2 ft) with a resolution of 2.5 cm (1") for distances beyond 15 cm (6"). Unlike other sonar range finders, the LV-MaxSonar has virtually no dead zone: it can detect even small objects up to and touching the front sensor face!The EZ0, EZ1, EZ2, EZ3, and EZ4 versions have progressively narrower beam angles.

MaxBotix ultrasonic sensor line comparison chart.

The Maxbotix LV-MaxSonar-EZ family of sonar range finders offers very short- to long-range detection and ranging in an incredibly small package with ultra-low power consumption. The LV-MaxSonar-EZ detects objects from 0 to 6.45 meters (21.2 feet) and provides sonar range information beyond 15 cm (6") with a resolution of 2.5 cm resolution (1 in). Objects between 0 and 15 cm range as 15 cm. The sensor provides three output interfaces, all of which are active simultaneously: digital pulse width output, analog voltage output, and asynchronous serial digital output. The LV-MaxSonar is available in five factory-calibrated beam patterns (EZ0-4).

For a higher-resolution, longer-range version, please consider the XL-MaxSonar-EZ and XL-MaxSonar-AE families of distance sensors.

Small and light: 0.870" x 0.785" x 0.645" (2.2 x 2.0 x 1.6 cm), 0.15 oz (4.3 g)

Long range detection: 0 – 6.45 m (21.2 ft)

No dead zone (detections from 0 to 6" are output as 6")

Resolution of 1" (2.5 cm)

Low typical current consumption: 2 mA

Runs on 2.5 – 5.5 V

42 kHz ultrasonic sensor

20 Hz reading rate

Free-run or triggered operation

Three interfaces (all are active simultaneously):

Serial output: asynchronous, logic-level, inverted, 9600 bps 8N1

Analog output: (Vcc/512) / inch (10 mV/inch when input voltage Vcc = 5 V)

Pulse width output: 147 μs/inch

Serial output: asynchronous, logic-level, inverted, 9600 bps 8N1

Analog output: (Vcc/512) / inch (10 mV/inch when input voltage Vcc = 5 V)

Pulse width output: 147 μs/inch

Since there are 15 members of the XL- and LV-MaxSonar acoustic distance sensor family, we recommend using the Maxbotix sonar range finder selection guide when choosing a acoustic range sensor for your application. There are 5 different beam configurations for the LV-MaxSonar family (EZ0 – EZ4), each pictured below.

LV-MaxSonar-EZ beam patterns (range shown on 1-foot grid to various diameter dowels)

Maxbotix LV-MaxSonar-EZ0 MB1000 beam characteristics:

Maxbotix LV-MaxSonar-EZ1 MB1010 beam characteristics:

Maxbotix LV-MaxSonar-EZ2 MB1020 beam characteristics:

Maxbotix LV-MaxSonar-EZ3 MB1030 beam characteristics:

Maxbotix LV-MaxSonar-EZ4 MB1040 beam characteristics:

People often buy this product together with:

https://www.pololu.com/product/723
pololu proximity sensor range finder finder sensor voltage power
D-17
1/1
Maxbotix Ultrasonic Rangefinder - HRLV-EZ0 - HRLV-EZ0

The HRLV-MaxSonar-EZ sensor line is the most cost-effective solution for applications where precision range-finding, low-voltage operation, space saving, and low-cost are needed.

The HRLV-MaxSonar-EZ sensor line provides high accuracy and high resolution ultrasonic proximity detection and ranging in air, in a package less than one cubic inch. This sensor line features 1mm resolution, target-size and operating-voltage compensation for improved accuracy, superior rejection of outside noise sources, internal speed-of-sound temperature compensation and optional external speed-of-sound temperature compensation. This ultrasonic sensor detects objects from 1mm to 5meters, senses range to objects from 30cm to 5meters, with large objects closer than 30cm typically reported as 30cm. The interface output formats are pulse width, analog voltage, and serial digital in either RS232 or TTL. Factory calibration is standard.

A good sensor for when a Sharp IR distance sensor won't cut it. For example of using this with an Arduino, see the Halloween Pumpkin project.

HRLV-EZ0 Data Sheet / Product Information Guide is available here. By default this sensor outputs RS-232 logic level data, to use it in TTL logic mode, solder closed the square jumper on the back.

The different HRLV models have different beam width patterns, check this image for a comparison of all the HRLV model beam patterns. If you don't need high sensitivity, or want a longer range, check out the LV models - They are meant for up to 6.5 meter distances

https://www.adafruit.com/product/983
adafruit sensor proximity voltage temperature sound
D-17
1/1
Maxbotix Ultrasonic Rangefinder - HRLV-EZ1 - HRLV-EZ1

The HRLV-MaxSonar-EZ sensor line is the most cost-effective solution for applications where precision range-finding, low-voltage operation, space saving, and low-cost are needed.

The HRLV-MaxSonar-EZ sensor line provides high accuracy and high resolution ultrasonic proximity detection and ranging in air, in a package less than one cubic inch. This sensor line features 1mm resolution, target-size and operating-voltage compensation for improved accuracy, superior rejection of outside noise sources, internal speed-of-sound temperature compensation and optional external speed-of-sound temperature compensation. This ultrasonic sensor detects objects from 1mm to 5meters, senses range to objects from 30cm to 5meters, with large objects closer than 30cm typically reported as 30cm. The interface output formats are pulse width, analog voltage, and serial digital in either RS232 or TTL. Factory calibration is standard.

A good sensor for when a Sharp IR distance sensor won't cut it. For example of using this with an Arduino, see the Halloween Pumpkin project.

HRLV-EZ1 Data Sheet / Product Information Guide is available here. By default this sensor outputs RS-232 logic level data, to use it in TTL logic mode, solder closed the square jumper on the back.

The different HRLV models have different beam width patterns, check this image for a comparison of all the HRLV model beam patterns. If you don't need high sensitivity, or want a longer range, check out the LV models - They are meant for up to 6.5 meter distances

https://www.adafruit.com/product/984
adafruit sensor proximity voltage temperature sound
D-17
1/1
Maxbotix Ultrasonic Rangefinder - HRLV-EZ4 - HRLV-EZ4

The HRLV-MaxSonar-EZ sensor line is the most cost-effective solution for applications where precision range-finding, low-voltage operation, space saving, and low-cost are needed.

The HRLV-MaxSonar-EZ sensor line provides high accuracy and high resolution ultrasonic proximity detection and ranging in air, in a package less than one cubic inch. This sensor line features 1mm resolution, target-size and operating-voltage compensation for improved accuracy, superior rejection of outside noise sources, internal speed-of-sound temperature compensation and optional external speed-of-sound temperature compensation. This ultrasonic sensor detects objects from 1mm to 5meters, senses range to objects from 30cm to 5meters, with large objects closer than 30cm typically reported as 30cm. The interface output formats are pulse width, analog voltage, and serial digital in either RS232 or TTL. Factory calibration is standard.

A good sensor for when a Sharp IR distance sensor won't cut it. For example of using this with an Arduino, see the Halloween Pumpkin project.

HRLV-EZ4 Data Sheet / Product Information Guide is available here. By default this sensor outputs RS-232 logic level data, to use it in TTL logic mode, solder closed the square jumper on the back.

The different HRLV models have different beam width patterns, check this image for a comparison of all the HRLV model beam patterns. If you don't need high sensitivity, or want a longer range, check out the LV models - They are meant for up to 6.5 meter distances

https://www.adafruit.com/product/985
adafruit sensor proximity voltage temperature sound
D-17
0/1
Pololu Carrier with Sharp GP2Y0A60SZLF Analog Distance Sensor 10-150cm, 3V

The GP2Y0A60SZ distance sensor from Sharp offers a wide detection range of 4″ to 60″ (10 cm to 150 cm) and a high update rate of 60 Hz. The distance is indicated by an analog voltage, so only a single analog input is required to interface with the module. The sensor ships installed on our compact carrier board, which makes it easy to integrate this great sensor into your project, and is configured for 3V mode.

Pololu Carrier with Sharp GP2Y0A60SZLF Analog Distance Sensor 10-150cm, front view with dimensions.

Sharp’s distance sensors are a popular choice for many projects that require accurate distance measurements. This particular sensor is small and affordable, making it an attractive alternative to sonar rangefinders, while its wide sensing range and resistance to interference from ambient IR set it apart from other IR distance sensors. It consists of a Sharp GP2Y0A60SZLF module installed on our compact carrier board, which includes all of the external components required to make it work and provides a 0.1″ pin spacing that is compatible with standard connectors, solderless breadboards, and perfboards. With an ability to measure distances from as close as four inches to as far as five feet (10 cm to 150 cm), this sensor has the widest range of any of our Sharp distance sensors, and its 60 Hz update rate is more than twice that of Sharp’s older GP2Y0A02YK0F analog distance sensor that has a similar sensing range.

Interfacing to most microcontrollers is straightforward: the single analog output, OUT, can be connected to an analog-to-digital converter for taking distance measurements, or the output can be connected to a comparator for threshold detection. The sensor automatically updates the output approximately every 16 ms. The enable pin, EN, can be driven low to disable the IR emitter and put the sensor into a low-current stand-by mode. This pin is pulled high on the carrier board through a 10 kΩ pull-up resistor to enable the sensor by default.

A 1×4 strip of 0.1″ header pins and a 1×4 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. The board features one 0.125″ mounting hole that works with #4 or M3 screws (not included); if you do not need the mounting hole, you can cut that part of the board off to reduce its size.

The GP2Y0A60SZ supports two operating modes: 5V and 3V. In 5V mode, the recommended operating voltage is 2.7 V to 5.5 V, and the output voltage differential over the full distance range is approximately 3 V, varying from around 3.6 V at 10 cm to 0.6 V at 150 cm. In 3V mode, the recommended operating voltage is 2.7 V to 3.6 V, and the output voltage differential over the full distance range is approximately 1.6 V, varying from around 1.9 V at 10 cm to 0.3 V at 150 cm. The GP2Y0A60SZ datasheet (701k pdf) contains a plot of analog output voltage as a function of the distance for the two modes.

Our GP2Y0A60 carrier board is available configured for 5V mode or configured for 3V mode:

The only difference between the two versions is the presence or absence of a zero ohm resistor as shown in the picture above (the component location is marked by a rectangle on the silkscreen). You can convert a 5V version to 3V by removing the resistor, and you can convert a 3V version to 5V by shorting across the two pads.

Note that the 5V version can be powered all the way down to 2.7 V, and the relationship between the sensor output voltage and distance is mostly independent of the supply voltage. The main drawback to powering the 5V version at a lower voltage is the output voltage will not exceed the supply voltage, so the effective minimum detection distance might increase (i.e. for distances that would result in output voltages above your supply voltage, the output will instead be capped at the supply voltage). On the other hand, if you mostly care about measuring distances closer to the maximum end of the range, you could benefit from the increased output voltage differential of the 5V version even if you are only powering it at 3.3 V.

Operating voltage:

5V version: 2.7 V to 5.5 V

3V version: 2.7 V to 3.6 V

5V version: 2.7 V to 5.5 V

3V version: 2.7 V to 3.6 V

Average current consumption: 33 mA (typical)

Distance measuring range: 10 cm to 150 cm (4″ to 60″)

Output type: analog voltage

Output voltage differential over distance range:

5V version: 3.0 V (typical)

3V version: 1.6 V (typical)

5V version: 3.0 V (typical)

3V version: 1.6 V (typical)

Update period: 16.5 ± 4 ms

Enable pin can optionally be used to disable the emitter and save power

Size without header pins: 33 mm × 10.4 mm × 10.2 mm (1.3″ × 0.41″ × 0.4″)

Weight without header pins: 2.5 g (0.09 oz)

The above schematic shows the additional components the carrier board incorporates to make the GP2Y0A60SZLF easier to use. This schematic is also available as a downloadable pdf (142k pdf).

We carry several other Sharp distance sensors, including the shorter range Sharp GP2Y0A41SK0F analog distance sensor (4 – 30 cm) and Sharp GP2Y0A21YK0F analog distance sensor (10 – 80 cm). With regard to performance, this GP2Y0A60SZ is most similar to the Sharp GP2Y0A02YK0F analog distance sensor (20 – 150 cm), but the GP2Y0A60SZ offers a lower minimum detection distance and more than twice the sampling rate in a much smaller package:

Sharp GP2Y0A02YK0F Sensor 20-150cm (left) next to Pololu Carrier with Sharp GP2Y0A60SZLF Sensor 10-150cm (right).

We also carry three digital Sharp distance sensors that have lower minimum detection distances, quicker response times, lower current draws, and much smaller packages; they are available with a 5 cm, 10 cm, or 15 cm maximum detection distance and simply tell you if something is in their detection range, not how far away it is.

A variety of Sharp distance sensors.

People often buy this product together with:

https://www.pololu.com/product/2476
pololu proximity sensor range finder sensor voltage board component
D-18
6/6
Pololu Carrier with Sharp GP2Y0D815Z0F Digital Distance Sensor 15cm

This small digital distance sensor detects objects between 0.5 cm and 15 cm (0.2″ and 6″) away. With its quick response time, small size, low current draw, and short minimum sensing distance, this sensor is a good choice for non-contact, close-proximity object detection, and our compact carrier PCB makes it easy to integrate into your project.

These sensors are a great way to quickly detect the presence of nearby objects. It consists of a Sharp GP2Y0D805, GP2Y0D810, or GP2Y0D815 sensor module installed on our tiny carrier board for these sensors, which includes all of the external components required to make them work. The available versions offer three different sensing ranges:

Carrier with GP2Y0D805Z0F: 0.5 cm to 5 cm

Carrier with GP2Y0D810Z0F: 2 cm to 10 cm

Carrier with GP2Y0D815Z0F: 0.5 cm to 15 cm

There are a few millimeters of hysteresis around the maximum range threshold and no hysteresis at the minimum range threshold. Note that these sensors will only tell you if there is an object within the detection range along their narrow lines of sight; they will not tell you how far away the object is.

With detection distances up to 150 mm and a typical sampling rate of almost 400 Hz, these sensors provides an attractive alternative to shorter-range LED-phototransistor reflectance pairs and longer-range but slower sensors such as the Sharp GP2Y0A41SK0F analog distance sensor. The output, Vo, is driven low when the sensor detects an object; otherwise, the output is high.

Sharp GP2Y0D805Z0F digital distance sensor 5 cm measuring characteristics.

Sharp GP2Y0D810Z0F digital distance sensor 10 cm measuring characteristics.

Sharp GP2Y0D815Z0F digital distance sensor 15 cm measuring characteristics.

Some example applications include:

break-beam sensor or photogate alternative

non-contact bumper or obstacle detector

a counter or timer of objects as they pass by

The Pololu carrier board lets you interface with the GP2Y0D805, GP2Y0D810, or GP2Y0D815 sensor using a three-pin 0.1″ connector, such as the included 3×1 straight male header strip and 3×1 right-angle male header strip. You can connect to these pins with a servo cable or with a custom-made cable using pre-crimped wires and a 3×1 crimp connector housing.

The square pad is ground, the middle pad is VIN (2.7 – 6.2 V), and the remaining pad is the sensor output, OUT. Depending on your power source, you might notice an increase in performance by placing a large (>10 uF) capacitor between power and ground somewhere near the sensor.

A red LED on the back of the PCB lights when the output is low, indicating that the sensor is detecting something. With the LED in the circuit, the low output signal will be around 1 V. If so desired, you can disable this LED by cutting the trace between it and the OUT pin where it is marked on the silkscreen or by desoldering the LED, in which case the low voltage will be below 0.6 V.

The GP2Y0D805, GP2Y0D810, and GP2Y0D815 have an optional enable input that can be used to put the sensor into low-power mode. The Pololu carrier board connects this input to Vcc so that the sensor is always enabled, but you can solder a wire to the pad labeled “enable” on the back of the PCB if you want control over this input. Note that you will need to cut the trace that connects the enable line to Vcc on the PCB if you want to be able to disable the sensor. This trace is marked on the silkscreen, and there is a caret that indicates where we suggest you make the cut.

The carrier board has a 0.086″ mounting hole for a #2 or M2 screw. You can make the module more compact by cutting or grinding off this portion of the PCB if you do not need the mounting hole.

Operating voltage: 2.7 V to 6.2 V

Average current consumption: 5 mA (typical)

Distance measuring range

GP2Y0D805Z0F: 0.5 cm to 5 cm (0.2″ to 2″)

GP2Y0D810Z0F: 2 cm to 10 cm (0.8″ to 4″)

GP2Y0D815Z0F: 0.5 cm to 5 cm (0.2″ to 6″)

GP2Y0D805Z0F: 0.5 cm to 5 cm (0.2″ to 2″)

GP2Y0D810Z0F: 2 cm to 10 cm (0.8″ to 4″)

GP2Y0D815Z0F: 0.5 cm to 5 cm (0.2″ to 6″)

Output type: digital signal (low when detecting an object, high otherwise)

Steady state update period: 2.56 ms typical (3.77 ms max)

Enable pad can optionally be used to disable the emitter and save power (this feature requires you to cut a trace first)

Size without header pins: 21.6 mm × 8.9 mm × 10.4 mm (0.85″ × 0.35″ × 0.41″)

Weight without header pins: 1.5 g (0.05 oz)

Pololu carrier for Sharp GP2Y0D805Z0F, GP2Y0D810Z0F, and GP2Y0D815Z0F sensors schematic diagram.

We carry several analog Sharp distance sensors as well: the Sharp GP2Y0A51SK0F 2 – 15 cm, the Sharp GP2Y0A41SK0F 4 – 30 cm, the Sharp GP2Y0A21YK0F 10 – 80 cm, and the Sharp GP2Y0A02YK0F 20 – 150 cm. These analog distance sensors have longer minimum detection distances and much slower response times than the GP2Y0D805, GP2Y0D810, and GP2Y0D815, but they can see farther and report the distance to the detected object rather than simply if an object is detected.

A variety of Sharp distance sensors. From left to right: GP2Y0A02, GP2Y0A21 or GP2Y0A41, GP2Y0A51, and GP2Y0D8xx.

We also carry the newer Sharp GP2Y0A60SZ analog distance sensor (10 – 150 cm), which outperforms the other analog Sharp distance sensors in almost all respects, offering a low minimum detection distance, high maximum detection distance, wide 3 V output voltage differential, high 60 Hz sampling rate, operation down to 2.7 V, and optional enable control, all in a smaller package.

Sharp GP2Y0A02YK0F Sensor 20-150cm (left) next to Pololu Carrier with Sharp GP2Y0A60SZLF Sensor 10-150cm (right).

Note: This product comes with the GP2Y0D805Z0F, GP2Y0D810Z0F, or GP2Y0D815Z0F soldered into the carrier PCB. We sell the sensor modules by themselves, and we sell the carrier PCB without the sensor for those who already have the sensor or who want to solder the board together personally.

People often buy this product together with:

https://www.pololu.com/product/2465
pololu proximity sensor range finder sensor board led pololu
D-18
16/16
Pololu Carrier with Sharp GP2Y0D805Z0F Digital Distance Sensor 5cm

This small digital distance sensor detects objects between 0.5 cm and 5 cm (0.2″ and 2″) away. With its quick response time, small size, low current draw, and short minimum sensing distance, this sensor is a good choice for non-contact, close-proximity object detection, and our compact carrier PCB makes it easy to integrate into your project.

These sensors are a great way to quickly detect the presence of nearby objects. It consists of a Sharp GP2Y0D805, GP2Y0D810, or GP2Y0D815 sensor module installed on our tiny carrier board for these sensors, which includes all of the external components required to make them work. The available versions offer three different sensing ranges:

Carrier with GP2Y0D805Z0F: 0.5 cm to 5 cm

Carrier with GP2Y0D810Z0F: 2 cm to 10 cm

Carrier with GP2Y0D815Z0F: 0.5 cm to 15 cm

There are a few millimeters of hysteresis around the maximum range threshold and no hysteresis at the minimum range threshold. Note that these sensors will only tell you if there is an object within the detection range along their narrow lines of sight; they will not tell you how far away the object is.

With detection distances up to 150 mm and a typical sampling rate of almost 400 Hz, these sensors provides an attractive alternative to shorter-range LED-phototransistor reflectance pairs and longer-range but slower sensors such as the Sharp GP2Y0A41SK0F analog distance sensor. The output, Vo, is driven low when the sensor detects an object; otherwise, the output is high.

Sharp GP2Y0D805Z0F digital distance sensor 5 cm measuring characteristics.

Sharp GP2Y0D810Z0F digital distance sensor 10 cm measuring characteristics.

Sharp GP2Y0D815Z0F digital distance sensor 15 cm measuring characteristics.

Some example applications include:

break-beam sensor or photogate alternative

non-contact bumper or obstacle detector

a counter or timer of objects as they pass by

The Pololu carrier board lets you interface with the GP2Y0D805, GP2Y0D810, or GP2Y0D815 sensor using a three-pin 0.1″ connector, such as the included 3×1 straight male header strip and 3×1 right-angle male header strip. You can connect to these pins with a servo cable or with a custom-made cable using pre-crimped wires and a 3×1 crimp connector housing.

The square pad is ground, the middle pad is VIN (2.7 – 6.2 V), and the remaining pad is the sensor output, OUT. Depending on your power source, you might notice an increase in performance by placing a large (>10 uF) capacitor between power and ground somewhere near the sensor.

A red LED on the back of the PCB lights when the output is low, indicating that the sensor is detecting something. With the LED in the circuit, the low output signal will be around 1 V. If so desired, you can disable this LED by cutting the trace between it and the OUT pin where it is marked on the silkscreen or by desoldering the LED, in which case the low voltage will be below 0.6 V.

The GP2Y0D805, GP2Y0D810, and GP2Y0D815 have an optional enable input that can be used to put the sensor into low-power mode. The Pololu carrier board connects this input to Vcc so that the sensor is always enabled, but you can solder a wire to the pad labeled “enable” on the back of the PCB if you want control over this input. Note that you will need to cut the trace that connects the enable line to Vcc on the PCB if you want to be able to disable the sensor. This trace is marked on the silkscreen, and there is a caret that indicates where we suggest you make the cut.

The carrier board has a 0.086″ mounting hole for a #2 or M2 screw. You can make the module more compact by cutting or grinding off this portion of the PCB if you do not need the mounting hole.

Operating voltage: 2.7 V to 6.2 V

Average current consumption: 5 mA (typical)

Distance measuring range

GP2Y0D805Z0F: 0.5 cm to 5 cm (0.2″ to 2″)

GP2Y0D810Z0F: 2 cm to 10 cm (0.8″ to 4″)

GP2Y0D815Z0F: 0.5 cm to 5 cm (0.2″ to 6″)

GP2Y0D805Z0F: 0.5 cm to 5 cm (0.2″ to 2″)

GP2Y0D810Z0F: 2 cm to 10 cm (0.8″ to 4″)

GP2Y0D815Z0F: 0.5 cm to 5 cm (0.2″ to 6″)

Output type: digital signal (low when detecting an object, high otherwise)

Steady state update period: 2.56 ms typical (3.77 ms max)

Enable pad can optionally be used to disable the emitter and save power (this feature requires you to cut a trace first)

Size without header pins: 21.6 mm × 8.9 mm × 10.4 mm (0.85″ × 0.35″ × 0.41″)

Weight without header pins: 1.5 g (0.05 oz)

Pololu carrier for Sharp GP2Y0D805Z0F, GP2Y0D810Z0F, and GP2Y0D815Z0F sensors schematic diagram.

We carry several analog Sharp distance sensors as well: the Sharp GP2Y0A51SK0F 2 – 15 cm, the Sharp GP2Y0A41SK0F 4 – 30 cm, the Sharp GP2Y0A21YK0F 10 – 80 cm, and the Sharp GP2Y0A02YK0F 20 – 150 cm. These analog distance sensors have longer minimum detection distances and much slower response times than the GP2Y0D805, GP2Y0D810, and GP2Y0D815, but they can see farther and report the distance to the detected object rather than simply if an object is detected.

A variety of Sharp distance sensors. From left to right: GP2Y0A02, GP2Y0A21 or GP2Y0A41, GP2Y0A51, and GP2Y0D8xx.

We also carry the newer Sharp GP2Y0A60SZ analog distance sensor (10 – 150 cm), which outperforms the other analog Sharp distance sensors in almost all respects, offering a low minimum detection distance, high maximum detection distance, wide 3 V output voltage differential, high 60 Hz sampling rate, operation down to 2.7 V, and optional enable control, all in a smaller package.

Sharp GP2Y0A02YK0F Sensor 20-150cm (left) next to Pololu Carrier with Sharp GP2Y0A60SZLF Sensor 10-150cm (right).

Note: This product comes with the GP2Y0D805Z0F, GP2Y0D810Z0F, or GP2Y0D815Z0F soldered into the carrier PCB. We sell the sensor modules by themselves, and we sell the carrier PCB without the sensor for those who already have the sensor or who want to solder the board together personally.

People often buy this product together with:

https://www.pololu.com/product/1132
pololu proximity sensor range finder sensor board led pololu
D-18
1/1
Pololu Carrier with Sharp GP2Y0D810Z0F Digital Distance Sensor 10cm

This small digital distance sensor detects objects between 2 cm and 10 cm (0.8″ and 4″) away. With its quick response time, small size, and low current draw, this sensor is a good choice for non-contact object detection, and our compact carrier PCB makes it easy to integrate into your project.

These sensors are a great way to quickly detect the presence of nearby objects. It consists of a Sharp GP2Y0D805, GP2Y0D810, or GP2Y0D815 sensor module installed on our tiny carrier board for these sensors, which includes all of the external components required to make them work. The available versions offer three different sensing ranges:

Carrier with GP2Y0D805Z0F: 0.5 cm to 5 cm

Carrier with GP2Y0D810Z0F: 2 cm to 10 cm

Carrier with GP2Y0D815Z0F: 0.5 cm to 15 cm

There are a few millimeters of hysteresis around the maximum range threshold and no hysteresis at the minimum range threshold. Note that these sensors will only tell you if there is an object within the detection range along their narrow lines of sight; they will not tell you how far away the object is.

With detection distances up to 150 mm and a typical sampling rate of almost 400 Hz, these sensors provides an attractive alternative to shorter-range LED-phototransistor reflectance pairs and longer-range but slower sensors such as the Sharp GP2Y0A41SK0F analog distance sensor. The output, Vo, is driven low when the sensor detects an object; otherwise, the output is high.

Sharp GP2Y0D805Z0F digital distance sensor 5 cm measuring characteristics.

Sharp GP2Y0D810Z0F digital distance sensor 10 cm measuring characteristics.

Sharp GP2Y0D815Z0F digital distance sensor 15 cm measuring characteristics.

Some example applications include:

break-beam sensor or photogate alternative

non-contact bumper or obstacle detector

a counter or timer of objects as they pass by

The Pololu carrier board lets you interface with the GP2Y0D805, GP2Y0D810, or GP2Y0D815 sensor using a three-pin 0.1″ connector, such as the included 3×1 straight male header strip and 3×1 right-angle male header strip. You can connect to these pins with a servo cable or with a custom-made cable using pre-crimped wires and a 3×1 crimp connector housing.

The square pad is ground, the middle pad is VIN (2.7 – 6.2 V), and the remaining pad is the sensor output, OUT. Depending on your power source, you might notice an increase in performance by placing a large (>10 uF) capacitor between power and ground somewhere near the sensor.

A red LED on the back of the PCB lights when the output is low, indicating that the sensor is detecting something. With the LED in the circuit, the low output signal will be around 1 V. If so desired, you can disable this LED by cutting the trace between it and the OUT pin where it is marked on the silkscreen or by desoldering the LED, in which case the low voltage will be below 0.6 V.

The GP2Y0D805, GP2Y0D810, and GP2Y0D815 have an optional enable input that can be used to put the sensor into low-power mode. The Pololu carrier board connects this input to Vcc so that the sensor is always enabled, but you can solder a wire to the pad labeled “enable” on the back of the PCB if you want control over this input. Note that you will need to cut the trace that connects the enable line to Vcc on the PCB if you want to be able to disable the sensor. This trace is marked on the silkscreen, and there is a caret that indicates where we suggest you make the cut.

The carrier board has a 0.086″ mounting hole for a #2 or M2 screw. You can make the module more compact by cutting or grinding off this portion of the PCB if you do not need the mounting hole.

Operating voltage: 2.7 V to 6.2 V

Average current consumption: 5 mA (typical)

Distance measuring range

GP2Y0D805Z0F: 0.5 cm to 5 cm (0.2″ to 2″)

GP2Y0D810Z0F: 2 cm to 10 cm (0.8″ to 4″)

GP2Y0D815Z0F: 0.5 cm to 5 cm (0.2″ to 6″)

GP2Y0D805Z0F: 0.5 cm to 5 cm (0.2″ to 2″)

GP2Y0D810Z0F: 2 cm to 10 cm (0.8″ to 4″)

GP2Y0D815Z0F: 0.5 cm to 5 cm (0.2″ to 6″)

Output type: digital signal (low when detecting an object, high otherwise)

Steady state update period: 2.56 ms typical (3.77 ms max)

Enable pad can optionally be used to disable the emitter and save power (this feature requires you to cut a trace first)

Size without header pins: 21.6 mm × 8.9 mm × 10.4 mm (0.85″ × 0.35″ × 0.41″)

Weight without header pins: 1.5 g (0.05 oz)

Pololu carrier for Sharp GP2Y0D805Z0F, GP2Y0D810Z0F, and GP2Y0D815Z0F sensors schematic diagram.

We carry several analog Sharp distance sensors as well: the Sharp GP2Y0A51SK0F 2 – 15 cm, the Sharp GP2Y0A41SK0F 4 – 30 cm, the Sharp GP2Y0A21YK0F 10 – 80 cm, and the Sharp GP2Y0A02YK0F 20 – 150 cm. These analog distance sensors have longer minimum detection distances and much slower response times than the GP2Y0D805, GP2Y0D810, and GP2Y0D815, but they can see farther and report the distance to the detected object rather than simply if an object is detected.

A variety of Sharp distance sensors. From left to right: GP2Y0A02, GP2Y0A21 or GP2Y0A41, GP2Y0A51, and GP2Y0D8xx.

We also carry the newer Sharp GP2Y0A60SZ analog distance sensor (10 – 150 cm), which outperforms the other analog Sharp distance sensors in almost all respects, offering a low minimum detection distance, high maximum detection distance, wide 3 V output voltage differential, high 60 Hz sampling rate, operation down to 2.7 V, and optional enable control, all in a smaller package.

Sharp GP2Y0A02YK0F Sensor 20-150cm (left) next to Pololu Carrier with Sharp GP2Y0A60SZLF Sensor 10-150cm (right).

Note: This product comes with the GP2Y0D805Z0F, GP2Y0D810Z0F, or GP2Y0D815Z0F soldered into the carrier PCB. We sell the sensor modules by themselves, and we sell the carrier PCB without the sensor for those who already have the sensor or who want to solder the board together personally.

People often buy this product together with:

https://www.pololu.com/product/1134
pololu proximity sensor range finder sensor board led pololu
D-18
4/4
Pololu Carrier with Sharp GP2Y0A60SZLF Analog Distance Sensor 10-150cm, 5V

The GP2Y0A60SZ distance sensor from Sharp offers a wide detection range of 4″ to 60″ (10 cm to 150 cm) and a high update rate of 60 Hz. The distance is indicated by an analog voltage, so only a single analog input is required to interface with the module. The sensor ships installed on our compact carrier board, which makes it easy to integrate this great sensor into your project, and is configured for 5V mode.

Pololu Carrier with Sharp GP2Y0A60SZLF Analog Distance Sensor 10-150cm, front view with dimensions.

Sharp’s distance sensors are a popular choice for many projects that require accurate distance measurements. This particular sensor is small and affordable, making it an attractive alternative to sonar rangefinders, while its wide sensing range and resistance to interference from ambient IR set it apart from other IR distance sensors. It consists of a Sharp GP2Y0A60SZLF module installed on our compact carrier board, which includes all of the external components required to make it work and provides a 0.1″ pin spacing that is compatible with standard connectors, solderless breadboards, and perfboards. With an ability to measure distances from as close as four inches to as far as five feet (10 cm to 150 cm), this sensor has the widest range of any of our Sharp distance sensors, and its 60 Hz update rate is more than twice that of Sharp’s older GP2Y0A02YK0F analog distance sensor that has a similar sensing range.

Interfacing to most microcontrollers is straightforward: the single analog output, OUT, can be connected to an analog-to-digital converter for taking distance measurements, or the output can be connected to a comparator for threshold detection. The sensor automatically updates the output approximately every 16 ms. The enable pin, EN, can be driven low to disable the IR emitter and put the sensor into a low-current stand-by mode. This pin is pulled high on the carrier board through a 10 kΩ pull-up resistor to enable the sensor by default.

A 1×4 strip of 0.1″ header pins and a 1×4 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. The board features one 0.125″ mounting hole that works with #4 or M3 screws (not included); if you do not need the mounting hole, you can cut that part of the board off to reduce its size.

The GP2Y0A60SZ supports two operating modes: 5V and 3V. In 5V mode, the recommended operating voltage is 2.7 V to 5.5 V, and the output voltage differential over the full distance range is approximately 3 V, varying from around 3.6 V at 10 cm to 0.6 V at 150 cm. In 3V mode, the recommended operating voltage is 2.7 V to 3.6 V, and the output voltage differential over the full distance range is approximately 1.6 V, varying from around 1.9 V at 10 cm to 0.3 V at 150 cm. The GP2Y0A60SZ datasheet (701k pdf) contains a plot of analog output voltage as a function of the distance for the two modes.

Our GP2Y0A60 carrier board is available configured for 5V mode or configured for 3V mode:

The only difference between the two versions is the presence or absence of a zero ohm resistor as shown in the picture above (the component location is marked by a rectangle on the silkscreen). You can convert a 5V version to 3V by removing the resistor, and you can convert a 3V version to 5V by shorting across the two pads.

Note that the 5V version can be powered all the way down to 2.7 V, and the relationship between the sensor output voltage and distance is mostly independent of the supply voltage. The main drawback to powering the 5V version at a lower voltage is the output voltage will not exceed the supply voltage, so the effective minimum detection distance might increase (i.e. for distances that would result in output voltages above your supply voltage, the output will instead be capped at the supply voltage). On the other hand, if you mostly care about measuring distances closer to the maximum end of the range, you could benefit from the increased output voltage differential of the 5V version even if you are only powering it at 3.3 V.

Operating voltage:

5V version: 2.7 V to 5.5 V

3V version: 2.7 V to 3.6 V

5V version: 2.7 V to 5.5 V

3V version: 2.7 V to 3.6 V

Average current consumption: 33 mA (typical)

Distance measuring range: 10 cm to 150 cm (4″ to 60″)

Output type: analog voltage

Output voltage differential over distance range:

5V version: 3.0 V (typical)

3V version: 1.6 V (typical)

5V version: 3.0 V (typical)

3V version: 1.6 V (typical)

Update period: 16.5 ± 4 ms

Enable pin can optionally be used to disable the emitter and save power

Size without header pins: 33 mm × 10.4 mm × 10.2 mm (1.3″ × 0.41″ × 0.4″)

Weight without header pins: 2.5 g (0.09 oz)

The above schematic shows the additional components the carrier board incorporates to make the GP2Y0A60SZLF easier to use. This schematic is also available as a downloadable pdf (142k pdf).

We carry several other Sharp distance sensors, including the shorter range Sharp GP2Y0A41SK0F analog distance sensor (4 – 30 cm) and Sharp GP2Y0A21YK0F analog distance sensor (10 – 80 cm). With regard to performance, this GP2Y0A60SZ is most similar to the Sharp GP2Y0A02YK0F analog distance sensor (20 – 150 cm), but the GP2Y0A60SZ offers a lower minimum detection distance and more than twice the sampling rate in a much smaller package:

Sharp GP2Y0A02YK0F Sensor 20-150cm (left) next to Pololu Carrier with Sharp GP2Y0A60SZLF Sensor 10-150cm (right).

We also carry three digital Sharp distance sensors that have lower minimum detection distances, quicker response times, lower current draws, and much smaller packages; they are available with a 5 cm, 10 cm, or 15 cm maximum detection distance and simply tell you if something is in their detection range, not how far away it is.

A variety of Sharp distance sensors.

People often buy this product together with:

https://www.pololu.com/product/2474
pololu proximity sensor range finder sensor voltage board component
D-18
4/4
L3GD20H Triple-Axis Gyro Breakout Board - L3GD20/L3G4200 Upgrade - L3GD20H

A gyroscope is a type of sensor that can sense twisting and turning motions. Often paired with an accelerometer, you can use these to do 3D motion capture and inertial measurement (that is - you can tell how an object is moving!) As these sensors become more popular and easier to manufacture, the prices for them have dropped to the point where you can easily afford a triple-axis gyro! Only a decade ago, this space-tech sensor would have been hundreds of dollars.This breakout board is based around the latest gyro technology, the L3GD20H from STMicro. It's the upgrade to the L3G4200 (see this app note on what to look for if upgrading an existing design to the L3GD20) with three full axes of sensing. The chip can be set to ±250, ±500, or ±2000 degree-per-second scale for a large range of sensitivity. There's also built in high and low pass sensing to make data processing easier. The chip supports both I2C and SPI so you can interface with any microcontroller easily.Since this chip is a 3.3V max device, but many of our customers want to use it with an Arduino, we soldered it to a breakout board with level shifting circuitry so you can use the I2C or SPI interface safely using a 5V interface device. We also place a 3.3V regulator on there so you can power it from 5V.Since we expect people will want to attach it firmly to their project, the PCB comes with four 2.1mm mounting holes. Use #2-56 imperial or M2 screws screws.Getting started is easy - simply connect SDA to your Arduino I2C data pin (On the UNO this is A4), SCL to I2C clock (Uno: A5), GND to ground, and Vin to 3 or 5VDC. Then install and run our easy to use Arduino library, which will print out the XYZ sensor data to the serial terminal. Our library also supports SPI on any 4 digital I/O pins, see the example for wiring.

https://www.adafruit.com/product/1032
adafruit sensor motion i2c breakout board
D-20
1/1
Adafruit Precision NXP 9-DOF Breakout Board - FXOS8700 + FXAS21002

The NXP Precision 9DoF breakout combines two of the best motion sensors we've tested here at Adafruit: The FXOS8700 3-Axis accelerometer and magnetometer, and the FXAS21002 3-axis gyroscope.

These two sensors combine to make a nice 9-DoF kit, that can be used for motion and orientation sensing. In particular, we think this sensor set is ideal for AHRS-based orientation calculations: the gyro stability performance is superior to the LSM9DS0, LSM9DS1, L3GD20H + LSM303, MPU-9250, and even the BNO-055 (see our Gyro comparison tutorial for more details).

Compared to the BNO055, this sensor will get you similar orientation performance but at a lower price because the calculations are done on your microcontroller, not in the sensor itself. The trade off is you will sacrifice about 15KB of Flash space, and computing cycles, to do the math 'in house.'

To make it fast and easy for you to get started, we have a version of AHRS that we've adapted to work over USB or Bluetooth LE. Load the code onto your Arduino-compatible board and you will get orientation data in the form of Euler angles or quaternions! It will work on a ATmega328 (the fusion code is 15KB of flash) but faster/larger chips such as M0 or ESP8266 will give you more breathing room.

Each board comes with the two chips soldered onto a breakout with 4 mounting holes. While the chips support SPI, they don't tri-state the MISO pin, so we decided to go with plain I2C which works well and is supported by every modern microcontroller and computer chip set.  There's a 3.3V regulator and level shifting on the I2C and Reset lines, so you can use the breakout safely with 3.3V or 5V power/logic. Each order comes with a fully assembled and tested breakout and a small strip of header. Some light soldering is required to attach the header if you want to use in a breadboard.

Our tutorial will get you started with wiring diagrams, pinouts, assembly instructions and library code with examples!

So what makes this so 'Precision'-y, eh?

Glad you asked! This particular sensor combination jumped out at us writing the Comparing Gyroscopes learning guide since the FXAS21002 exhibited the lowest zero-rate level of any of the gyroscopes we've tested, with the the following documented levels (converted to degrees per second for convenience sake):

At +/- 2000 dps 3.125 dps

At +/- 250 dps 0.3906 dps

The zero-rate level is important in orientation since it represents the amount of angular velocity a gyroscope will report when the device is immobile. High zero-rate levels can cause all kinds of problems in orientation systems if the data isn't properly compensated out, and distinguishing zero-rate errors from actual angular velocity can be non-trivial. This is particularly important in sensor fusion algorithms where the gyroscope plays an important part in predicting orientation adjustments over time. A high zero-rate level will cause constant rotation even when the device is immobile!

By comparison, most other sensors tested have 10-20 times these zero-rate levels, which is why we consider this particular part very precise. There is little work to do out of the box to get useful, actionable data out of it.

https://www.adafruit.com/product/3463
adafruit breakout board accel gyro magnetometer sensor breakout board i2c
D-20
0/1
AltIMU-10 v5 Gyro, Accelerometer, Compass, and Altimeter (LSM6DS33, LIS3MDL, and LPS25H Carrier)

The Pololu AltIMU-10 v5 is an inertial measurement unit (IMU) and altimeter that features the same LSM6DS33 gyro and accelerometer and LIS3MDL magnetometer as the MinIMU-9 v5, and adds an LPS25H digital barometer. An I²C interface accesses ten independent pressure, rotation, acceleration, and magnetic measurements that can be used to calculate the sensor’s altitude and absolute orientation. The board operates from 2.5 to 5.5 V and has a 0.1″ pin spacing.

The Pololu AltIMU-10 v5 is a compact (1.0″ × 0.5″) board that combines ST’s LSM6DS33 3-axis gyroscope and 3-axis accelerometer, LIS3MDL 3-axis magnetometer, and LPS25H digital barometer to form an inertial measurement unit (IMU) and altimeter; we therefore recommend careful reading of the LSM6DS33 datasheet (1MB pdf), LIS3MDL datasheet (2MB pdf), and LPS25H datasheet (1MB pdf) before using this product. These sensors are great ICs, but their small packages make them difficult for the typical student or hobbyist to use. They also operate at voltages below 3.6 V, which can make interfacing difficult for microcontrollers operating at 5 V. The AltIMU-10 v5 addresses these issues by incorporating additional electronics, including a voltage regulator and a level-shifting circuit, while keeping the overall size as compact as possible. The board ships fully populated with its SMD components, including the LSM6DS33, LIS3MDL, and LPS25H, as shown in the product picture.

Compared to the previous AltIMU-10 v4, the v5 version uses newer MEMS sensors that provide some increases in accuracy (lower noise and zero-rate offsets). The AltIMU-10 v5 is pin-compatible with the AltIMU-10 v4, but because it uses different sensor chips, software written for older IMU versions will need to be changed to work with the v5.

The AltIMU-10 v5 is also pin-compatible with the MinIMU-9 v5 and offers the same functionality augmented by a digital barometer that can be used to obtain pressure and altitude measurements. It includes a second mounting hole and is only 0.2″ longer than the MinIMU-9 v5. Any code written for the MinIMU-9 v5 should also work with the AltIMU-10 v5.

Side-by-side comparison of the MinIMU-9 v5 with the AltIMU-10 v5.

The LSM6DS33, LIS3MDL, and LPS25H have many configurable options, including dynamically selectable sensitivities for the gyro, accelerometer, and magnetometer and selectable resolutions for the barometer. Each sensor also has a choice of output data rates. The three ICs can be accessed through a shared I²C/TWI interface, allowing the sensors to be addressed individually via a single clock line and a single data line. Additionally, a slave address configuration pin allows users to change the sensors’ I²C addresses and have two AltIMUs connected on the same I²C bus. (For additional information, see the I²C Communication section below.)

The nine independent rotation, acceleration, and magnetic readings provide all the data needed to make an attitude and heading reference system (AHRS), and readings from the absolute pressure sensor can be easily converted to altitudes, giving you a total of ten independent measurements (sometimes called 10DOF). With an appropriate algorithm, a microcontroller or computer can use the data to calculate the orientation and height of the AltIMU board. The gyro can be used to very accurately track rotation on a short timescale, while the accelerometer and compass can help compensate for gyro drift over time by providing an absolute frame of reference. The respective axes of the two chips are aligned on the board to facilitate these sensor fusion calculations. (For an example of such a system using an Arduino, see the picture below and the Sample Code section at the bottom of this page.)

Visualization of AHRS orientation calculated from MinIMU-9 readings.

The carrier board includes a low-dropout linear voltage regulator that provides the 3.3 V required by the LSM6DS33, LIS3MDL, and LPS25H, allowing the module to be powered from a single 2.5 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 5 V systems. The board’s 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards.

Specifications

Dimensions: 1.0″ × 0.5″ × 0.1″ (25 mm × 13 mm × 3 mm)

Weight without header pins: 0.8 g (0.03 oz)

Operating voltage: 2.5 V to 5.5 V

Supply current: 5 mA

Output format (I²C):

Gyro: one 16-bit reading per axis

Accelerometer: one 16-bit reading per axis

Magnetometer: one 16-bit reading per axis

Barometer: 24-bit pressure reading (4096 LSb/mbar)

Gyro: one 16-bit reading per axis

Accelerometer: one 16-bit reading per axis

Magnetometer: one 16-bit reading per axis

Barometer: 24-bit pressure reading (4096 LSb/mbar)

Sensitivity range:

Gyro: ±125, ±245, ±500, ±1000, or ±2000°/s

Accelerometer: ±2, ±4, ±8, or ±16 g

Magnetometer: ±4, ±8, ±12, or ±16 gauss

Barometer: 260 mbar to 1260 mbar (26 kPa to 126 kPa)

Gyro: ±125, ±245, ±500, ±1000, or ±2000°/s

Accelerometer: ±2, ±4, ±8, or ±16 g

Magnetometer: ±4, ±8, ±12, or ±16 gauss

Barometer: 260 mbar to 1260 mbar (26 kPa to 126 kPa)

Included Components

A 1×6 strip of 0.1″ header pins and a 1×5 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 solder wires directly to the board itself for more compact installations. The board features two mounting holes that work with #2 or M2 screws (not included).

Connections

A minimum of four connections is necessary to use the AltIMU-10 v5: VIN, GND, SCL, and SDA. VIN should be connected to a 2.5 V to 5.5 V source, GND to 0 volts, and SCL and SDA should be connected to an I²C bus operating at the same logic level as VIN. (Alternatively, if you are using the board with a 3.3 V system, you can leave VIN disconnected and bypass the built-in regulator by connecting 3.3 V directly to VDD.)

Pololu AltIMU-10 v5 gyro, accelerometer, compass, and altimeter pinout.

Two Pololu AltIMU-10 v5 modules in a breadboard.

Pinout

The CS, data ready, and interrupt pins of the LSM6DS33, LIS3MDL, and LPS25H are not accessible on the AltIMU-10 v5. In particular, the absence of the CS pin means that the optional SPI interface of these ICs is not available. If you want these features, consider using our LSM6DS33 carrier, LIS3MDL carrier, and LPS25H carrier boards.

Schematic Diagram

The above schematic shows the additional components the carrier board incorporates to make the LSM6DS33, LIS3MDL, and LPS25H easier to use, including the voltage regulator that allows the board to be powered from a single 2.5 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: AltIMU-10 v5 schematic (119k pdf).

I²C Communication

The LSM6DS33’s gyro and accelerometer, the LIS3MDL’s magnetometer, and the LPS25H’s barometer can be queried and configured through the I²C bus. Each of the four sensors acts as a slave device on the same I²C bus (i.e. their clock and data lines are tied together to ease communication). Additionally, level shifters on the I²C clock (SCL) and data lines (SDA) enable I²C communication with microcontrollers operating at the same voltage as VIN (2.5 V to 5.5 V). A detailed explanation of the protocols used by each device can be found in the LSM6DS33 datasheet (1MB pdf), the LIS3MDL datasheet (2MB pdf), and the LPS25H datasheet (1MB pdf). More detailed information about I²C in general can be found in NXP’s I²C-bus specification (1MB pdf).

The LSM6DS33, LIS3MDL, and LPS25H each have separate slave addresses on the I²C bus. The board connects the slave address select pins (SA0 or SA1) of the three ICs together and pulls them all to VDD through a 10 kΩ resistor. You can drive the pin labeled SA0 low to change the slave address. This allows you to have two AltIMUs (or an AltIMU v5 and a MinIMU v5) connected on the same I²C bus. The following table shows the slave addresses of the sensors:

All three chips on the AltIMU-10 v5 are compliant with fast mode (400 kHz) I²C standards as well as with the normal mode.

We have written a basic LSM6DS33 Arduino library, LIS3MDL Arduino library, and LPS25H Arduino library that make it easy to interface the AltIMU-10 v5 with an Arduino or Arduino-compatible board like an A-Star. They also make it simple to configure the sensors and read the raw gyro, accelerometer, magnetometer, and pressure data.

For a demonstration of what you can do with this data, you can turn an Arduino connected to a AltIMU-10 v5 into an attitude and heading reference system, or AHRS, with this Arduino program. It uses the data from the AltIMU-10 v5 to calculate estimated roll, pitch, and yaw angles, and you can visualize the output of the AHRS with a 3D test program on your PC (as shown in a screenshot above). This software is based on the work of Jordi Munoz, William Premerlani, Jose Julio, and Doug Weibel.

The datasheets provide all the information you need to use the sensors on the AltIMU-10 v5, but picking out the important details can take some time. Here are some pointers for communicating with and configuring the LSM6DS33, LIS3MDL, and LPS25H that we hope will get you up and running a little bit faster:

The gyro, accelerometer, magnetometer, and pressure sensor are all in power-down mode by default. You have to turn them on by setting the correct configuration registers.

You can read or write multiple registers in the LIS3MDL or LPS25H with a single I²C command by asserting the most significant bit of the register address to enable address auto-increment.

The register address in the LSM6DS33 automatically increments during a multiple byte access, allowing you to read or write multiple registers in a single I²C command. Unlike how some other ST sensors work, the auto-increment is enabled by default; you can turn it off with the IF_INC field in the CTRL3_C register.

In addition to the datasheets, ST provides application notes for the LSM6DS33 (1MB pdf) and LIS3MDL (598k pdf) containing additional information and hints about using them.

We carry several inertial measurement and orientation sensors. The table below compares their capabilities:

People often buy this product together with:

https://www.pololu.com/product/2739
pololu sensor accelerometer gyro compass board voltage arduino
D-20
2/2
MinIMU-9 v5 Gyro, Accelerometer, and Compass (LSM6DS33 and LIS3MDL Carrier)

The Pololu MinIMU-9 v5 is an inertial measurement unit (IMU) that packs an LSM6DS33 3-axis gyro and 3-axis accelerometer and an LIS3MDL 3-axis magnetometer onto a tiny 0.8″ × 0.5″ board. An I²C interface accesses nine independent rotation, acceleration, and magnetic measurements that can be used to calculate the sensor’s absolute orientation. The MinIMU-9 v5 board includes a voltage regulator and a level-shifting circuit that allow operation from 2.5 to 5.5 V, and the 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards.

The Pololu MinIMU-9 v5 is a compact (0.8″ × 0.5″) board that combines ST’s LSM6DS33 3-axis gyroscope and 3-axis accelerometer and LIS3MDL 3-axis magnetometer to form an inertial measurement unit (IMU); we therefore recommend careful reading of the LSM6DS33 datasheet (1MB pdf) and LIS3MDL datasheet (2MB pdf) before using this product. These sensors are great ICs, but their small packages make them difficult for the typical student or hobbyist to use. They also operate at voltages below 3.6 V, which can make interfacing difficult for microcontrollers operating at 5 V. The MinIMU-9 v5 addresses these issues by incorporating additional electronics, including a voltage regulator and a level-shifting circuit, while keeping the overall size as compact as possible. The board ships fully populated with its SMD components, including the LSM6DS33 and LIS3MDL, as shown in the product picture.

Compared to the previous MinIMU-9 v3, the v5 version uses newer MEMS sensors that provide some increases in accuracy (lower noise and zero-rate offsets). The MinIMU-9 v5 is pin-compatible with the MinIMU-9 v3, but because it uses different sensor chips, software written for older IMU versions will need to be changed to work with the v5.

The MinIMU-9 v5 is also pin-compatible with the AltIMU-10 v5, which offers the same functionality augmented by a digital barometer that can be used to obtain pressure and altitude measurements. The AltIMU includes a second mounting hole and is 0.2″ longer than the MinIMU. Any code written for the MinIMU-9 v5 should also work with the AltIMU-10 v5.

Side-by-side comparison of the MinIMU-9 v5 with the AltIMU-10 v5.

The LSM6DS33 and LIS3MDL have many configurable options, including dynamically selectable sensitivities for the gyro, accelerometer, and magnetometer. Each sensor also has a choice of output data rates. The two ICs can be accessed through a shared I²C/TWI interface, allowing the sensors to be addressed individually via a single clock line and a single data line. Additionally, a slave address configuration pin allows users to change the sensors’ I²C addresses and have two MinIMUs connected on the same I²C bus. (For additional information, see the I²C Communication section below.)

The nine independent rotation, acceleration, and magnetic readings (sometimes called 9DOF) provide all the data needed to make an attitude and heading reference system (AHRS). With an appropriate algorithm, a microcontroller or computer can use the data to calculate the orientation of the MinIMU board. The gyro can be used to very accurately track rotation on a short timescale, while the accelerometer and compass can help compensate for gyro drift over time by providing an absolute frame of reference. The respective axes of the two chips are aligned on the board to facilitate these sensor fusion calculations. (For an example of such a system using an Arduino, see the picture below and the Sample Code section at the bottom of this page.)

Visualization of AHRS orientation calculated from MinIMU-9 readings.

The carrier board includes a low-dropout linear voltage regulator that provides the 3.3 V required by the LSM6DS33 and LIS3MDL, allowing the module to be powered from a single 2.5 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 5 V systems. The board’s 0.1″ pin spacing makes it easy to use with standard solderless breadboards and 0.1″ perfboards.

Specifications

Dimensions: 0.8″ × 0.5″ × 0.1″ (20 mm × 13 mm × 3 mm)

Weight without header pins: 0.7 g (0.02 oz)

Operating voltage: 2.5 V to 5.5 V

Supply current: 5 mA

Output format (I²C):

Gyro: one 16-bit reading per axis

Accelerometer: one 16-bit reading per axis

Magnetometer: one 16-bit reading per axis

Gyro: one 16-bit reading per axis

Accelerometer: one 16-bit reading per axis

Magnetometer: one 16-bit reading per axis

Sensitivity range:

Gyro: ±125, ±245, ±500, ±1000, or ±2000°/s

Accelerometer: ±2, ±4, ±8, or ±16 g

Magnetometer: ±4, ±8, ±12, or ±16 gauss

Gyro: ±125, ±245, ±500, ±1000, or ±2000°/s

Accelerometer: ±2, ±4, ±8, or ±16 g

Magnetometer: ±4, ±8, ±12, or ±16 gauss

Included Components

A 1×6 strip of 0.1″ header pins and a 1×5 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 solder wires directly to the board itself for more compact installations. The board features two mounting holes that work with #2 or M2 screws (not included).

Connections

A minimum of four connections is necessary to use the MinIMU-9 v5: VIN, GND, SCL, and SDA. VIN should be connected to a 2.5 V to 5.5 V source, GND to 0 volts, and SCL and SDA should be connected to an I²C bus operating at the same logic level as VIN. (Alternatively, if you are using the board with a 3.3 V system, you can leave VIN disconnected and bypass the built-in regulator by connecting 3.3 V directly to VDD.)

Pololu MinIMU-9 v5 gyro, accelerometer, and compass pinout.

Two Pololu MinIMU-9 v5 modules in a breadboard.

Pinout

The CS, data ready, and interrupt pins of the LSM6DS33 and LIS3MDL are not accessible on the MinIMU-9 v5. In particular, the absence of the CS pin means that the optional SPI interface of these ICs is not available. If you want these features, consider using our LSM6DS33 carrier and LIS3MDL carrier boards.

Schematic Diagram

The above schematic shows the additional components the carrier board incorporates to make the LSM6DS33 and LIS3MDL easier to use, including the voltage regulator that allows the board to be powered from a single 2.5 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: MinIMU-9 v5 schematic (106k pdf).

I²C Communication

The LSM6DS33’s gyro and accelerometer and the LIS3MDL’s magnetometer can be queried and configured through the I²C bus. Each of the three sensors acts as a slave device on the same I²C bus (i.e. their clock and data lines are tied together to ease communication). Additionally, level shifters on the I²C clock (SCL) and data lines (SDA) enable I²C communication with microcontrollers operating at the same voltage as VIN (2.5 V to 5.5 V). A detailed explanation of the protocols used by each device can be found in the LSM6DS33 datasheet (1MB pdf) and the LIS3MDL datasheet (2MB pdf). More detailed information about I²C in general can be found in NXP’s I²C-bus specification (1MB pdf).

The LSM6DS33 and LIS3MDL each have separate slave addresses on the I²C bus. The board connects the slave address select pins (SA0 or SA1) of the two ICs together and pulls them both to VDD through a 10 kΩ resistor. You can drive the pin labeled SA0 low to change the slave address. This allows you to have two MinIMUs (or a MinIMU v5 and an AltIMU v5) connected on the same I²C bus. The following table shows the slave addresses of the sensors:

Both chips on the MinIMU-9 v5 are compliant with fast mode (400 kHz) I²C standards as well as with the normal mode.

We have written a basic LSM6DS33 Arduino library and LIS3MDL Arduino library that make it easy to interface the MinIMU-9 v5 with an Arduino or Arduino-compatible board like an A-Star. They also make it simple to configure the sensors and read the raw gyro, accelerometer, and magnetometer data.

For a demonstration of what you can do with this data, you can turn an Arduino connected to a MinIMU-9 v5 into an attitude and heading reference system, or AHRS, with this Arduino program. It uses the data from the MinIMU-9 to calculate estimated roll, pitch, and yaw angles, and you can visualize the output of the AHRS with a 3D test program on your PC (as shown in a screenshot above). This software is based on the work of Jordi Munoz, William Premerlani, Jose Julio, and Doug Weibel.

The datasheets provide all the information you need to use the sensors on the MinIMU-9 v5, but picking out the important details can take some time. Here are some pointers for communicating with and configuring the LSM6DS33 and LIS3MDL that we hope will get you up and running a little bit faster:

The gyro, accelerometer, and magnetometer are all in power-down mode by default. You have to turn them on by setting the correct configuration registers.

You can read or write multiple registers in the LIS3MDL with a single I²C command by asserting the most significant bit of the register address to enable address auto-increment.

The register address in the LSM6DS33 automatically increments during a multiple byte access, allowing you to read or write multiple registers in a single I²C command. Unlike how some other ST sensors work, the auto-increment is enabled by default; you can turn it off with the IF_INC field in the CTRL3_C register.

In addition to the datasheets, ST provides application notes for the LSM6DS33 (1MB pdf) and LIS3MDL (598k pdf) containing additional information and hints about using them.

We carry several inertial measurement and orientation sensors. The table below compares their capabilities:

People often buy this product together with:

https://www.pololu.com/product/2738
pololu sensor accelerometer gyro compass board voltage arduino
D-20
2/2
ADXL345 - Triple-Axis Accelerometer (+-2g/4g/8g/16g) w/ I2C/SPI

Filling out our accelerometer offerings, we now have the really lovely digital ADXL345 from Analog Devices, a triple-axis accelerometer with digital I2C and SPI interface breakout. We added an on-board 3.3V regulator and logic-level shifting circuitry, making it a perfect choice for interfacing with any 3V or 5V microcontroller such as the Arduino.The sensor has three axes of measurements, X Y Z, and pins that can be used either as I2C or SPI digital interfacing. You can set the sensitivity level to either +-2g, +-4g, +-8g or +-16g. The lower range gives more resolution for slow movements, the higher range is good for high speed tracking. The ADXL345 is the latest and greatest from Analog Devices, known for their exceptional quality MEMS devices. The VCC takes up to 5V in and regulates it to 3.3V with an output pin.Fully assembled and tested. Comes with 9 pin 0.1" standard header in case you want to use it with a breadboard or perfboard. Two 2.5mm (0.1") mounting holes for easy attachment.Get started in a jiffy with our detailed tutorial!

ADXL345 - Triple-Axis Accelerometer (+-2g/4g/8g/16g) w/ I2C/SPI (16:05)

https://www.adafruit.com/product/1231
adafruit sensor motion i2c regulator breakout
D-20
1/1
SparkFun 6 Degrees of Freedom Breakout - LSM6DS3

The LSM6DS3 is a accelerometer and gyroscope sensor with a giant 8kb FIFO buffer and embedded processing interrupt functions, specifically targeted at the cellphone market. Due to the capabilities and low cost of the LSM6DS3 we’ve created this small breakout board just for you! Each LSM6DS3 Breakout has been designed to be super-flexible and can be configured specifically for many applications. With the LSM6DS3 Breakout you will be able to detect shocks, tilt, motion, taps, count steps, and even read the temperature!

The LSM6DS3 is capable of reading accelerometer data up to 6.7kS/s and gyroscope data up to 1.7kS/s for more accurate movement sensing. As stated before this breakout also has the ability to buffer up to 8kB of data between reads, host other sensors, and drive interrupt pins all thanks to the LSM6DS3’s built-in FIFO.

Each pin has been broken out on the LSM6DS3, with one side of the board featuring power and I2C functionality while the other side sporting pins that control SPI functionality and interrupt outputs. Please keep in mind that the LSM6DS3 is a 3.3V device so supplying voltages greater than ~3.6V can permanently damage the IC. A logic level shifter is required for any development platform operating at 5V.

Features

Power consumption: 0.9 mA in combo normal mode and 1.25 mA in combo high-performance mode up to 1.6 kHz.

“Always on” experience with low power consumption for both accelerometer and gyroscope

Smart FIFO up to 8 kbyte based on features set

±2/±4/±8/±16 g full scale

±125/±245/±500/±1000/±2000 dps full scale

Analog supply voltage: 1.71 V to 3.6 V

SPI/I2C serial interface with main processor data synchronization feature

Embedded temperature sensor

https://www.sparkfun.com/products/13339
sparkfun imu breakout power sensor i2c
D-20
3/3
SparkFun 9DoF IMU Breakout - LSM9DS1

The LSM9DS1 is a versatile, motion-sensing system-in-a-chip. It houses a 3-axis accelerometer, 3-axis gyroscope, and 3-axis magnetometer – nine degrees of freedom (9DOF) in a single IC! The LSM9DS1 is equipped with a digital interface, but even that is flexible: it supports both I2C and SPI, so you’ll be hard-pressed to find a microcontroller it doesn’t work with. This IMU-in-a-chip is so cool we put it on the quarter-sized breakout board you are currently viewing!

The LSM9DS1 is one of only a handful of IC’s that can measure three key properties of movement – angular velocity, acceleration, and heading – in a single IC. By measuring these three properties, you can gain a great deal of knowledge about an object’s movement and orientation. The LSM9DS1 measures each of these movement properties in three dimensions. That means it produces nine pieces of data: acceleration in x/y/z, angular rotation in x/y/z, and magnetic force in x/y/z. The LSM9DS1 Breakout has labels indicating the accelerometer and gyroscope axis orientations, which share a right-hand rule relationship with each other.

Each sensor in the LSM9DS1 supports a wide spectrum of ranges: the accelerometer’s scale can be set to ± 2, 4, 8, or 16 g, the gyroscope supports ± 245, 500, and 2000 °/s, and the magnetometer has full-scale ranges of ± 4, 8, 12, or 16 gauss.

Get Started with the LSM9DS1 Breakout Guide

Features

3 acceleration channels, 3 angular rate channels, 3 magnetic field channels

±2/±4/±8/±16 g linear acceleration full scale

±4/±8/±12/±16 gauss magnetic full scale

±245/±500/±2000 dps angular rate full scale

SPI / I2C serial interfaces

Operating Voltage: 3.3V

https://www.sparkfun.com/products/13284
sparkfun imu breakout i2c 9dof force 9 degrees of freedom lsm9ds1 sensor spi
D-20
4/4
SparkFun Triple Axis Accelerometer Breakout - MMA8452Q

This breakout board makes it easy to use the tiny MMA8452Q accelerometer in your project. The MMA8452Q is a smart low-power, three-axis, capacitive MEMS accelerometer with 12 bits of resolution. This accelerometer is packed with embedded functions with flexible user programmable options, configurable to two interrupt pins. Embedded interrupt functions allow for overall power savings relieving the host processor from continuously polling data.

The MMA8452Q has user selectable full scales of ±2g/±4g/±8g with high pass filtered data as well as non filtered data available real-time. The device can be configured to generate inertial wake-up interrupt signals from any combination of the configurable embedded functions allowing the MMA8452Q to monitor events and remain in a low power mode during periods of inactivity.

This board breaks out the ground, power, I2C and two external interrupt pins.

Note: If you are looking for the SparkFun Triple Axis Accelerometer Breakout with headers, it can be found here or in the Recommended Products below.

Get Started with the MMA8452Q Breakout Hookup Guide

Features

1.95 V to 3.6 V supply voltage

1.6 V to 3.6 V interface voltage

±2g/±4g/±8g dynamically selectable full-scale

Output Data Rates (ODR) from 1.56 Hz to 800 Hz

12-bit and 8-bit digital output

I2C digital output interface (operates to 2.25 MHz with 4.7 kΩ pullup)

Two programmable interrupt pins for six interrupt sources

Three embedded channels of motion detection

Orientation (Portrait/Landscape) detection with set hysteresis

High Pass Filter Data available real-time

Current Consumption: 6 μA – 165 μA

https://www.sparkfun.com/products/12756
sparkfun 3-axi breakout power i2c voltage accelerometer mma8452q sensor
D-20
1/1
9 Degrees of Freedom - Razor IMU - AHRS compatible

Replacement:SEN-10736. This board has been updated to use the HMC5883L instead of the end-of-life HMC5843. This page is for reference only.

The 9DOF Razor IMU incorporates three sensors - an ITG-3200 (triple-axis gyro), ADXL345 (triple-axis accelerometer), and HMC5843 (triple-axis magnetometer) - to give you nine degrees of inertial measurement. The outputs of all sensors are processed by an on-board ATmega328 and output over a serial interface. With the work of Jordi Munoz and many others, the 9DOF Razor can become an Attitude and Heading Reference System. This enables the 9DOF Razor to become a very powerful control mechanism for UAVs, autonomous vehicles and image stabilization systems.

The board comes programmed with the 8MHz Arduino bootloader and example firmware that tests the outputs of all the sensors. Simply connect to the serial TX and RX pins with a 3.3V FTDI Basic Breakout, open a terminal program to 38400bps and a menu will guide you through testing the sensors. You can use the Arduino IDE to program your code onto the 9DOF, just select the ‘Arduino Pro or Pro Mini (3.3v, 8mhz) w/ATmega328’ as your board.

The 9DOF operates at 3.3VDC; any power supplied to the white JST connector will be regulated down to this operating voltage - our LiPo batteries are an excellent power supply choice. The output header is designed to mate with our 3.3V FTDI Basic Breakout board, so you can easily connect the board to a computer’s USB port. Or, for a wireless solution, it can be connected to the Bluetooth Mate or an XBee Explorer.

Having a hard time picking an IMU? Our Accelerometer, Gyro, and IMU Buying Guide might help!

Note: This product is a collaboration with Jordi Munoz of 3d Robotics. A portion of each sales goes back to them for product support and continued development.

Note: We found these in inventory and they work fine but we’re no longer making them. We’ll be selling them at a discount for a limited time but when they’re gone, they’re gone!

Replaces:SEN-09623

Features

9 Degrees of Freedom on a single, flat board:

ITG-3200 - triple-axis digital-output gyroscope

ADXL345 - 13-bit resolution, ±16g, triple-axis accelerometer

HMC5843 - triple-axis, digital magnetometer

ITG-3200 - triple-axis digital-output gyroscope

ADXL345 - 13-bit resolution, ±16g, triple-axis accelerometer

HMC5843 - triple-axis, digital magnetometer

Outputs of all sensors processed by on-board ATmega328 and sent out via a serial stream

Autorun feature and help menu integrated into the example firmware

Output pins match up with FTDI Basic Breakout, Bluetooth Mate, XBee Explorer

3.5-16VDC input

ON-OFF control switch and reset switch

1.60 x 1.10 “ (40.64 x 27.94 mm)

https://www.sparkfun.com/products/10125
sparkfun sensor board 9dof breakout
D-20
1/1
Adafruit LIS3DH Triple-Axis Accelerometer (+-2g/4g/8g/16g)

The LIS3DH is a very popular low power triple-axis accelerometer. It's low-cost, but has just about every 'extra' you'd want in an accelerometer:

Three axis sensing, 10-bit precision

±2g/±4g/±8g/±16g selectable scaling

Both I2C (2 possible addresses) and SPI interface options

Interrupt output

Multiple data rate options 1 Hz to 5Khz

As low as 2uA current draw (just the chip itself, not including any supporting circuitry)

Tap, Double-tap, orientation & freefall detection

3 additional ADC inputs you can read over I2C

To all that, we've also added:

3.3V regulator + level shifting, so you can safely use with any Arduino or microcontroller without the need for an external level shifter!

We kept seeing this accelerometer in teardowns of commercial products and figured that if it's the most-commonly used accelerometer, its worth having a breakout board!

This sensor communicates over I2C or SPI (our library code supports both) so you can share it with a bunch of other sensors on the same I2C bus. There's an address selection pin so you can have two accelerometers share an I2C bus.

To get you going fast, we spun up a breakout board for this little guy. Since it's a 3V sensor, we add a low-dropout 3.3V regulator and level shifting circuitry on board. That means its perfectly safe for use with 3V or 5V power and logic. It's fully assembled and tested.  Comes with a bit of 0.1" standard header in case you want to use it with a breadboard or perfboard.  Two 2.5mm (0.1") mounting holes for easy attachment.

Check out our tutorial for all sorts of details, including pinouts, assembly, wiring, and more!

https://www.adafruit.com/product/2809
adafruit sensor motion accelerometer i2c board
D-20
0/3
8-channel Bi-directional Logic Level Converter - TXB0108

Because the Arduino (and Basic Stamp) are 5V devices, and most modern sensors, displays, flash cards and modes are 3.3V-only, many makers find that they need to perform level shifting/conversion to protect the 3.3V device from 5V.Although one can use resistors to make a divider, for high speed transfers, the resistors can add a lot of slew and cause havoc that is tough to debug. For that reason, we like using 4050/74LVX245 series and similar logic to perform proper level shifting. Only problem is that they are only good in one direction which can be a problem for some specialty bi-diectional interfaces and also makes wiring a little hairy.That's where this lovely chip, the TXB0108 bi-directional level converter comes in! This chip perform bidirectional level shifting from pretty much any voltage to any voltage and will auto-detect the direction. Only thing that doesn't work well with this chip is i2c (because it uses strong pullups which confuse auto-direction sensor). If you need to use pullups, you can but they should be at least 50K ohm - the ones internal to AVRs/Arduino are about 100K ohm so those are OK! Its a little more luxurious than a 74LVX245 but if you just don't want to worry about directional pins this is a life saver!Since this chip is a special bi-directional level shifter it does not have strong output pins that can drive LEDs or long cables, it's meant to sit on a breadboard between two logic chips! If you do not need instant bi-directional support, we suggest the 74LVX245 as below which has strong output drive.This breakout saves you from having to solder the very fine pitch packages that this chip comes with. We also add 0.1uF caps onto both sides and a 10K pull-up resistor on the output enable pin so you can use it right out of the box!

https://www.adafruit.com/product/395
adafruit breakout board expander converter voltage sensor arduino
E-01
1/1
Adafruit MiCS5524 CO, Alcohol and VOC Gas Sensor Breakout

Give your next sensor project a nose for gasses with the Adafruit MiCS-5524 Gas Sensor Breakout. This breakout makes it easy to use this nice sensor from SGX Sensortech. The MiCS-5524 is a robust MEMS sensor for indoor carbon monoxide and natural gas leakage detection, it's suitable also for indoor air quality monitoring; breath checker and early fire detection.

Please note: This sensor is sensitive to CO ( ~ 1 to 1000 ppm), Ammonia (~ 1 to 500 ppm), Ethanol (~ 10 to 500 ppm), H2 (~ 1 - 1000 ppm), and Methane / Propane / Iso-Butane (~ 1,000++ ppm). However, it can't tell you which gas it has detected. 

This breakout board is not for any safety, medical or finished product usage. We're selling it for hobby education & experimentation and don't guarantee it for any other purpose! All gas sensors require calibration for precision output.

Using it is easy: Power it with 5 VDC and read the analog voltage off of the output pin. When gasses are detected, the analog voltage will increase in proportion of detected gas. When powered, the heater draws about 25-35mA. You can use the EN pin to power it off (pull it high to 5V to turn off) to conserve energy. Just make sure to wait a second after turning the heater on to make sure its all heated before taking readings.

Each order comes with one assembled and tested MiCS-5524 breakout and a bit of header. You'll need to do some light soldering to attach the header on - or you can use just plain wires.

Check out the tutorial for files, example code, diagrams and more!

https://www.adafruit.com/product/3199
adafruit sensor gas breakout power voltage
E-04
1/1
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!

https://www.adafruit.com/product/2899
adafruit sensor light color photo i2c breakout
E-02
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

https://www.adafruit.com/product/439
adafruit sensor light color photo infrared i2c power
E-02
2/2
SparkFun RGB Light Sensor - ISL29125

If you’ve had ideas for a project that depends on the ability to sense different spectrums of visible light and react based on those measurements, the ISL29125 breakout board may be just what you need. The ISL29125 breakout board makes it very easy to sense and record the light intensity of the general red, green, and blue spectrums of visible light while rejecting IR from light sources. You can then use these color sensor readings for the purposes of logging and finding patterns, or creatively calculate and make control decisions in your electronic projects.

Each pin from the ISL29125 has been broken out to allow you to interface with it, SDA, SCL, 3.3V, GND, and even an optional INT pin is available for use. The ISL29125 Light Sensor operates at 3.3V but if you plan on using this chip with a 5V microcontroller make sure to use a logic level converter.

Features

Operating Voltage: 3.3V

Operating Current: 56µA

Selectable Range

I2C (SMBus compatible) Output

ADC Resolution 16 bits

SCL, SDA, INT, 3.3V, & GND Pins Broken Out

18.4mm x 17.2mm x 2.4mm (0.7" x 0.6" x 0.09")

https://www.sparkfun.com/products/12829
sparkfun imaging sensor breakout board converter
E-02
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)

https://www.adafruit.com/product/1384
adafruit sensor light color photo voltage breakout
E-02
2/2
QTR-8RC Reflectance Sensor Array

This sensor module has 8 IR LED/phototransistor pairs mounted on a 0.375" pitch, making it a great detector for a line-following robot. Pairs of LEDs are arranged in series to halve current consumption, and a MOSFET allows the LEDs to be turned off for additional sensing or power-savings options. Each sensor provides a separate digital I/O-measurable output.

Note: The QTR-8RC reflectance sensor array requires digital I/O lines to take readings. The similar QTR-8A reflectance sensor array is available with analog outputs, and the reflectance sensor is available individually as a QTR-1RC reflectance sensor or QTR-1A reflectance sensor.

Functional Description

The QTR-8RC reflectance sensor array is intended as a line sensor, but it can be used as a general-purpose proximity or reflectance sensor. The module is a convenient carrier for eight IR emitter and receiver (phototransistor) pairs evenly spaced at intervals of 0.375" (9.525 mm). To use a sensor, you must first charge the output node by applying a voltage to its OUT pin. You can then read the reflectance by withdrawing the externally supplied voltage and timing how long it takes the output voltage to decay due to the integrated phototransistor. Shorter decay time is an indication of greater reflection. This measurement approach has several advantages, especially when coupled with the ability of the QTR-8RC module to turn off LED power:

No analog-to-digital converter (ADC) is required

Improved sensitivity over voltage-divider analog output

Parallel reading of multiple sensors is possible with most microcontrollers

Parallel reading allows optimized use of LED power enable option

The outputs are all independent, but the LEDs are arranged in pairs to halve current consumption. The LEDs are controlled by a MOSFET with a gate normally pulled high, allowing the LEDs to be turned off by setting the MOSFET gate to a low voltage. Turning the LEDs off might be advantageous for limiting power consumption when the sensors are not in use or for varying the effective brightness of the LEDs through PWM control.

This sensor was designed to be used with the board parallel to the surface being sensed.

The LED current-limiting resistors for 5 V operation are arranged in two stages; this allows a simple bypass of one stage to enable operation at 3.3 V. The LED current is approximately 20–25 mA, making the total board consumption just under 100 mA. The schematic diagram of the module is shown below:

For a similar array with three sensors, consider our QTR-3RC reflectance sensor array. The sensors on the QTR-8RC are also available individually as the QTR-1RC reflectance sensor, and the QTR-L-1RC is an alternative designed to be used with the board perpendicular to the surface.

QTR sensor size comparison. Clockwise from top left: QTR-3RC, QTR-1RC, QTR-L-1RC, QTR-8RC.

Specifications

Dimensions: 2.95" x 0.5" x 0.125" (without header pins installed)

Operating voltage: 3.3-5.0 V

Supply current: 100 mA

Output format: 8 digital I/O-compatible signals that can be read as a timed high pulse

Optimal sensing distance: 0.125" (3 mm)

Maximum recommended sensing distance: 0.375" (9.5 mm)

Weight without header pins: 0.11 oz (3.09 g)

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

Interfacing the QTR-8RC Outputs to Digital I/O Lines

The QTR-8RC module has eight identical sensor outputs that, like the Parallax QTI, require a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as several dozen microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all 8 sensors. If lower-frequency sampling is sufficient, substantial power savings can be realized by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 100 mA to 10 mA.

Our Pololu AVR library provides functions that make it easy to use these sensors with our Orangutan robot controllers; please see the QTR Reflectance Sensors section of our library command reference for more information. We also have a Arduino library for these sensors.

Breaking the Module in Two

If you don’t need or cannot fit all eight sensors, you can break off two sensors and still use all 8 sensors as two separate modules, as shown below. The PCB can be scored from both sides along the perforation and then bent until it snaps apart. Each of the two resulting pieces will function as an independent line sensor.

Included Components

This module ships with a 25-pin 0.1" header strip and a 100 Ohm through-hole resistor as shown below.

You can break the header strip into smaller pieces and solder them onto your reflectance sensor array as desired, or you can solder wires directly to the unit or use a right-angle header strip for a more compact installation. The pins on the module are arranged so that they can all be accessed using either an 11×1 strip or an 8×2 strip.

The resistor is required to make the two-sensor array functional after the original eight-sensor array is broken into two pieces. This resistor is only needed once the board has been broken.

Solder the included resistor to the 2-sensor array piece as shown to make the separated piece functional.

How it works in detail

For more information about how this sensor works, see the “How it works in detail” section of the QTR-1RC product page.

People often buy this product together with:

https://www.pololu.com/product/961
pololu sensor led module voltage
E-02
1/1
SparkFun Ambient Light Sensor Breakout - TEMT6000

Basic breakout board for the TEMT6000 Ambient Light Sensor. Only what you need, nothing you don’t. Sensor acts like a transistor - the greater the incoming light, the higher the analog voltage on the signal pin.

https://www.sparkfun.com/products/8688
sparkfun imaging sensor breakout sparkfun voltage ambient light i2c light / imaging temt6000
E-02
1/1
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)

https://www.adafruit.com/product/1334
adafruit sensor light color photo i2c rgb led
E-02
1/2
MCP9808 High Accuracy I2C Temperature Sensor Breakout Board

This I2C digital temperature sensor is one of the more accurate/precise we've ever seen, with a typical accuracy of ±0.25°C over the sensor's -40°C to +125°C range and precision of +0.0625°C. They work great with any microcontroller using standard i2c. There are 3 address pins so you can connect up to 8 to a single I2C bus without address collisions. Best of all, a wide voltage range makes it usable with 2.7V to 5.5V logic!Unlike the DS18B20, this sensor does not come in through-hole package so we placed this small sensor on a breakout board PCB for easy use. The PCB includes mounting holes, and pull down resistors for the 3 address pins. We even wrote a lovely little tutorial and library that will work with Arduino or CircuitPython. You'll be up and running in 15 minutes or less.Some quick specs:

Simple I2C control

Up to 8 on a single I2C bus with adjustable address pins

0.25°C typical precision over -40°C to 125°C range (0.5°C guaranteed max from -20°C to 100°C)

0.0625°C resolution

2.7V to 5.5V power and logic voltage range

Operating Current: 200 μA (typical)

https://www.adafruit.com/product/1782
adafruit sensor temperature i2c breakout
E-04
0/1
SparkFun Luminosity Sensor Breakout - TSL2561

The TSL2561 SparkFun 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.

https://www.sparkfun.com/products/12055
sparkfun imaging sensor breakout sparkfun infrared
E-02
1/1
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.

https://www.adafruit.com/product/1777
adafruit sensor light color photo led arduino
E-02
1/1
Carbon Monoxide Sensor - MQ-7

This is a simple-to-use Carbon Monoxide (CO) sensor, suitable for sensing CO concentrations in the air. The MQ-7 can detect CO-gas concentrations anywhere from 20 to 2000ppm.

This sensor has a high sensitivity and fast response time. The sensor’s output is an analog resistance. The drive circuit is very simple; all you need to do is power the heater coil with 5V, add a load resistance, and connect the output to an ADC.

This sensor comes in a package similar to our MQ-3 alcohol sensor, and can be used with the breakout board below.

https://www.sparkfun.com/products/9403
sparkfun biometric sensor gas breakout power
E-04
2/2
MPL115A2 - I2C Barometric Pressure/Temperature Sensor

This pressure sensor from Freescale is a great low-cost sensing solution for measuring barometric pressure. At 1.5 hPa resolution, it's not as precise as our favorite pressure sensor, the BMx280 series, which has up to 0.03 hPa resolution so we don't suggest it as a precision altimeter. However, it's great for basic barometric pressure sensing. The sensor is soldered onto a PCB with 10K pull-up resistors on the I2C pins.This chip is good for use with power and logic voltages ranging from 2.4V to 5.5V so you can use it with your 3V or 5V microcontroller. There's a basic temperature sensor inside but there's no specifications in the datasheet so we're not sure how accurate it is.This chip looks and sounds a whole lot like the MPL3115A2 but this is the less precise version, best for barometric sensing onlyUsing the sensor is easy. For example, if you're using an Arduino, simply connect the VDD pin to the 5V voltage pin, GND to ground, SCL to I2C Clock (Analog 5 on an UNO) and SDA to I2C Data (Analog 4 on an UNO). Then download our MPL115A2 Arduino library and example code for temperature, pressure and basic altitude calculation. Install the library, and load the example sketch. Immediately you'll have the temperature, pressure and altitude data printed in the serial console.

https://www.adafruit.com/product/992
adafruit sensor barometric pressure temperature i2c
E-04
1/1
BMP180 Barometric Pressure/Temperature/Altitude Sensor- 5V ready

This precision sensor from Bosch is the best low-cost sensing solution for measuring barometric pressure and temperature. Because pressure changes with altitude you can also use it as an altimeter! The sensor is soldered onto a PCB with a 3.3V regulator, I2C level shifter and pull-up resistors on the I2C pins.The BMP180 is the next-generation of sensors from Bosch, and replaces the BMP085. The good news is that it is completely identical to the BMP085 in terms of firmware/software - you can use our BMP085 tutorial and any example code/libraries as a drop-in replacement. The XCLR pin is not physically present on the BMP180 so if you need to know that data is ready you will need to query the I2C bus.This board is 5V compliant - a 3.3V regulator and a i2c level shifter circuit is included so you can use this sensor safely with 5V logic and power.Using the sensor is easy. For example, if you're using an Arduino, simply connect the VIN pin to the 5V voltage pin, GND to ground, SCL to I2C Clock (Analog 5) and SDA to I2C Data (Analog 4). Then download our BMP085/BMP180 Arduino library and example code for temperature, pressure and altitude calculation. Install the library, and load the example sketch. Immediately you'll have precision temperature, pressure and altitude data. Our detailed tutorial has all the info you need including links to software and installation instructions. It includes more information about the BMP180 so you can understand the sensor in depth including how to properly calculate altitude based on sea-level barometric pressure.

BMP180 Barometric Pressure/Temperature/Altitude Sensor- 5V ready (4:40)

https://www.adafruit.com/product/1603
adafruit sensor barometric pressure i2c temperature regulator
E-04
1/1
Adafruit BMP280 I2C or SPI Barometric Pressure & Altitude Sensor

Bosch has stepped up their game with their new BMP280 sensor, an environmental sensor with temperature, barometric pressure that is the next generation upgrade to the BMP085/BMP180/BMP183. This sensor is great for all sorts of weather sensing and can even be used in both I2C and SPI!

This precision sensor from Bosch is the best low-cost, precision sensing solution for measuring barometric pressure with ±1 hPa absolute accuraccy, and temperature with ±1.0°C accuracy. Because pressure changes with altitude, and the pressure measurements are so good, you can also use it as an altimeter with  ±1 meter accuracy.

The BMP280 is the next-generation of sensors from Bosch, and is the upgrade to the BMP085/BMP180/BMP183 - with a low altitude noise of 0.25m and the same fast conversion time. It has the same specifications, but can use either I2C orSPI. For simple easy wiring, go with I2C. If you want to connect a bunch of sensors without worrying about I2C address collisions, go with SPI.

Nice sensor right? So we made it easy for you to get right into your next project. The surface-mount sensor is soldered onto a PCB and comes with a 3.3V regulator and level shifting so you can use it with a 3V or 5V logic microcontroller without worry. We even wrote up a nice tutorial with wiring diagrams, schematics, libraries and examples to get you running in 10 minutes!

And make sure to check the tutorial for example code for Arduino and CircuitPython, pinouts, assembly, wiring, downloads, and more!

https://www.adafruit.com/product/2651
adafruit sensor barometric pressure i2c spi temperature
E-04
1/1
Adafruit CCS811 Air Quality Sensor Breakout - VOC and eCO2

Breathe easy - we finally have an I2C VOC/eCO2 sensor in the Adafruit shop! Add air quality monitoring to your project and with an Adafruit CCS811 Air Quality Sensor Breakout. This sensor from AMS is a gas sensor that can detect a wide range of Volatile Organic Compounds (VOCs) and is intended for indoor air quality monitoring. When connected to your microcontroller (running our library code) it will return a Total Volatile Organic Compound (TVOC) reading and an equivalent carbon dioxide reading (eCO2) over I2C. There is also an onboard thermistor that can be used to calculate the local ambient temperature.

The CCS811 has a 'standard' hot-plate MOX sensor, as well as a small microcontroller that controls power to the plate, reads the analog voltage, and provides an I2C interface to read from.

This part will measure eCO2 (equivalent calculated carbon-dioxide) concentration within a range of 400 to 8192 parts per million (ppm), and TVOC (Total Volatile Organic Compound) concentration within a range of 0 to 1187 parts per billion (ppb). According to the fact sheet it can detect Alcohols, Aldehydes, Ketones, Organic Acids, Amines, Aliphatic and Aromatic Hydrocarbons. We include a 10K NTC thermistor with matching balancing resistor which can be read by the CCS811 to calculate approximate temperature.

Please note, this sensor, like all VOC/gas sensors, has variability and to get precise measurements you will want to calibrate it against known sources! That said, for general environmental sensors, it will give you a good idea of trends and comparisons.Also, AMS recommends that you run this sensor for 48 hours when you first receive it to "burn it in", and then 20 minutes in the desired mode every time the sensor is in use. This is because the sensitivity levels of the sensor will change during early use. Finally, this chip uses I2C clock stretching, and some microcontrollers/computers don't support that (e.g. Raspberry Pi)

The CCS811 has a configurable interrupt pin that can fire when a conversion is ready and/or when a reading crosses a user-settable threshold. The CCS811 supports multiple drive modes to take a measurement every 1 second, every 10 seconds, every 60 seconds, or every 250 milliseconds.

For your convenience we've pick-and-placed the sensor on a PCB with a 3.3V regulator and some level shifting so it can be easily used with your favorite 3.3V or 5V microcontroller.

We've also prepared software libraries to get you up and running in Arduino IDE or CircuitPython with just a few lines of code! Check out our tutorial for more information!

https://www.adafruit.com/product/3566
adafruit sensor gas i2c adafruit part
E-04
1/1
10K Precision Epoxy Thermistor - 3950 NTC

Need to measure something damp? This epoxy-coated precision 1% 10K thermistor is an inexpensive way to measure temperature in weather or liquids. The resistance in 25 °C is 10K (+- 1%). The resistance goes down as it gets warmer and goes up as it gets cooler. For specific temperature-to-resistance, check the lookup table.These are often used for air conditioners, water lines, and other places where they can get damp. The PVC coating of the wires is good up to 105 °C so this isn't good for very hot stuff.We even toss in an additional 1% 10K resistor which you can use as calibration or for a resistor divider.We have a great detailed tutorial on how thermistors work and how to use this one with both Arduino & CircuitPython!

https://www.adafruit.com/product/372
adafruit sensor temperature weather other arduino
E-04
1/1
CAP1188 - 8-Key Capacitive Touch Sensor Breakout - I2C or SPI

Add lots of touch sensors to your next microcontroller project with this easy-to-use 8-channel capacitive touch sensor breakout board, starring the CAP1188. This chip can handle up to 8 individual touch pads, and has a very nice feature that makes it stand out for us: it will light up the 8 onboard LEDs when the matching touch sensor fires to help you debug your sensor setup.The CAP1188 has support for both I2C and SPI, so it easy to use with any microcontroller. If you are using I2C, you can select one of 5 addresses, for a total of 40 capacitive touch pads on one I2C 2-wire bus. Using this chip is a lot easier than doing the capacitive sensing with analog inputs: it handles all the filtering for you and can be configured for more/less sensitivity.Comes with a fully assembled board, and a stick of 0.1" header so you can plug it into a breadboard. For contacts, we suggest using copper foil, then solder a wire that connects from the foil pad to the breakout.Getting started is a breeze with our Arduino library and tutorial. You'll be up and running in a few minutes, and if you are using another microcontroller, its easy to port our code.

CAP1188 - 8-Key Capacitive Touch Sensor Breakout - I2C or SPI (1:35)

https://www.adafruit.com/product/1602
adafruit sensor touch capacitive i2c
E-05
0/1
Standalone Toggle Capacitive Touch Sensor Breakout - AT42QT1012

This breakout board is the simplest way to create a project with a single "toggle" capacitive touch sensor. No microcontroller is required here - just power with 1.8 to 5.5VDC and touch the pad to activate the sensor.This sensor is a toggle output type: touch-on then touch-off. That means that when a capacitive load is detected (e.g. a person touches the sensor-pad area) the red LED will alternate turning off and the output pin will go high or low, respectively. This sensor is good for a project where you want to activate something on the first touch, then deactivate it when touching again, like a switch. You can also solder a wire to the middle pad and create your own capacitive pad if the built-in one isn't suited to your project.If you want to save power, the LED can be disconnected from the output pin (cut the trace between the jumper marked as such). We designed this breakout to have infinite time-out. The chip does support having the sensor time-out, so for example, if something is turned on, it will eventually turn off on its own. If you'd like to use this mode, cut the TIMER jumper and then connect a resistor/capacitor to the TIME pin. Check the datasheet for how to calculate the TIME pin to match your desired timeout.Comes with a fully assembled board, and a small stick of 0.1" header so you can solder and plug it into a breadboard. For additional contacts, we suggest using copper foil, then solder a wire that connects from the foil pad to the breakout.The datasheet has many details on sensitivity, power usage, etc.

Standalone Toggle Capacitive Touch Sensor Breakout (11:10)

https://www.adafruit.com/product/1375
adafruit sensor touch capacitive breakout
E-05
1/1
Standalone Momentary Capacitive Touch Sensor Breakout - AT42QT1010

This breakout board is the simplest way to create a project with a single "momentary" capacitive touch sensor. No microcontroller is required here - just power with 1.8 to 5.5VDC and touch the pad to activate the sensor.When a capacitive load is detected (e.g. a person touches the sensor-pad area) the red LED lights up and the output pin goes high. You can also solder a wire to the middle pad and create your own capacitive pad if the built-in one isn't suited to your project.If you want to save power, the LED can be disconnected from the output pin (cut the trace between the jumper marked as such). We designed this breakout to have the more-responsive "fast mode" which draws about 0.5mA. If you need ultra-low (~50uA) power usage, the mode jumper can be cut on one side & soldered closed on the other to fix it into that mode. Check the datasheet for specific power usage measurements.Comes with a fully assembled board, and a small stick of 0.1" header so you can solder and plug it into a breadboard. For additional contacts, we suggest using copper foil, then solder a wire that connects from the foil pad to the breakout.The datasheet has many details on sensitivity, power usage, etc.

Standalone Momentary Capacitive Touch Sensor Breakout (11:10)

https://www.adafruit.com/product/1374
adafruit sensor touch capacitive breakout power
E-05
2/2
Adafruit DS3231 Precision RTC Breakout

The datasheet for the DS3231 explains that this part is an "Extremely Accurate I²C-Integrated RTC/TCXO/Crystal". And, hey, it does exactly what it says on the tin! This Real Time Clock (RTC) is the most precise you can get in a small, low power package.

Most RTCs use an external 32kHz timing crystal that is used to keep time with low current draw. And that's all well and good, but those crystals have slight drift, particularly when the temperature changes (the temperature changes the oscillation frequency very very very slightly but it does add up!) This RTC is in a beefy package because the crystal is inside the chip! And right next to the integrated crystal is a temperature sensor. That sensor compensates for the frequency changes by adding or removing clock ticks so that the timekeeping stays on schedule.

This is the finest RTC you can get, and now we have it in a compact, breadboard-friendly breakout. With a coin cell plugged into the back, you can get years of precision timekeeping, even when main power is lost. Great for datalogging and clocks, or anything where you need to really know the time.

Comes as a fully assembled and tested breakout plus a small piece of header. You can solder header in to plug it into a breadboard, or solder wires directly.

A coin cell is required to use the battery-backup capabilities! We don't include one by default, to make shipping easier for those abroad, but we do stock them so pick one up or use any CR1220 you have handy.

Check out our detailed tutorial for pinouts, assembly, wiring & code for both Arduino and CircuitPython, and more!

https://www.adafruit.com/product/3013
adafruit breakout board clock temperature breakout power sensor
E-06
1/1
QTR-1RC Reflectance Sensor (2-Pack)

The QTR-1RC reflectance sensor carries a single infrared LED and phototransistor pair in an inexpensive, tiny 0.5" x 0.3" module that can be mounted almost anywhere and is great for edge detection and line following. The output is designed to be measured by a digital I/O line. This sensor is sold in packs of two units.

Note: The QTR-1RC reflectance sensor requires a digital I/O line to take readings. The similar QTR-1A reflectance sensor is available with an analog output.

Functional description

The Pololu QTR-1RC reflectance sensor carries a single infrared (IR) LED and phototransistor pair. To use the sensor, you must first charge the output node by applying a voltage to the OUT pin. You can then read the reflectance by withdrawing the externally supplied voltage and timing how long it takes the output voltage to decay due to the integrated phototransistor. Shorter decay time is an indication of greater reflection. This measurement approach has several advantages, especially when multiple units are used:

No analog-to-digital converter (ADC) is required

Improved sensitivity over voltage-divider analog output

Parallel reading of multiple sensors is possible with most microcontrollers

The LED current-limiting resistor is set to deliver approximately 17 mA to the LED when VIN is 5 V. The current requirement can be met by some microcontroller I/O lines, allowing the sensor to be powered up and down through an I/O line to conserve power.

This sensor was designed to be used with the board parallel to the surface being sensed. Because of its small size, multiple units can easily be arranged to fit various applications such as line sensing and proximity/edge detection.

For a line sensor with eight of these units arranged in a row, please see the QTR-8RC reflectance sensor array; for a similar array of three slightly different sensor components, see the QTR-3RC. For a similar, smaller sensor with longer range, and intended for use with the board perpendicular to the surface, please see the QTR-L-1RC reflectance sensor.

QTR sensor size comparison. Clockwise from top left: QTR-3RC, QTR-1RC, QTR-L-1RC, QTR-8RC.

Specifications

Dimensions: 0.3" x 0.5" x 0.1" (without optional header pins installed)

Operating voltage: 5.0 V

Supply current: 17 mA

Output format: digital I/O-compatible signal that can be read as a timed high pulse

Optimal sensing distance: 0.125" (3 mm)

Maximum recommended sensing distance: 0.375" (9.5 mm)

Weight without header pins: 0.008 oz (0.2 g)

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

Interfacing the QTR-1RC output to a digital I/O line

Like the Parallax QTI, this sensor requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as several dozen microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling.

Our Pololu AVR library provides functions that make it easy to use these sensors with our Orangutan robot controllers; please see the QTR Reflectance Sensors section of our library command reference for more information. We also have a Arduino library for these sensors.

Included components

This module has a single mounting hole intended for a #2 screw (not included); if this mounting hole is not needed, this portion of the PCB can be ground off to make the unit even smaller. Each pack of two reflectance sensors includes sets of straight male header strips and right-angle male header strips, which allow you to mount them in the orientation of your choice (note: the header pins might ship as 1×6 strips that you can break into two 1×3 pieces). You can also solder wires, such as ribbon cable, directly to the pads for the most compact installation.

How it works in detail

With only four components (or five, if you count the coupled IR LED and phototransistor separately), the operation of this sensor is relatively basic. The emitter side is just an IR LED with an appropriate current-limiting resistor. The light from the emitter leaves the sensor, reflects off a nearby surface, and returns to the detector.

The detector side is a resistor-capacitor (RC) circuit, where the resistance comes from the phototransistor and is a measure of the incident infrared light, and the decay time is proportional to the resistance. The first step of the sensor-reading process—driving the sensor output high—discharges the integrated 10 nF capacitor and puts both sides at the same voltage (VIN). Alternatively, you can think of this as “charging the output node”, and it is functionally equivalent to charging a capacitor with one side connected to ground. Once you are no longer supplying an external voltage to the output pin, the capacitor can slowly charge through the phototransistor, with the rate of charging being a function of the phototransistor’s resistance (which is in turn a function of the incident IR). As the capacitor charges, the voltage on the output side drops, eventually reaching zero when the capacitor is fully charged. Alternatively, you can think of this as “discharging the output node”, and it is functionally equivalent to discharging a capacitor with one side connected to ground.

The 220 Ω resistor on the OUT line serves to limit the current flow, making it possible for a microcontroller output to safely charge the output node prior to each reading. It has very little effect on the sensor output.

QTR-1RC and QTR-L-1RC reflectance sensor schematic diagram.

QTR-1RC output (yellow) when 1/8" above a white/black interface and microcontroller timing of that output (blue).

People often buy this product together with:

https://www.pololu.com/product/2459
pololu sensor voltage led pack
E-09
2/2
TCA9548A I2C Multiplexer

You just found the perfect I2C sensor, and you want to wire up two or three or more of them to your Arduino when you realize "Uh oh, this chip has a fixed I2C address, and from what I know about I2C, you cannot have two devices with the same address on the same SDA/SCL pins!" Are you out of luck? You would be, if you didn't have this ultra-cool TCA9548A 1-to-8 I2C multiplexer!

Finally, a way to get up to 8 same-address I2C devices hooked up to one microcontroller - this multiplexer acts as a gatekeeper, shuttling the commands to the selected set of I2C pins with your command.

Using it is fairly straight-forward: the multiplexer itself is on I2C address 0x70 (but can be adjusted from 0x70 to 0x77) and you simply write a single byte with the desired multiplexed output number to that port, and bam - any future I2C packets will get sent to that port. In theory, you could have 8 of these multiplexers on each of 0x70-0x77 addresses in order to control 64 of the same-I2C-addressed-part.

Like all Adafruit breakouts, we put this nice chip on a breakout for you so you can use it on a breadboard with capacitors, and pullups and pulldowns to make usage a snap. Some header is required and once soldered in you can plug it into a solderless-breadboard. The chip itself is 3V and 5V compliant so you can use it with any logic level.

We even wrote up a nice tutorial with wiring diagrams, schematics and examples to get you running in 10 minutes!

https://www.adafruit.com/product/2717
adafruit breakout board expander i2c breakout sensor part
E-11
4/4
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! 

https://www.adafruit.com/product/3397
adafruit sensor liquid flow light voltage relay
E-12
3/3
Liquid Flow Meter - Plastic 1/2" NPS Threaded

Measure liquid/water flow for your solar, computer cooling, or gardening project using this handy basic flow meter. This sensor sit in line with your water line, and uses a pinwheel sensor to measure how much liquid has moved through it. The pinwheel has a little magnet attached, and there's a hall effect magnetic sensor on the other side of the plastic tube that can measure how many spins the pinwheel has made through the plastic wall. This method allows the sensor to stay safe and dry.The sensor comes with three wires: red (5-24VDC power), black (ground) and yellow (Hall effect pulse output). By counting the pulses from the output of the sensor, you can easily track fluid movement: each pulse is approximately 2.25 milliliters. Note this isn't a precision sensor, and the pulse rate does vary a bit depending on the flow rate, fluid pressure and sensor orientation. It will need careful calibration if better than 10% precision is required. However, its great for basic measurement tasks!We have an example Arduino sketch that can be used to quickly test the sensor - it will calculate the approximate quantity of fluid in liters and display on an LCD or the serial monitor.

https://www.adafruit.com/product/828
adafruit sensor liquid flow lcd display
E-13
2/2
Mesh-protected Weather-proof Temperature/Humidity Sensor - SHT10

Take your next ourdoor sensor project to the next level with a SHT-10 based temperature/humidity sensor. The sensor includes a dual-use sensor module from Sensiron in a sintered metal mesh encasing. The casing is weatherproof and will keep water from seeping into the body of the sensor and damaging it, but allows air to pass through so that it can measure the humidity outside. While it is designed to be submersible in water, it's always best to avoid long-term (over 1 hour at a time) submersion, and it obviously would only give you temperature readings. For that, our metal-cased temperature sensors would be better! This sensor is best for simply placing outside for exterior weather sensing.Humidity readings have 4.5% precision, temperature is 0.5% precision. A microcontroller is required to interface. The sensor is not washed after reflow and is rehydrated according to datasheet requirements.The sensor is essentially just a Sensiron SHT-10 with the 4 data/power wires brought out so any SHT-1X code for a microcontroller will work. The sensor works with 3 or 5V logic. The 1 meter long cable has four wires: Red = VCC (3-5VDC), Black or Green = Ground, Yellow = Clock, Blue = Data. For Arduino, there's a handy Sensiron library with example. For Propeller, there's an SHT1X sensor object. Don't forget to connect a 10K resistor from the blue Data line to VCC.

Soil Temperature/Moisture Sensor (8:52)

https://www.adafruit.com/product/1298
adafruit sensor humidity temperature weather
E-14
2/2
Waterproof DS18B20 Digital temperature sensor + extras

This is a pre-wired and waterproofed version of the DS18B20 sensor. Handy for when you need to measure something far away, or in wet conditions. While the sensor is good up to 125°C the cable is jacketed in PVC so we suggest keeping it under 100°C. Because they are digital, you don't get any signal degradation even over long distances! These 1-wire digital temperature sensors are fairly precise (±0.5°C over much of the range) and can give up to 12 bits of precision from the onboard digital-to-analog converter. They work great with any microcontroller using a single digital pin, and you can even connect multiple ones to the same pin, each one has a unique 64-bit ID burned in at the factory to differentiate them. Usable with 3.0-5.0V systems.The only downside is they use the Dallas 1-Wire protocol, which is somewhat complex, and requires a bunch of code to parse out the communication. If you want something really simple, and you have an analog input pin, the TMP36 is trivial to get going.We toss in a 4.7k resistor, which is required as a pullup from the DATA to VCC line when using the sensor. We don't have a detailed tutorial up yet but you can get started by using the Dallas Temperature Control Arduino library which requires also the OneWire Library.

https://www.adafruit.com/product/381
adafruit sensor temperature cable converter
E-14
1/1
Magnetic contact switch (door sensor)

This sensor is essentially a reed switch, encased in an ABS plastic shell. Normally the reed is 'open' (no connection between the two wires). The other half is a magnet. When the magnet is less than 13mm (0.5") away, the reed switch closes. They're often used to detect when a door or drawer is open, which is why they have mounting tabs and screws. You can also pick up some double-sided foam tape from a hardware store to mount these, that works well without needing screws.

https://www.adafruit.com/product/375
adafruit sensor proximity switch other
E-15
1/1
PIR (motion) sensor

PIR sensors are used to detect motion from pets/humanoids from about 20 feet away (possibly works on zombies, not guaranteed). This one has an adjustable delay before firing (approx 2-4 seconds), adjustable sensitivity and we include a 1 foot (30 cm) cable with a socket so you can easily reposition the sensor or mount it using the two holes on either side.

Runs on 5V-12V power (if you need to run it off of 3V you can do that by bypassing the regulator, but that means doing a bit of soldering). Digital signal output is 3.3V high/low. Sensing range is about 7 meters (120 degree cone).For a full tutorial with wiring diagrams, CircuitPython and Arduino code examples and project ideas, PIR sensor tutorial page!

https://www.adafruit.com/product/189
adafruit sensor proximity motion socket cable
E-19
1/1
PIR Motion Sensor (JST)

This is a simple to use motion sensor. Power it up and wait 1-2 seconds for the sensor to get a snapshot of the still room. If anything moves after that period, the ‘alarm’ pin will go low.

This unit works great from 5 to 12V (datasheet shows 12V). You can also install a jumper wire past the 5V regulator on board to make this unit work at 3.3V. Sensor uses 1.6mA@3.3V.

The alarm pin is an open collector meaning you will need a pull up resistor on the alarm pin. The open drain setup allows multiple motion sensors to be connected on a single input pin. If any of the motion sensors go off, the input pin will be pulled low.

We’ve finally updated the connector! Gone is the old “odd” connector, now you will find a common 3-pin JST! This makes the PIR Sensor much more accessible for whatever your project may need. Red = Power, White = Ground, and Black = Alarm.

https://www.sparkfun.com/products/13285
sparkfun proximity sensor motion connector power infrared jst passive infrared pir security
E-19
1/1
LIDAR-Lite

This is the LIDAR Lite, a compact high performance optical distance measurement sensor from PulsedLight. The LIDAR Lite is ideal when used in drone, robot, or unmanned vehicle situations where you need a reliable and powerful proximity sensor but don’t possess a lot of space. All you need to communicate with this sensor is a standard I2C or PWM interface and the LIDAR Lite, with its range of up to 40 meters, will be yours to command!

Each LIDAR Lite features an edge emitting, 905nm (75um, 1 watt, 4 mrad, 14mm optic), single stripe laser transmitter and a surface mount PIN, 3° FOV with 14mm optics receiver. The LIDAR Lite operates between 4.7 - 5.5VDC with a max of 6V DC and has a current consumption rate of <100mA at continuous operation. On top of everything else, the LIDAR Lite has an acquisition time of only 0.02 seconds or less and can be interfaced via I2C or PWM.

Note: The LIDAR Lite is designated as Class 1 during all procedures of operation, however operating the sensor without its optics or housing or making modifications to the housing can result in direct exposure to laser radiation and the risk of permanent eye damage. Direct eye contact should be avoided and under no circumstances should you ever stare straight into the emitter.

https://www.sparkfun.com/products/retired/13167
sparkfun proximity power pwm i2c dc garmin laser lidar lidar-lite sensor v3
E-20
1/1
LIDAR-Lite v2

This is the LIDAR-Lite v2, a compact high performance optical distance measurement sensor from PulsedLight. The LIDAR-Lite “Blue Label” is ideal when used in drone, robot, or unmanned vehicle situations where you need a reliable and powerful proximity sensor but don’t possess a lot of space. All you need to communicate with this sensor is a standard I2C or PWM interface. With everything connected the LIDAR-Lite v2, with its range of up to 40 meters, will be yours to command!

Each LIDAR-Lite v2 features an edge emitting, 905nm (75um, 1 watt, 4 mrad, 14mm optic), single stripe laser transmitter and a surface mount PIN, 3° FOV with 14mm optics receiver. The second version of the LIDAR-Lite still operates at 5V DC with a current consumption rate of <100mA at continuous operation. On top of everything else, the LIDAR-Lite has an acquisition time of only 0.02 seconds or less and can be interfaced via I2C or PWM.

The LIDAR-Lite v2 has received a number of upgrades from the previous version. With the implementation of a new signal processing architecture, LIDAR-Lite v2 can operate at measurement speeds of up to 500 readings per second offering greater resolution for scanning applications. Additionally, the LIDAR-Lite v2 has had its I2C communications improved to operate at 100 kbits/s or 400 kbits/s with you, the user, able to assign your own addressing! Just in case you are wondering: yes, the LIDAR-Lite v2 is compatible with its previous version in all primary functions and their compatibility will extend into the next version and beyond.

Note: With Garmin® recently acquiring PulsedLight® the LIDAR-Lite v2 has been marked EOL. We are currently waiting on word about the next exciting product these two companies create. We will come back with additional information once we obtain it.

Note: The LIDAR Lite is designated as Class 1 during all procedures of operation, however operating the sensor without its optics or housing or making modifications to the housing can result in direct exposure to laser radiation and the risk of permanent eye damage. Direct eye contact should be avoided and under no circumstances should you ever stare straight into the emitter.

https://www.sparkfun.com/products/retired/13680
sparkfun proximity power pwm i2c dc garmin laser lidar lidar-lite sensor v3
E-20
1/1
Knit Conductive Fabric - Silver 20cm square

This knit conductive fabric is plated with real Silver and super luxe! Use small pieces on the tips of gloves or in any soft circuit situation where you need a bit of stretch. This highly conductive fabric has a resistance of less than 1 ohm per foot in any direction across the textile. It can be used to make soft keypads and capacitive touch sensors, as well as soft "squeeze" switches. Great for use with FLORA.Sold as a 20cm x 20cm piece (minimum dimension)Use a dry iron on medium. Dry cleaning recommended. Do not use steam! Discoloration can occur.

Knit Conductive Fabric - Silver 20cm square (11:35)

https://www.adafruit.com/product/1167
adafruit wearable material fabric flora capacitive sensor touch
F-07
1/1
Eeonyx Stretchy Variable Resistance Sensor Fabric - LTT-SLPA-20K

Soft and stretchy, this Eeonyx Stretchy Variable Resistance Sensor fabric is great for making soft sensors or wearables that need to adjust and move. This is a bidirectionally stretchy nylon+spandex fabric coated with a long-lasting conductive coating that changes resistance when you pull on it!

It's perfect for making stretch or strain sensors, by measuring the resistance change from one end of the fabric to the other - you'll need a resistive divider and analog-reading microcontroller. Each order comes with one sheet of 12"x13" inch / 33 x 30cm fabric with a nominal 0.5mm thickness. The fabric as a soft hand, and is easy to stitch, sew, or serge. Each sheet has a resting 20K-ohm/square inch surface resistivity and decreases to maybe 1/2 that when stretched. It has been tested up to 30 washes with no appreciable change in resistivity.

https://www.adafruit.com/product/3669
adafruit wearable material fabric sensor other
F-07
1/1
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

https://www.sparkfun.com/products/8464
sparkfun lilypad sensor light wearable development
F-08
1/1
LilyPad Slide Switch

This is a simple slide switch for the LilyPad. Use it as a simple ON/OFF switch, or to control LEDs, buzzers, sensors, etc. The swtiches on each board are rated for 4 volts at 300mA, but will work at 5 volts with a reduction in current.

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

7.75x18.1mm

Thin 0.8mm PCB

https://www.sparkfun.com/products/9350
sparkfun lilypad switch board sensor wearable
F-08
1/1
LilyPad Temperature Sensor

Detecting temperature changes has never been easier. The MCP9700 is a small thermistor type temperature sensor. This sensor will output 0.5V at 0 degrees C, 0.75V at 25 C, and 10mV per degree C. Doing an analog to digital conversion on the signal line will allow you to establish the local ambient temperature. Detect physical touch based on body heat and ambient conditions with this small sensor.

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.

Get Started with the LilyPad Temperature Sensor Guide

Features

20mm outer diameter

Thin 0.8mm PCB

https://www.sparkfun.com/products/8777
sparkfun lilypad sensor temperature wearable development e-textile sew
F-08
1/1
VL53L0X Time-of-Flight Distance Sensor Carrier with Voltage Regulator, 200cm Max

This sensor is a carrier/breakout board for ST’s VL53L0X laser-ranging sensor, which measures the range to a target object up to 2 m away. The VL53L0X 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 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.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 VL53L0X from ST Microelectronics is a time-of-flight ranging system integrated into a compact module. This board is a carrier for the VL53L0X, so we recommend careful reading of the VL53L0X datasheet (1MB pdf) before using this product.

The VL53L0 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, so it can be considered a tiny, self-contained lidar system. This time-of-flight (TOF) measurement enables it to accurately determine the absolute distance to a target without the object’s reflectance greatly influencing the measurement. The sensor can report distances of up to 2 m (6.6 ft) with 1 mm resolution, but its effective range and accuracy (noise) depend heavily on ambient conditions and target characteristics like reflectance and size, as well as the sensor configuration. (The sensor’s accuracy is specified to range from ±3% at best to over ±10% in less optimal conditions.)

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 VL53L0X 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 VL53L0X, which 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 VL53L0X, as shown in the product picture.

For for similar alternatives to this sensor, see our shorter-range 60 cm VL6180X carrier and longer-range 400 cm VL53L1X carrier. Both of these are physical drop-in replacements for the VL53L0X carrier, but they have different APIs, so software for the VL53L0X will need to be rewritten to work with the VL6180X or VL53L1X.

VL53L0X datasheet graph of typical ranging performance (in default mode).

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: 10 mA (typical average during active ranging)

Varies with configuration, target, and environment. Peak current can reach 40 mA.

Varies with configuration, target, and environment. Peak current can reach 40 mA.

Output format (I²C): 16-bit distance reading (in millimeters)

Distance measuring range: up to 2 m (6.6 ft); see the graph at the right for typical ranging performance.

Effective range depends on configuration, target, and environment.

The datasheet does not specify a minimum range, but in our experience, the effective limit is about 3 cm.

Effective range depends on configuration, target, and environment.

The datasheet does not specify a minimum range, but in our experience, the effective limit is about 3 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.

VL53L0X Time-of-Flight Distance Sensor Carrier with included header pins.

VL53L0X 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 VL53L0X 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 VL53L0X 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 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 VL53L0 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 VL53L0X 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 VL53L0X 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.

The I²C interface on the VL53L0X 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 VL53L0X. Instead, communication with the sensor is intended to be done through ST’s VL53L0X API (STSW-IMG005), a set of C functions that take care of the low-level interfacing. To use the VL53L0X, 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 VL53L0X, 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 VL53L0X and read the distance data through I²C. It also includes example sketches that show you how to use the library.

People often buy this product together with:

https://www.pololu.com/product/2490
pololu proximity sensor range finder finder sensor board voltage regulator
F10
6/6
QTRX-HD-01A Reflectance Sensor: 1-Channel, 5mm Wide, Analog Output, Low Current

sensors

size(mm)

output

max current

optimalrange

LED

board

1

5.0 × 20.0

analog

3.5 mA

5 mA

10 mm

This IR LED/phototransistor pair is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features a high-performance, low-current QTRX sensor with lenses.

Pinout diagram of the QTRX/QTRXL-HD-01A Reflectance Sensor Array.

QTRX-HD-01A Reflectance Sensor, front and back views.

QTRX/QTRXL-HD-01A Reflectance Sensor dimensions.

Dimensions: 5.0 × 20.0 × 4.4 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 1

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 5 mA

Output format: analog voltage (0 V to VCC)

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.25 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4401
pololu sensor array voltage led module
D-18
1/1
QTRX-HD-09A Reflectance Sensor Array: 9-Channel, 4mm Pitch, Analog Output, Low Current

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

4 mm × 9

37.0 × 20.0

analog

3.5 mA

22 mA

10 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage and separate controls for the odd and even emitters. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 40 mm. This version features high-performance, low-current QTRX sensors with lenses.

Pinout diagram of a QTRX-HD-xA Reflectance Sensor Array.

QTRX-HD-09A Reflectance Sensor Array, front and back views.

QTRX-HD-09A Reflectance Sensor Array, front and back views.

Dimensions: 37.0 × 20.0 × 3.0 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 9

Sensor pitch: 4 mm

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 22 mA

Output format: analog voltages (0 V to VCC)

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 40 mm

Weight: 2.1 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4409
pololu sensor array voltage led
D-18
1/1
QTRX-MD-05RC Reflectance Sensor Array: 5-Channel, 8mm Pitch, RC Output, Low Current

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

8 mm × 5

37.0 × 20.0

RC (digital)

3.5 mA

14 mA

10 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 40 mm. This version features high-performance, low-current QTRX sensors with lenses.

Pinout diagram of a QTRX-MD-xRC Reflectance Sensor Array.

QTRX-MD-05RC Reflectance Sensor Array, front and back views.

QTRX-MD-05RC Reflectance Sensor Array dimensions.

Dimensions: 37.0 × 20.0 × 3.0 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 5

Sensor pitch: 8 mm

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 14 mA

Output format: digital I/O-compatible signals that can be read in parallel as timed high pulses

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 40 mm

Weight: 1.9 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4345
pololu sensor array led voltage
D-18
1/1
QTR-HD-01A Reflectance Sensor: 1-Channel, 5mm Wide, Analog Output

sensors

size(mm)

output

max current

optimalrange

LED

board

1

5.0 × 20.0

analog

30 mA

32 mA

5 mm

This IR LED/phototransistor pair is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features a traditional-style QTR sensor without lenses.

Pinout diagram of the QTR-HD-01A Reflectance Sensor Array.

QTR-HD-01A Reflectance Sensor, front and back views.

QTR-HD-01A Reflectance Sensor dimensions.

Dimensions: 5.0 × 20.0 × 3.9 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTR

Sensor count: 1

Full-brightness LED current: 30 mA (independent of supply voltage)

Max board current: 32 mA

Output format: analog voltage (0 V to VCC)

Optimal sensing distance: 5 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.25 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

People often buy this product together with:

https://www.pololu.com/product/4201
pololu sensor array voltage led module
D-18
1/1
QTR-HD-01RC Reflectance Sensor: 1-Channel, 5mm Wide, RC Output

sensors

size(mm)

output

max current

optimalrange

LED

board

1

5.0 × 20.0

RC (digital)

30 mA

32 mA

5 mm

This IR LED/phototransistor pair is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features a traditional-style QTR sensor without lenses.

Pinout diagram of the QTR-HD-01RC Reflectance Sensor Array.

QTR-HD-01RC Reflectance Sensor, front and back views.

QTR-HD-01RC Reflectance Sensor dimensions.

Dimensions: 5.0 × 20.0 × 3.9 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTR

Sensor count: 1

Full-brightness LED current: 30 mA (independent of supply voltage)

Max board current: 32 mA

Output format: digital I/O-compatible signal that can be read as a timed high pulse

Optimal sensing distance: 5 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.25 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

People often buy this product together with:

https://www.pololu.com/product/4101
pololu sensor array led voltage module
D-18
1/1
QTRX-HD-01RC Reflectance Sensor: 1-Channel, 5mm Wide, RC Output, Low Current

sensors

size(mm)

output

max current

optimalrange

LED

board

1

5.0 × 20.0

RC (digital)

3.5 mA

5 mA

10 mm

This IR LED/phototransistor pair is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features a high-performance, low-current QTRX sensor with lenses.

Pinout diagram of the QTRX/QTRXL-HD-01RC Reflectance Sensor Array.

QTRX-HD-01RC Reflectance Sensor, front and back views.

QTRX/QTRXL-HD-01RC Reflectance Sensor dimensions.

Dimensions: 5.0 × 20.0 × 4.4 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 1

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 5 mA

Output format: digital I/O-compatible signal that can be read as a timed high pulse

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.25 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4301
pololu sensor array led voltage module
D-18
1/1
QTRX-MD-02A Reflectance Sensor Array: 2-Channel, 8mm Pitch, Analog Output, Low Current

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

8 mm × 2

13.0 × 20.0

analog

3.5 mA

5 mA

10 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features high-performance, low-current QTRX sensors with lenses.

QTRX-MD-02A Reflectance Sensor Array dimensions.

Dimensions: 13.0 × 20.0 × 3.0 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 2

Sensor pitch: 8 mm

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 5 mA

Output format: analog voltages (0 V to VCC)

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.7 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4442
pololu sensor array voltage led module
D-18
1/1
QTRX-MD-02RC Reflectance Sensor Array: 2-Channel, 8mm Pitch, RC Output, Low Current

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

8 mm × 2

13.0 × 20.0

RC (digital)

3.5 mA

5 mA

10 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features high-performance, low-current QTRX sensors with lenses.

QTRX-MD-02RC Reflectance Sensor Array dimensions.

Dimensions: 13.0 × 20.0 × 3.0 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 2

Sensor pitch: 8 mm

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 5 mA

Output format: digital I/O-compatible signals that can be read in parallel as timed high pulses

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.7 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4342
pololu sensor array led voltage module
D-18
1/1
QTRX-HD-03A Reflectance Sensor Array: 3-Channel, 4mm Pitch, Analog Output, Low Current

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

4 mm × 3

13.0 × 20.0

analog

3.5 mA

9 mA

10 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features high-performance, low-current QTRX sensors with lenses.

QTRX-HD-03A Reflectance Sensor Array dimensions.

Dimensions: 13.0 × 20.0 × 3.0 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 3

Sensor pitch: 4 mm

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 9 mA

Output format: analog voltages (0 V to VCC)

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.8 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4403
pololu sensor array voltage led module
D-18
1/1
QTRX-HD-03RC Reflectance Sensor Array: 3-Channel, 4mm Pitch, RC Output, Low Current

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

4 mm × 3

13.0 × 20.0

RC (digital)

3.5 mA

9 mA

10 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features high-performance, low-current QTRX sensors with lenses.

QTRX-HD-03RC Reflectance Sensor Array dimensions.

Dimensions: 13.0 × 20.0 × 3.0 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTRX

Sensor count: 3

Sensor pitch: 4 mm

Full-brightness LED current: 3.5 mA (independent of supply voltage)

Max board current: 9 mA

Output format: digital I/O-compatible signals that can be read in parallel as timed high pulses

Optimal sensing distance: 10 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.8 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4303
pololu sensor array led voltage module
D-18
1/1
QTR-HD-03A Reflectance Sensor Array: 3-Channel, 4mm Pitch, Analog Output

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

4 mm × 3

13.0 × 20.0

analog

30 mA

62 mA

5 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features the traditional-style QTR sensors without lenses.

QTR-HD-03A Reflectance Sensor Array dimensions.

Dimensions: 13.0 × 20.0 × 2.5 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTR

Sensor count: 3

Sensor pitch: 4 mm

Full-brightness LED current: 30 mA (independent of supply voltage)

Max board current: 62 mA

Output format: analog voltages (0 V to VCC)

Optimal sensing distance: 5 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.8 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4203
pololu sensor array voltage led module
D-18
1/1
QTR-HD-03RC Reflectance Sensor Array: 3-Channel, 4mm Pitch, RC Output

pitch × sensors

size(mm)

output

max current

optimalrange

LED

board

4 mm × 3

13.0 × 20.0

RC (digital)

30 mA

62 mA

5 mm

This array of IR LED/phototransistor pairs is great for precisely identifying changes in reflectance (like line detection). It operates from 2.9 V to 5.5 V and offers dimmable brightness control independent of the supply voltage. In general, the closer the object, the higher the contrast between light and dark readings, but high-reflectance objects are generally detectable out to around 30 mm. This version features the traditional-style QTR sensors without lenses.

QTR-HD-03RC Reflectance Sensor Array dimensions.

Dimensions: 13.0 × 20.0 × 2.5 mm (see the dimension diagram (1MB pdf) for more details)

Operating voltage: 2.9 V to 5.5 V

Sensor type: QTR

Sensor count: 3

Sensor pitch: 4 mm

Full-brightness LED current: 30 mA (independent of supply voltage)

Max board current: 62 mA

Output format: digital I/O-compatible signals that can be read in parallel as timed high pulses

Optimal sensing distance: 5 mm

Maximum recommended sensing distance: 30 mm

Weight: 0.8 g

These reflectance sensors feature a linear array of infrared emitter/phototransistor pair modules in a high-density (4 mm pitch) or medium-density (8 mm pitch) arrangement, which makes them well suited for applications that require detection of changes in reflectivity. This change in reflectivity can be due to a color change at a fixed distance, such as when sensing a black line on a white background, as well as due to a change in the distance to or presence of an object in front of the sensor. A variety of sensor counts and densities is available so you can pick the ideal arrangement for your application. Since the outputs are all independent, you can connect just some of the channels to attain an irregular or non-standard sensor spacing.

Unlike our original QTR sensor modules, these units have integrated LED drivers that provide brightness control independent of the supply voltage, which can be anywhere from 2.9 V to 5.5 V, while enabling optional dimming to any of 32 possible brightness settings. For high-density (HD) modules with five or more sensors and medium-density (MD) modules with eleven or more sensors, there are separate controls for the odd-numbered and even-numbered LEDs, which gives you extra options for detecting light reflected at various angles. See the “Emitter control” section below for more information on using this feature.

Two different sensor options are available, denoted by “QTR” or “QTRX” in the product name. The “QTR” versions feature lower-cost sensor modules without lenses while the “QTRX” versions feature higher-performance sensor modules with lenses, which allow similar performance at a much lower IR LED current. You can see the two different sensor styles in the pictures below of the 4-channel modules:

QTR-HD-04A Reflectance Sensor Array.

QTRX-HD-04RC Reflectance Sensor Array.

We also have several single-channel modules with the “QTRXL” designator that offer extra-long range by using the QTRX-style sensor module with higher current through the emitter.

Each sensor option is available in two output types: an “A” version with analog voltage outputs between 0 V and VCC, and an “RC” version with outputs that can be read with a digital I/O line on a microcontroller by first setting the lines high and then releasing them and timing how long it takes them to read as low (typically anywhere from a few microseconds to a few milliseconds). The lower the output voltage or shorter the voltage decay time, the higher the reflectance. The following simplified schematic diagrams show the circuits for the individual channels:

Schematic diagrams of individual QTR sensor channels for A version (left) and RC version (right). This applies only to the newer QTRs with dimmable emitters.

Our Arduino library makes it easy to use these sensor modules with an Arduino or compatible controller by providing methods for controlling the emitters, calibrating the module, and reading the individual sensor values from either the A or RC versions. It also has a method specifically for line-following applications to compute the location of the line under the array.

Note: Unlike most of our products, these sensor arrays do not ship with any headers or connectors included, so you will need to supply your own or solder wires directly to the board to use it. See our selection of male headers, female headers, and pre-crimped wires for various connector options.

Each sensor on the A versions outputs its reflectance measurement as an analog voltage that can range from 0 V when the reflectance is very strong to VCC when the reflectance is very weak. The typical sequence for reading a sensor is:

Use a microcontroller’s analog-to-digital converter (ADC) to measure the voltages.

Use a comparator with an adjustable threshold to convert each analog voltage into a digital (i.e. black/white) signal that can be read by the digital I/O line of a microcontroller.

Connect each output directly to a digital I/O line of a microcontroller and rely upon its logic threshold.

This last method will work if you are able to get high reflectance from your white surface as depicted in the left image, but will probably fail if you have a lower-reflectance signal profile like the one on the right.

QTR-1A output 1/8" away from a spinning white disk with a black line on it.

QTR-1A output 3/8" away from a spinning white disk with a black line on it.

Each sensor on the RC versions requires a digital I/O line capable of driving the output line high and then measuring the time for the output voltage to decay. The typical sequence for reading a sensor is:

QTR-1RC output (yellow) when 1/8" above a black line and microcontroller timing of that output (blue).

QTR-1RC output (yellow) when 1/8" above a white surface and microcontroller timing of that output (blue).

Turn on IR LEDs (optional).

Set the I/O line to an output and drive it high.

Allow at least 10 μs for the sensor output to rise.

Make the I/O line an input (high impedance).

Measure the time for the voltage to decay by waiting for the I/O line to go low.

Turn off IR LEDs (optional).

These steps can typically be executed in parallel on multiple I/O lines.

With a strong reflectance, the decay time can be as low as a few microseconds; with no reflectance, the decay time can be up to a few milliseconds. The exact time of the decay depends on your microcontroller’s I/O line characteristics. Meaningful results can be available within 1 ms in typical cases (i.e. when not trying to measure subtle differences in low-reflectance scenarios), allowing up to 1 kHz sampling of all sensors. If lower-frequency sampling is sufficient, you can achieve substantial power savings by turning off the LEDs. For example, if a 100 Hz sampling rate is acceptable, the LEDs can be off 90% of the time, lowering average current consumption from 125 mA to 13 mA.

These reflectance sensor arrays maintain a constant current through their IR emitters, keeping the emitters’ brightness constant, independent of the supply voltage (2.9 V to 5.5 V). The emitters can be controlled with the board’s CTRL pins, and the details of the control depends on the array size and density:

HD units with 5 or more sensors and MD units with 11 or more sensors have two emitter control pins: CTRL ODD and CTRL EVEN. By default, these are connected together with a 1 kΩ resistor and pulled up, turning on all the emitters by default and allowing them to be controlled with a signal on either pin, but the CTRL ODD and CTRL EVEN pins can be driven separately for independent control of the odd-numbered and even-numbered emitters.

MD units with 3-10 sensors also have two emitter control pins since these are made by only populating every other sensor on an HD board, but only the CTRL ODD pin will have an effect on these versions (it is not possible to independently control alternate emitters).

HD units with 4 or fewer sensors and MD units with 2 or fewer sensors have a single CTRL pin that controls all of the emitters.

Driving a CTRL pin low for at least 1 ms turns off the associated emitter LEDs, while driving it high (or allowing the board to pull it high) turns on the emitters with the board’s default (full) current, which is 30 mA for “QTR” versions and 3.5 mA for “QTRX” versions. For more advanced use, the CTRL pin can be pulsed low to cycle the associated emitters through 32 dimming levels.

Demo of IR LED dimming and independent even/odd control on the QTR-HD-07x (as seen through an old digital camera that can see IR).

Demo of IR LED dimming and independent even/odd control on the QTRX-HD-07x (as seen through an old digital camera that can see IR).

To send a pulse, you should drive the CTRL pin low for at least 0.5 μs (but no more than 300 μs), then high for at least 0.5 μs; (it should remain high after the last pulse). Each pulse causes the driver to advance to the next dimming level, wrapping around to 100% after the lowest-current level. Each dimming level corresponds to a 3.33% reduction in current, except for the last three levels, which represent a 1.67% reduction, as shown in the table below. Note that turning the LEDs off with a >1 ms pulse and then back on resets them to full current.

For example, to reduce the emitter current to 50%, you would apply 15 low pulses to the CTRL pin and then keep it high after the last pulse.

https://www.pololu.com/product/4103
pololu sensor array led voltage module
D-18
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:

https://www.pololu.com/product/2489
pololu proximity sensor range finder finder sensor board light voltage
F-10
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:

https://www.pololu.com/product/3415
pololu proximity sensor range finder finder sensor board voltage light
F-10
4/4

Item Detail

SensiLab Inventory

© SensiLab Monash University 2017-2025