Sensors
Descriptions of sensors that might be useful for Invention Bootcamp Inventions
Table of contents
This page lists sensors that can be connected to an Arduino to detect changes in the environment. We provide links to libraries and example code to help you start using the sensors in your project.
The sensors are grouped my the type of stimulus (input signal). Some sensor breakout boards can detect multiple signals, e.g. temperature and humidity. Therefore, those sensors will be listed in multiple groups.
Many of the sensors are mounted on breakout boards, which make it easier to physically connect and interface to the microcontroller. Some of those breakout boards can sense multiple inputs.
Qwiic Connectors
SparkFun has created a set of sensors with pluggable I2C connectors. SparkFun also sells a selection of connecting cables for the sockets on the sensor breakout boards. Most Qwiic cables have connectors on both ends.
When sensor breakout boards support I2C communication, but don’t have Qwiic connectors, we can solder extension wires to the board. The extension wires can be created by cutting a long Qwiic cable in two. The following figure shows half of Qwiic cable, along with the labeling for the wires.
Sensor Categories:
Proximity and Distance Sensors
Sparkfun has a web page describing several options for measuring distance and proximity.
Proximity Sensor Breakout
- Sensor: VCNL4040
- Senses: presence of an object, and relative motion toward or away from sensor
- Approximate range: 20 cm, max
- Communication: I2C with Qwiic connector
- SparkFun product page and hookup guide
SparkFun Distance Sensor Breakout
- Sensor: RFD77402
- Senses: distance to an object
- Approximate range: 10 cm to 2m
- Communication: I2C with Qwiic connector
- SparkFun product page and hookup guide
- Note: Requires input voltage of 3.3V.
SparkFun Distance Sensor Breakout
- Sensor: VL53L1X
- Senses: distance to an object
- Approximate range: 4 cm to 4 meters
- Communication: I2C with Qwiic connector
- SparkFun product page and hookup guide
- Note: Requires input voltage between 2.6V and 3.5V.
- Additional hookup information
ZX distance and gesture sensor
- Sensor: Custom ZX sensor
- Senses: X and Z position of an object, simple gestures
- Approximate range: 30 cm
- Communication: I2C and UART
- SparkFun product page and hookup guide
- Other features
- On-board processing to detection direction of motion, which can be interpreted as gestures
- Additional hookup information
PIR Motion Detector
PIR Motion Detectors are used for room occupancy and security
- Sensor: HC-SR501
- Senses: presence of an object, and relative motion toward or away from sensor
- Approximate range: up to 7 meters within 120 degree angle
- Communication: analog
- Amazon product page
- hookup guide
Gesture Sensors
ZX distance and gesture sensor
- Sensor: Custom ZX sensor
- Senses: X and Z position of an object, simple gestures
- Approximate range: 30 cm
- Communication: I2C and UART
- SparkFun product page and hookup guide
- Other features
- On-board processing to detection direction of motion, which can be interpreted as gestures
- Additional hookup information
SparkFun RGB and Gesture Sensor
- Sensor: APDS 9960
- Senses: ambient light levels, RGB color, proximity, and touchless gesture
- Communication: I2C
- SparkFun product page and hookup guide
- Additional hookup information
Accelerometers
SparkFun Triple Axis Accelerometer Breakout
- Sensor: MMA8452Q
- Senses: acceleration in x, y and z axes
- Communication: I2C with Qwiic connector
- SparkFun product page and hookup guide
Environmental Sensors
SparkFun Atmospheric Sensor Breakout
- Sensor: BME280
- Senses: atmospheric pressure, relative humidity and temperature
- Communication: I2C and SPI
- SparkFun product page and hookup guide
- Additional hookup information
SparkFun Air Quality Breakout
- Sensor: CCS811
- Senses: Total volatile organic compounds (TVOC), equivalent CO2, and metal oxide (MOX) levels
- Communication: I2C
- SparkFun product page and hookup guide
- Additional hookup information
Temperature Sensors
SparkFun Digital Temperature Sensor Breakout
- Sensor: TMP102
- Communication: I2C
- SparkFun product page and hookup guide
Weight Sensors
Weight is a force, so measuring weight is obtained by a force sensors. Usually some other physical structure is needed to support the force measurement.
A load cell is a force sensor that detects the bending or elongation of the a metal bar. The bending or elongation are so small that they are not visually detectable. The electrical signal level is quite low and requires an amplifier.
10 kg Load Cell
- Sensor: strain gages attached to a bar
- Senses: force to bend a bar
- Communication: voltage output
- SparkFun product page and hookup guide
- Getting started with Load Cells
- Note: Choose the load cell to match the force/weight magnitude. Options from SparkFun range from 100 g to 200 kg
SparkFun Qwiic Scale
- Sensor: none – requires load cells for input
- Communication: I2C with Qwiic connector
- SparkFun product page and hookup guide
Additional Sensors
The following sensors are also available from previous iterations of Invention Bootcamp.
- Pulse Sensor, https://www.sparkfun.com/products/11574
- Sparkfun sound detector, https://www.sparkfun.com/products/12642
- High sensitivity microphone, https://www.amazon.com/Sensitivity-Microphone-Sensor-Detection-Arduino/dp/B00XT0PH10/
- Infrared motion detector, https://www.amazon.com/EMY-HC-SR501-Pyroelectric-Infrared-Detector/dp/B00FDPO9B8/
- ultrasonic sensor, https://www.sparkfun.com/products/13959
- flex sensor, https://www.sparkfun.com/products/10264
- accelerometer, https://www.sparkfun.com/products/13963
- Temp/Humidity sensor, https://www.amazon.com/Gowoops-Temperature-Humidity-Digital-Raspberry/dp/B01H3J3H82/
- Load cell, https://www.sparkfun.com/products/13329
- Load cell, https://www.sparkfun.com/products/10245
- Load cell, <amplifier https://www.sparkfun.com/products/13879>
- ESP8266, https://www.amazon.com/gp/product/B010O1G1ES/
- Force sensitive resistor, https://www.sparkfun.com/products/9375