Chapter 13. Sensors

13.0 Introduction

In this chapter, you will look at recipes for using sensors of various types that will allow the Raspberry Pi to measure temperature, light, and more.

Compared to a board like the Arduino, the Raspberry Pi lacks analog inputs. This means that for many sensors, it is necessary to use additional analog-to-digital (ADC) converter hardware. Fortunately, this is relatively easy to do. It is also possible to use resistive sensors with a capacitor and a couple of resistors.

Most of the recipes will require the use of a solderless breadboard and male-to-female jumper wires (see Recipe 9.8).

13.1 Using Resistive Sensors


Be sure to check out the accompanying video for this recipe at


You want to connect a variable resistor to a Raspberry Pi and measure its resistance so that you can use the position of the variable resistor’s knob in your Python program.


You can measure resistance on a Raspberry Pi using nothing more than a capacitor, a couple of resistors, and two GPIO pins. In this case, you will be able to estimate the position of the knob on a small variable resistor (trimpot) by measuring its resistance from its slider contact to one end of the pot.

To make this recipe, you will need:

Get Raspberry Pi Cookbook, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.