ASK AN ENGINEER is LIVE now! Click here to watch our weekly show with Ladyada!


We've already covered how to use an Analog-to-Digital Converter chip with a Pi. These chips are the best way to read analog voltages from the Pi. However, there's a way to read many sensors without an ADC! By measuring the sensor as a resistor that is used to 'fill up' a capacitor, we can count how long it takes. It's not nearly as precise as an ADC and its a little flakey (since it depends on the Pi timing itself which can vary based on how 'busy' the computer is)

The way we do this is by taking advantage of a basic electronic property of resistors and capacitors. It turns out that if you take a capacitor that is initially storing no voltage, and then connect it to power (like 3.3V) through a resistor, it will charge up to the power voltage slowly. The bigger the resistor, the slower it is. 

This technique only works with sensors that act like resistors. however, there are quite a few fun sensors that act this way: photocells, thermistors (temperature sensors), flex sensors, force-sensitive resistors, and many more.

It cannot be used with sensors that have a pure analog output like IR distance sensors or analog accelerometers.
Last updated on 2015-05-04 at 04.27.56 PM Published on 2012-07-29 at 11.58.37 AM