StonesThrow Library
The StonesThrow software library was developed to speed the prototyping of social objects and distributed experiences. The library assumes the user has little to no knowledge of serial communication, data parsing and packet structures. More importantly it assumes you do not want to know.
The library’s simple functions allow the control of pins on remote microcontrollers connected together wirelessly with xBee radios (see Hardware). StonesThrow functions are designed to look and operate like the standard Digital I/O and Analog I/O calls of the Arduino environment. If you already know how to blink an LED on your desktop then you know how to blink an LED on someone elses.
Core Functions
The core stonesThrow functions mimic the standard I/O functions of the Arduino board — except they operate on a remote device.
.remoteDigitalWrite(pin, value);
.remoteDigitalRead(pin);
.remoteAnalogWrite(pin, value);
.remoteAnalogRead(pin);
See Reference for function details.
Comparison with Other Libraries
StonesThrow aims to speed development of projects. It is designed to quickly get objects talking. In this regard, it is not a general communication solution — it is very specific. Its advantage is that it does not require a deep understanding of communication protocols to get started.
Many great communication libraries are available to enhance your Arduino’s capabilities. Check them out at the Arduino Libraries Page.
Download the Library
The *UPDATED* version of the stonesThrow library is available for download!
Runs on Arduino 1.0.5
Version A002 ( github ) Released: October 8 , 2013
Version A001 (zip archive) Released: July 12, 2009Deprecated
This library is being actively developed and the included functions are in the early proof of concept stages. There is a lot of room for optimization and improvement. Suggestions are welcome.
Getting Started
Installing the Library
- Download and unpack the archive
- Place the StonesThrow folder inside /Arduino/Documents/libraries folder. The path should resemble:
~/Documents/arduino/libraries
- Restart the Arduino IDE if it is open.
- StonesThrow should now appear in the
Sketch\Import Library
menu
Include the Library
There are two ways to include the library in a sketch:
- At the top of your sketch, type
#include <StonesThrow.h>
- using the menus, select:
Sketch\Import Library\StonesThrow
Use the Library
Full function details and examples are available on the Reference page .
This library was developed using the Arduino IDE and is intended for use on Arduino and Arduino compatible I/O boards. StonesThrow is an independent project.