Class Description
Sociable objects are devices that share. They can talk to each other, gain information about their context and react accordingly. Recent advances in wireless mesh networks have created the potential for a massively interconnected world of easy information sharing. Cheap communications, high reliability, unique addressing, small size, standardization, and routing features combine to enable exciting new interactions. Developers of toys, wearables, performance devices, portables, network objects and sensor arrays can take advantage of radio mesh networking to design more interesting, better informed and more complex behaviors for their projects. This course explores devices that connect with and respond to each other. The technical focus will be on 802.15.4/ZigBee wireless mesh networks. Interconnections with other platforms and devices will be examined as appropriate. Students will gain an expertise in all functions of the ZigBee system to facilitate smart and novel behaviors in their projects. Through a series of weekly exercises, students will build skills and explore the challenges and delights of mutual connectivity. As a final project, the class will construct dynamic device networks. Prior experience with basic electronics and physical computing is helpful, but not required. Most labs and projects involve group work, so students should be ready to collaborate extensively as they experiment on the cutting edge of device interaction.
- Sociable Objects Syllabus v1.1 – tentative and subject to change
Code
- XBee_Terminal.pde for Processing
- XBee Analog Duplex Sender.pde for Arduino
- Metronome Reader for Arduino -- sample code for Coordination Project
- Metronome for Arduino (in case you are curious how the base unit works)
- XBee I/O Reader Library (a work in progress) by Dan Shiffman & Rob Faludi.
- XBee API code for Arduino (another work in progress) by Rob Faludi
- XBee RSSI Reader example (gets signal strength from in incoming I/O packet) by Rob Faludi
- XBee IO Reader for Max/MSP (a work in progress) by Luke DuBois with Rob Faludi. Also new extended version by Brady Marks
Resources
- Lecture Slides
- XBee PAN IDs on Physical Computing Wiki
- Preorder Page
- Faludi XBee Page
- ZigBee Alliance
- XBee Product Manual