External tools and libraries

Citizen Sensing make use of the wide range of open-source tools and libraries that provide access to the sensors, boards, radios, and the like that we want to use. To build the projects we have on this site, you’ll need the following packages that can be downloaded off the internet. (All these tools and libraries are installed as standard in our virtual machine.)


  • Arduino IDE, the integrated development environment for working with the Arduino embedded hardware platform.
  • Processing IDE for the Processing 2 language, a derivative of Java that can be used to build client-side and web-based applications that interact well with the Arduino
  • X-CTU, the firmware management software for XBee radios

To install these tools, just follow the instructions on the respective web pages for the operating system you’re using. They are all know to work with (at least) OS X and Ubunto Linux.

Arduino libraries

  • xbee-arduino, the Arduino-side library for managing XBee radios in API mode
  • OneWire library for driving several handy sensors that use Maxim’s OneWire protocol
  • The Dallas Temperature Control Library that packages-up the interactions with DS18B20 temperature sensors using OneWire

To install a library, place the ZIP file into the libraries/ directory of your Arduino sketchbook and unzip it. The new library should now be available in the Arduino IDE. (You may have to re-start the IDE for it to show up.) Use Sketch >> Import library... to import the library into an Arduino sketch.

 Base station libraries

  • xbee-api, the server-side library written in Java for communicating with XBee radios

Libraries for Processing are handled similarly to Arduino libraries: place the ZIP file into the libraries/ directory of your Processing sketchbook and unzip.


  • Twitter
  • del.icio.us
  • Digg
  • Facebook
  • Technorati
  • Reddit
  • Yahoo Buzz
  • StumbleUpon