Creating Technology for Social Change

Open Water Project: Exploring Open-Source Water Quality Monitoring

This post includes contributions from Don Blair.

Over the last several months, Civic has been working on the Open Water Project, which aims to develop and curate a set of low-cost, open-source tools enabling communities to collect, interpret, and share their water quality data. Open Water is an initiative of Public Lab, a community that uses inexpensive DIY techniques to change how people see the world in environmental, social, and political terms (read more about Public Lab and the Open Water initiative here). The motivation behind Open Water derives partly from the fact that most water quality monitoring uses expensive, proprietary technology, limiting the accessibility of water quality data. Inexpensive, open-source approaches to water quality monitoring could enable groups ranging from watershed managers to homeowners to more easily collect and share water quality data.

As part of the Open Water Project, we’ve looked at other open-source water quality monitoring tools and initiatives (you can read more about those initiatives on this Public Lab research note, “What’s Going on In Water Monitoring”) and we’ve had meetups to talk about water quality and monitoring strategies (here’s a summary of an awesome water quality primer with Jeff Walker). We’ve also been working on development of the Riffle — the “Remote, Independent, and Friendly Field Logger Electronics”. The Riffle is a low-cost, open-source hardware device that will measure some of the most common water quality parameters using a design that makes it possible for anyone to build, modify, and deploy water quality sensors in their own neighborhood. Specifically, the Riffle will measure conductivity, temperature, and depth, which can serve as indicators for potential pollutants. Eventually the Riffle will be able to fit in a plastic water bottle.


A few weeks ago, Public Lab received generous support from Rackspace for an Open Water event in July, and Catherine D’Ignazio, Don Blair, and I decided we’d host a workshop focused on exploring conductivity as an important and widely-used water quality parameter. In addition to facilitating a group discussion on the topic, we hoped we could work together on prototyping simple, inexpensive and creative ways of measuring conductivity.

We started the workshop with a discussion around water quality monitoring and community support structures, including what a distributed water quality monitoring effort might look like (and some of the associated challenges) and strategies for developing community support (e.g. ‘tool libraries’ that include water quality monitoring tools). We also talked about the ways in which inexpensive, non-proprietary sensors might allow for new and important questions to be asked and answered in water quality, and how we might calibrate open hardware sensors.

Next, we had a mini lecture on conductivity measurements from Craig Versek and dove into creating a resistance-dependent oscillation circuit using the 555 timer (a fairly simple circuit). The idea behind the circuit is that oscillation frequency of the output will increase as the resistance value decreases (as a result, an LED will blink at different rates or a piezo buzzer will click at different rates). In our case, the resistance value derives from the water source connected to the circuit; thus, the LED blinking (or piezo buzzing) corresponds with conductivity (inversely, resistance) of the water.

breadboarding circuit
Participants breadboard the conductivity circuit.

Before the workshop, Craig Versek had measured out various amounts of table salt in order for us to be able to prepare water samples whose salinity matched some real world examples (here’s a table of salinity values for common water sources). After building the circuits, we explored how solutions of varying salinity affected the rate of oscillation in our circuits, by watching the LED blink rate change as we dipped the probe into the various samples. We then tried replacing the LED with a piezo buzzer and listening to the results. Some folks in the workshop even went so far as to connect the circuit via audio jack to a computer, and then use an open-source, browser-based pitch detector to associate specific pitches with water samples.

By the end of the workshop, we had:

  • built simple, cheap 555 conductivity meters on a breadboard
  • demonstrated that we could distinguish solutions of varying salinity from one another using this circuit
  • added an audio component to the circuit via a piezo buzzer, allowing one to ‘hear’ the conductivity of solutions
  • wired up an audio jack to the circuit, so that the resultant audio could be recorded on a smartphone or laptop
  • tested out browser-based pitch detection software — different levels of conductivity can now be assessed using only the browser!

There’s much more to explore in conductivity measurements and in water quality monitoring in general, and we’ll be hosting more Open Water workshops to explore open-source water quality monitoring techniques. To learn more about the project, visit Public Lab’s Open Water project page.