Category Archives: blog
XBee API Library for Processing
Rob Faludi and I are working on a Processing library for Digi’s XBee Series 1 radios. Direct from Rob’s blog:
The library currently facilitates receiving single sample I/O packets in API mode, and returns an object that contains the analog values, digital values, sender’s 16-bit address and RSSI value. The next tasks will be to receive regular RX frames, issue AT commands and receive responses, issue TX frames and receive responses to those. We’d also like to support the XBee Series 2 radios, which have a similar API structure.
Here’s where you can download and learn about the library.
E-mail Processing
While it may not be nearly as kooky as calling Processing on the phone, I’ve been asked about checking e-mail from Processing several times this semester. So rather than try to dig up example code on the internets, I’ve quickly thrown together one that checks a POP account and/or sends mail via SMTP. It’s all done with Javamail.
Code snippets after the jump. . .
Day 2
IAC Video Wall Day 2 from shiffman and Vimeo.
IAC Video Wall Tests
IAC Video Wall Test from shiffman and Vimeo.
We’re testing the most pixels ever library on the IAC Video Wall. So far it works.
More to come in the next two days. . .
Processing Yahoo Search Library
2011 Update: While this library may still work, I am deprecating it as Yahoo does not support the Java Search API any longer as far as I can tell

Now, I am rather overdue for an update on my upcoming book. I’ll be posting details soon. However, in the course of finishing up a chapter on String parsing, I discovered that my good friend, the Google SOAP API is no longer being supported (obviously, I’m a little late on the ball here.)
So, I quickly whipped up a Processing library to make use of the Yahoo Search API. Now, you can access the Yahoo! API directly in Processing. There’s even an example here. However, you would have to write your own thread if you wanted to search asynchronously. In addition, if you’re not comfortable diving into outside Java APIs, you might struggle to figure out the syntax. (Switchboard also provides an interface to the Yahoo! API.)
So I set out (as an example for my book) to make a quick and easy bridge to the Yahoo API.
Finally, take a peek at this example code.
// Import the library import pyahoo.*; YahooSearch yahoo; void setup() { size(400,400); // Make a search object yahoo = new YahooSearch(this,"YOUR API KEY HERE"); } void mousePressed() { yahoo.search("processing.org"); // You can request more results like so (the default is 10): // yahoo.search("processing.org",30); } void draw() { noLoop(); } // The searches will come in one at a time to here when finished void searchEvent(YahooSearch yahoo) { // You can get the titles, URLs, or Summaries back as an array of Strings String[] titles = yahoo.getTitles(); String[] urls = yahoo.getUrls(); println("\nI searched for " + yahoo.getSearchString()); println("There are a total of " + yahoo.getTotalResultsAvailable() + " results available"); println("Here are the first " + yahoo.getNumberRequested()); for (int i = 0; i < titles.length; i++) { println("___________"); println("Item # " + i); println(titles[i]); println(urls[i]); } // You can also access the Yahoo API Directly by asking for the WebSearchResult object: // WebSearchResults results = yahoo.getResults(); // WebSearchResult[] results = yahoo.getResultsArray(); // In this mode, make sure to import the Yahoo library up topl // import com.yahoo.search.WebSearchResults; // See Yahoo API documentation for more } |
There’s also a fancier example (mostly uncommented, sorry) that produced the image at the top of this post here.
Thoughts? Helpful? Useful?
Terminal Zero One Press
We have lift-off for airport-related puns!
Terminally bored? You won’t be, with digital art by Nadja Sayej, The Globe and Mail.
Airport art: Multi-screen, interactive digital art exhibition connects travellers with a disconnected world at Terminal One by Peter Goddard, Toronto Star
Terminal Zero One Touches Down at Pearson by Adam Schwabe, blogTO
Processing QRCode Library
From: http://qrcode.sourceforge.jp/:
“QR Code is a two-dimensional barcode, used widely in Japan. The advantage of QR Code from well-known barcode is larger data capacity (more than 100 bytes, typically) and error correction.”
Thanks to an idea from Tom Igoe, I make a quick and dirty interface for Processing for QRCode decoding. The Pqrcode library page is here.
Also, qrcode images can be generated here.
Right Click Swarm
My 2002 (my goodness, that’s 5 years ago!) piece Swarm is part of Right click – Open source new art media exhibition at the Kapok gallery in Hong Kong. Swarm uses an implementation of Craig Reynolds’ flocking algorithm and the Processing source is available in my nature of code tutorials. The show also includes Josh Minor’s wonderfully addictive Video Pong.
Airport Installation
I’m working on an interactive kiosk for the Toronto Airport, part of Terminal Zero One. Two early sketches:



