Sensor Kit Resource Hub

Contributors: jimblom
Favorited Favorite 6

Resource Rundown

This section briefly overviews each sensor included in the Sensor Kit -- describing what the sensor senses, how it relays that data, and what kind of power it requires. Links to separate tutorials are also provided. When you're ready to hook a sensor up and do some sensing, check out the tutorial for that device.

All of these sensors can be organized into one of two categories analog or digital. Analog sensors are generally easier to set up and use, but digital sensors can be more powerful and accurate. If you're just getting started with electronics, consider exploring some of the analog sensors first.

Analog Sensors

Most of these analog sensors are either variable resistors or potentiometers. The data they sense is usually translated to a variable voltage, which is read by a microcontroller’s analog-to-digital converter (ADC) and compared against other measurements.

Force-Sensitive Resistor

Force Sensitive Resistor 0.5"

Force Sensitive Resistor 0.5"

A force-sensitive resistor (FSR) is a variable resistor that increases or decreases depending on how hard something is pressing down on it. When no pressure is being applied to the FSR its resistance will be larger than 1MΩ.

The harder you press on the sensor's circular head, the lower the resistance between the two terminals drops. This FSR can sense applied force anywhere in the range of 0.1kg-10kg.

By creating a voltage divider with the FSR and another resistor, you can create a variable voltage output, which can be read by a microcontroller's ADC input.

These sensors are simple to set up and great for sensing pressure, but they aren’t incredibly accurate. They're useful for sensing the presence of something, but not all that great at measuring something's weight.

(Note: force-sensitive resistors cannot detect the presence of Midichlorians.)

The Force Sensitive Resistor Hookup Guide examines the basic characteristics of FSR's, and demonstrates how to hook them up to an Arduino so you can start gauging pressure.

Flex Sensor

Flex Sensor 2.2"

Flex Sensor 2.2"

This flex sensor is a variable resistor like no other. The resistance of the flex sensor increases as the body of the component bends. Sensors like these were used in the Nintendo Power Glove.

Left flat, the sensor will look like a 30kΩ resistor. As it bends, the resistance will increase to as much as 70kΩ at a 90° angle.

Combined with another resistor to create a voltage divider, the flex sensor can produce a variable analog voltage to be read by a microcontroller's ADC pin.

Consult the Flex Sensor Hookup Guide for help connecting the bend-sensor up to an Arduino.

Mini Photocell

Mini Photocell

Mini Photocell

Photocell's are light-sensitive, variable resistors. As more light shines of the sensor's head, the resistance between the photocell's terminals decreases.

In pitch-black conditions, the photocell's resistance will be in the megaohm's (1.0MΩ+). Shining an LED on the sensor can drop the resistance to near-zero. Usually the resistance of the photocell will range between 8k-20kΩ in normal lighting conditions.

As with other resistive sensors, to use the photocell with an ADC they're usually paired with a static resistor to form a voltage divider.

Photoresistor's won't give you incredibly accurate lux readings (that's what sensors like the TSL2561 is for), but they're great for at least identifying the general state of ambient light.

The Photocell Hookup Guide provides a quick overview of the photocell's resistive characteristics, plus an example circuit and code.

Soft Potentiometer

SoftPot Membrane Potentiometer - 50mm

SoftPot Membrane Potentiometer - 50mm

Soft potentiometers, or "softpots", are very thin potentiometers "wiped" by pressing down on various parts of the strip.

Like any potentiometer, the softpot is a three terminal device. The middle pin is the wiper, and the other two terminals are the high and low ends of the resistive element.

The resistance between the wiper and either of the other two terminals varies between 0Ω and 10kΩ. Or, if nothing is pressing down on the softpot, the connection between the two terminals looks like an (almost) open circuit. By applying a voltage across the two outside terminals, the middle terminal can produce a voltage somewhere in the applied range.

These sensors can be used for position detection or in projects that require linear user input, like a volume slider.

Take a stroll through the SoftPot Hookup Guide to learn how simple and fun these sensors are to use!

Piezo Vibration Sensor

Piezo Vibration Sensor - Large with Mass

Piezo Vibration Sensor - Large with Mass

Piezo sensors are flexible devices that generate electric charge when they're stressed. This characteristic makes piezo's an ideal solution for low-power flex, touch, and vibration sensing. This piezo sensor in particular has a heavy mass at the end to help accentuate its vibrations.

In more advanced applications, piezo's can be the foundation for energy harvesting. They produce large AC voltage spikes -- ranging as high as ±90V -- when vibrating, but the current and total power they produce is still minuscule.

Because they produce such high voltage spikes, large resistors are often used to "load down" the piezo sensor in vibration-sensing applications. The 1MΩ resistors included with the sensor kit are designed to help dampen the piezo's voltage output.

The Piezo Vibration Sensor Hookup Guide examines the AC-voltage-supplying capabilities of Piezo sensors, then shows how you can dampen that voltage and hook it up to an Arduino.

Soil Moisture Sensor

SparkFun Soil Moisture Sensor (with Screw Terminals)

SparkFun Soil Moisture Sensor (with Screw Terminals)

The Soil Moisture Sensor is a simple breakout for measuring the moisture in soil and similar materials. By monitoring soil conditions you can create a tweeting plant, that will alert you when it's thirsty.

The sensor consists of two conductive "stakes", that plug into the ground. Three wires -- power, ground, and a signal -- are all it takes to get the sensor up-and-running.

Soil Moisture Sensor

These probes measure the soil's conductivity. Soaked soil is much less resistive to current flow than flaky, dry dirt, so the lower the moisture sensor's reading, the happier your plant will be.

Check out the Soil Moisture Sensor Hookup Guide for assembly and implementation tips.

Sound Detector

SparkFun Sound Detector

SparkFun Sound Detector

The Sound Detector is a small and very easy to use audio-sensing board. It has three different outputs: binary sound detection, audio envelope, and a true audio output. The 3 outputs are simultaneous and independent, so you can use as many or as few as you want at once.

The digital binary output produces you a high or low signal indicating if sensed audio is over a set threshold -- it's an incredibly handy feature, which offboards complicated firmware programming onto pre-built hardware! The analog envelope filter is equally useful, especially if all you really want to monitor is the general amplitude of local sounds.

The sound detector has a built-in electret microphone, and all sorts of amplifying goodies on-board as well. You can add external resistors to customize the detector's gain and binary threshold.

The comprehensive Sound Detector Hookup Guide will walk you through assembly, hookup, and custom-modification of the breakout.

Optical Detector/Phototransistor - QRD1114

Optical Detector / Phototransistor - QRD1114

Optical Detector / Phototransistor - QRD1114

Photodetectors like the QRD1114 are actually built out of two components: an LED to emit infrared light and a phototransistor to detect it. The sensor can measure proximity or even color by measuring the amount of IR light that gets reflected back into it.

One of the most common applications for these sensors is black-or-white color detection -- they're a popular sensor choice for line following robots. A black, sharpie-marked line will absorb more light, meaning less light is reflected back into the sensor's phototransistor. When the sensor transitions over a white surface, more light is reflected and the sensor's output increases.

These sensors can be used with a microcontroller's ADC input to measure the amount of IR light reflected back. The LED does not have a current-limiting resistor built-in, so an external 330Ω resistor is usually added for that purpose.

Head over to the QRD1114 Optical Detector Hookup Guide to learn how the QRD1114 senses proximity by measuring reflectance of an IR LED. Then hook it up to an Arduino to do some proximity sensing of your own.

Digital Sensors

"Digital" here is a broad term. These sensors range from emitting simple HIGH/LOW signals, to communicating over more complex serial interfaces like SPI or I2C. In most cases, the latter devices will require an Arduino library to help with communication between device and microcontroller.

Reed Switch

Reed Switch

Reed Switch

A reed switch is a magnetically actuated switch. When the switch is exposed to a magnetic field, two ferrous materials inside pull together and the switch closes. When there is not a strong enough magnetic field nearby, the switch acts as an open circuit.

Magnets, like the small, square magnet included with this kit, can be used to actuate the reed switch. Just hold it about 1cm away, and let your current flow!

Reed switches are perfect for applications that require non-contact control. For example, a reed switch is present in magnetic door switches -- both parts of the switch are separate, allowing the door to open and close (maintaining its duties as a door).

The Reed Switch Hookup Guide describes the general characteristics of reed switches, and shows how to use one to turn on an LED with the magic power of magnets.

PIR Motion Sensor

PIR Motion Sensor (JST)

PIR Motion Sensor (JST)

PIR (passive infrared) sensors are motion-detecting devices used in security systems across the world -- even though you may not see them, they probably see you!

PIR sensors consist of an infrared "camera", which periodically measures the amount of infrared light it sees, and compares that against past measurements. When the IR measurement changes beyond a set threshold, the PIR sends a digital signal communicating that something in its field-of-view has moved.

PIR's are easy to hook up -- all they require is power (5-12V) and a pin to read the digital output. When motion is detected, the alarm output line goes low.

For help hooking up the PIR sensor to an Arduino, check out our PIR Motion Sensor Hookup Guide.

IR Receiver & IR LED

IR Receiver Diode - TSOP38238

IR Receiver Diode - TSOP38238

The TSOP38238 Infrared Receiver Diode -- or a part like it -- is embedded into every TV, cable receiver, and Blu-Ray player in your house. These IR receivers look for encoded infrared light, carrying messages like "channel up" or "volume down", and produce a signal that can be read by any microcontroller.

Before emitting a signal, infrared remotes modulate their signals at a set frequency. This diode has brains built into it that can automatically demodulate a standard 38kHz infrared signal. What comes out of the chip are a series of specifically timed 1's and 0's, that can in turn be converted to common IR remote commands.

The IR receiver diode can be paired with any household remote. Or you can use the included 950nm Infrared LED to create a remote of your own!

The IR Control Kit Hookup Guide demonstrates how to hook up the IR receiver diode, and set it to listen to any remote you may have in your household. It also shows how to create your own IR remote, by combining an Arduino with an IR LED.

RGB and Gesture Sensor - APDS-9960

SparkFun RGB and Gesture Sensor - APDS-9960

SparkFun RGB and Gesture Sensor - APDS-9960

The APDS-9960 is a multi-talented, powerful sensor that can measure light, color, proximity, and even hand gestures.

At it's most basic, the APDS-9960 is an ambient light sensor (much like the photocell). It can be used to monitor whether lights are on or off, or what time the sun rises. But it can also tell you how much red, green, and blue it's detecting in that light, so you can use it to sense nearby colors.

The sensor also features proximity detection. It can determine the sensor's distance from a nearby object anywhere from 4 to 8 inches away.

Finally, the APDS-9960 can sense nearby hand wave gestures (anywhere from 2-10 inches (5-25 cm) away). It can tell you if a hand is waving up, down, left, or right. Sensor's like these are the magic behind touchless toilet's!

The APDS-9960 is another I2C-based device. If you're using an Arduino, the Wire library helps take care of I2C.

The APDS-9960 RGB and Gesture Sensor Hookup Guide demonstrates how to assemble the breakout board, connect it to an Arduino, and interface with it over an I2C interface.

Capacitive Touch Slider - CAP1203 (Qwiic)

SparkFun Capacitive Touch Slider - CAP1203 (Qwiic)

SparkFun Capacitive Touch Slider - CAP1203 (Qwiic)

Do you want to replace a slider or a button on your art project or science experiment with a more interesting interface? This Capacitive Touch Slider is a "Qwiic" and easy way to add capacitive touch to your next project. With the board's built in touch pads, you can immediately start playing with the touch capabilities as three unique touch inputs or as a slider. You can also enable a touch input to act as a power button, customize the sensitivity for your own touch pads, and play with the interrupt alert LED. Utilizing our Qwiic system, no soldering is required to connect it to the rest of your system. However, we have broken out 0.1"-spaced pins in case you prefer to use a breadboard or create your own touch pads.

On the front of the board, there is an arrow shape which contains three separate capacitive touch pads. We also broke out the capacitive touch sensor lines as plated through-holes on the top of the board. You can use these pins to connect to your own capacitive touch pads. The CS1 pin connects to the left pad, the CS2 pin connects to the middle pad, and the CS3 pin connects to the right pad.

Check out the CAP1203 Capacitive Touch Slider (Qwiic) Hookup Guide for all of your capacitive switch needs. This tutorial documents assembly, wiring, and code.

9DoF IMU Breakout - ICM-20948 (Qwiic)

SparkFun 9DoF IMU Breakout - ICM-20948 (Qwiic)

SparkFun 9DoF IMU Breakout - ICM-20948 (Qwiic)

The SparkFun 9DoF IMU Breakout incorporates all the amazing features of Invensense's ICM-20948 into a Qwiic-enabled breakout board complete with a logic shifter and broken out GPIO pins for all your motion sensing needs. The ICM-20948 itself is an extremely low powered, I2C and SPI enabled 9-axis motion tracking device that is ideally suited for smartphones, tablets, wearable sensors, and IoT applications. Utilizing our handy Qwiic system, no soldering is required to connect it to the rest of your system. However, we still have broken out 0.1"-spaced pins in case you prefer to use a breadboard.

In addition to the 3-Axis Gyroscope with four selectable ranges, 3-Axis Accelerometer, again with four selectable ranges, and 3-axis magnetometer with an FSR to ±4900µT, the ICM-20948 also includes a Digital Motion Processor that offloads the computation of motion sensing algorithms from the detectors, allowing optimal performance of the sensors. We've also broken out all the ICM-20948 pin functionality to GPIO and labeled them I2C on the front, SPI on the back for ease of identification.

Check out the 9DoF IMU (ICM-20948) Hookup guide for all your motion sensing needs.

Environmental Combo Breakout - CCS811/BME280 (Qwiic)

SparkFun Environmental Combo Breakout - CCS811/BME280 (Qwiic)

SparkFun Environmental Combo Breakout - CCS811/BME280 (Qwiic)

The SparkFun CCS811/BME280 Environmental Combo Breakout takes care of all your atmospheric-quality sensing needs with the popular CCS811 and BME280 ICs. This unique breakout provides a variety of environmental data, including barometric pressure, humidity, temperature, TVOCs and equivalent CO2 (or eCO2) levels. To make it even easier to use this breakout, all communication is enacted exclusively via I2C, utilizing our handy Qwiic system. However, we still have broken out 0.1" spaced pins in case you prefer to use a breadboard.

The CCS811 is an exceedingly popular sensor, providing readings for equivalent CO2 (or eCO2) in the parts per million (PPM) and total volatile organic compounds in the parts per billion (PPB). The CCS811 also has a feature that allows it to fine-tune its readings if it has access to the current humidity and temperature. Luckily for us, the BME280 provides humidity, temperature and barometric pressure! This allows the sensors to work together to give us more accurate readings than they’d be able to provide on their own. We also made it easy to interface with them via I2C.

The CCS811/BME280 (Qwiic) Environmental Combo Breakout Hookup Guide demonstrates how take care of all your atmospheric quality sensing needs.

Note: If you are using the previous version of the sensor kit [ DEV-13754 ], check out the resources below for the AT42QT1010, LSM9DS1, Si7021, and MPL3115A2. These sensors were removed in the latest version of the sensor kit to take advantage of the latest sensors and Qwiic system.

SparkFun Sensor Kit

1 Retired
Click on the button below to view the resources for the sensors from the previous sensor kit.