Search Results for 'Xbee'

ZIG at Sketching in Hardware

Just finished presenting the ZigBee Internet Gateway at Sketching in Hardware 2010, held at the Encounter dome at LAX airport. My presentation covered the basics of (essentially) bringing web services to the Arduino via a ConnectPort and XBee radios from Digi International. The Gateway is intended for use in schools, design firms, hacker spaces or art venues. Some engineers from Sparkfun wanted to know if this was something I’m selling. Nope, it’s all going to be free.

Student Work-Sociable Objects Workshop

Whole Class:

Students:

Adi Marom

Adib Dada

Asli Sevinc

Laewoo Kang

Liangjie Xia

Matt Ganucheau

Michael Martinez-Campos

Michael Lewis

Michael Knuepfel

Morgen Fleisig

Richard Upchurch

Sarah Dahnke

Sebastian Buys

Syllabus-Sociable Objects Workshop

Print This Post Print This Post

Sociable Objects Workshop

Spring 2010

NYU, Tisch School of the Arts

Interactive Telecommunications Program

v1.0

Instructor: Rob Faludi

rob@faludi.com

212-989-6888

http://rob.faludi.com/teaching

Course 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 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.

Note that this course will be taught as a hands-on workshop, with projects taking place both in and outside of the classroom.

Goals:

Students will learn technical skills in wireless networking, programming and serial communication. They will gain a deeper understanding of how collaboration can enrich information in devices and enhance creativity in people. Assigned projects will explore networking, collaborative efforts and the sharing of data and behaviors between disparate systems.

Class Schedule:

  1. Intro, overview, basics and background: class introduction, student introductions, overview & syllabus review, about Sociable Objects, about ZigBee, buying an XBee, buying an adaptor, terminal programs, addressing.
    Assignments: Imagining Sociable Objects; purchase two XBee ZB Radios (Series 2) and one adaptor
  2. Imagining Sociable Objects Presentations: presentation of assignments with experimental 360º critique exercise
  3. XBee Configuration: PAN ID assignment, firmware updates, basic configuration, pair exercise
    Assignments: pairs exercises
  4. ZigBee Arduino: exercise review, math for mesh, firmware updates, ZigBee and Arduino, breakout board hookups, doorbell exercises
    Assignment: doorbell assignments
  5. Input/Output: exercise review, I/O Mode, I/O demo, API mode overview, API basics, I/O asssignment.
    Assignment: romantic lighting sensors
  6. Sensor Networks: assignment review, API for I/O mode, API for remote AT commands, types of networks, simple sensor network.
    Assignment: Simple Sensor Network
  7. End Devices, Sleep and Actuation: sensor network workshop, collaboration, sleep mode, end devices, direct actuation
    Assignment: Sensor/Actuator Proposals
  8. Mesh Networking: sensor shortcuts, data reporting, review project proposals, floor-wide sensor network workshop, organize observation assignment
    Assignment: Observation Assignment
  9. ZigBee Internet Gateway: overview of gateways, basic, Twitter, SMS, voice, email, basic ConnectPort, easy connections to the Internet
    Assignment: Sensor/Actuator Network
  10. Advanced ZigBee: multicast, clusters and endpoints, security, profiles. Ranging with RSSI and output strength.
    Assignment: Final Project ideas
  11. Lecture Wrap-up: Topics by request, reviewed and covered in more detail. Possibly power management, advanced serial, TCP/IP basics, resources.
    Assignment: Final Project proposals
  12. Production workshop with technical reviews
    Assignment: Final Project
  13. Final Presentations
  14. Final Presentations

Assignments:

Imagining Sociable Objects: Think of a system of things that communicate. Mock it up and present it to the class. Clearly and physically show what it is, how it would work and communicate the experience of using it, interacting with it and living in a world where it was real. Focus on a great idea and a great presentation. Please, no scrolling through a web page. Give us the story.

Doorbell Projects: Working in pairs, create a basic doorbell using ZigBee and Arduino, enhance this doorbell with roundtrip feedback so the visitor knows that the buzzer has rung. Next, create a doorbell with a nap mode with a silent alert for regular visitors but an eventual wakeup for insistent visitors. Finally, create an advanced doorbell of your choosing, perhaps one that only responds to a secret code, one with a history feature, one that sends an SMS or Tweets, one that provides a text display, or anything else that builds a better doorbell. Use this assignment as an opportunity to get comfortable with round-trip communications, and to think about enhancing practical interactions.

Simple Sensor Network: Using ZB XBees we will create mesh networks that cover large areas including the boards, enclosures, mountings and documentation. The end result will be a robust infrastructure that anyone could understand, use and extend. Each student will take on an area of responsibility to collaborate on making this network.

Observation Assignment: A one-week project chosen from a deck of project cards. Cards will be selected at random, with a white elephant process to exchange with classmates. Each project must be completed by the next class, including your documentation. The goal will be to notice something new about the world, and to begin preparing you for your final project ideation and iterations.

Sensor / Actuator Project: Generate an interactive system using the on-floor ZB XBee mesh network. One group will create a network of sensors that detect something about the world and use it to generate a data feed. The second group will obtain that data and produce a network of outputs or actuators that respond. The two groups will need to collaborate internally and with each other. Consider choosing work roles. Remember the importance of clear communications protocols in the data handoff. Be careful not to take on more work than can be done in a week, including troubleshooting. Work in stages, getting simple success as early as possible. Help each other as often and much as you can.

Final Project: work in groups to create a system or device of your choosing. Your creation should use multiple nodes to create a sensing network, display network or complex interaction. This is potentially a challenging assignment in a short period of time so consider what you know about collaboration. Keep moving forward.

Documentation:

  • links to documentation for each completed assignment must be provided for posting in the student work area
  • documentation is due within one week after completing each assignment

Grading:

Class participation & attendance 30%

Presentations and assignments 20%

Projects and documentation 30%

Final Project 20%

Office Hours

To Be Announced

Laptops

Can be open during lectures but should be closed when your fellow students are speaking or presenting.

Making the Most of It:

For best results, come to class early, participate in discussions, ask lots of questions, offer copious and constructive feedback, stretch yourself and have fun.

SELECTED READINGS

Math and Communication Protocols:

Bio-Short

Robert Faludi is a professor in the MFA program at the School of Visual Arts in Manhattan and in the Interactive Telecommunications program at NYU. He specializes in behavioral interactions through physical computing and networked objects. He frequently consults on interactive projects including recent work in entertainment, architecture and toys. Faludi is currently developing device networking and customer engagement systems for GroundedPower, a smart energy monitoring start-up. His work has appeared in The New York Times, Wired Magazine, Good Morning America, and BBC World among others. He is a co-creator of LilyPad XBee wearable radios, and Botanicalls, a system that allows thirsty plants to place phone calls for human help.

Student Work-Crafting With Data

Students:

Candice Holmes

Dharmarajan Ayakkad

Eun Joo(EJ) Lee

India Amos

Michael Doherty

Morgen Fleisig

Zoe Fraade-Blanar

Syllabus-Sociable Objects Workshop

Print This Post Print This Post

Sociable Objects Workshop

Summer 2009

NYU, Tisch School of the Arts

Interactive Telecommunications Program

v1.1

Instructor: Rob Faludi

rob@faludi.com

212-989-6888

http://rob.faludi.com/teaching

Course 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 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.

Note that this course will be taught as a hands-on workshop, with projects taking place both in and outside of the classroom.

Goals:

Students will learn technical skills in wireless networking, programming and serial communication. They will gain a deeper understanding of how collaboration can enrich information in devices and enhance creativity in people. Assigned projects will explore networking, collaborative efforts and the sharing of data and behaviors between disparate systems.

Class Schedule:

  1. Intro, overview, basics and background: class introduction, student introductions, overview & syllabus review, about Sociable Objects, about ZigBee, buying an XBee, buying an adaptor, terminal programs, addressing.
    Assignments: Imagining Sociable Objects; purchase two XBee ZB Radios (Series 2) and one adaptor
  2. XBee Configuration: assignment presentations, PAN ID assignment, firmware updates, basic configuration, pair exercise, doorbell description
    Assignments: pairs exercises, begin doorbell assignments
  3. ZigBee Arduino: exercise review, math for mesh, firmware updates, ZigBee and Arduino, breakout board hookups, doorbell exercises
    Assignment: finish doorbell assignments
  4. Input/Output: exercise review, I/O Mode, I/O demo, API mode overview, API basics, I/O asssignment.
    Assignment: romantic lighting sensors
  5. Sensor Networks: assignment review, API for I/O mode, API for remote AT commands, types of networks, simple sensor network.
    Assignment: Simple Sensor Network
  6. End Devices, Sleep and Actuation: sensor network workshop, collaboration, sleep mode, end devices, direct actuation
    Assignment: Sensor / Actuation Proposals
  7. Mesh Networking: sensor shortcuts, data reporting, review project proposals, floor-wide sensor network workshop, organize card assignment
    Assignment: Card Assignment 1
  8. ZigBee Internet Gateway: overview of gateways, basic, Twitter, SMS, voice, email, basic ConnectPort, easy connections to the Internet
    Assignment: Sensor/Actuator Network
  9. Advanced ZigBee: multicast, clusters and endpoints, security, profiles. Ranging with RSSI and output strength.
    Assignment: Final Project proposals
  10. Lecture Wrap-up: Topics by request, reviewed and covered in more detail. Possibly power management, advanced serial, TCP/IP basics, resources.
    Assignment: Final Project

11.Production workshop with technical reviews
12.Final Presentations

Assignments:

Imagining Sociable Objects: Think of a system of things that communicate. Mock it up and present it to the class. Clearly and physically show what it is, how it would work and communicate the experience of using it, interacting with it and living in a world where it was real. Focus on a great idea and a great presentation. Please, no scrolling through a web page. Give us the story.

Doorbell Projects: create a basic doorbell using ZigBee and Arduino, enhance this doorbell with roundtrip feedback so the visitor knows that the buzzer has rung. Next, create a doorbell with a nap mode with a silent alert for regular visitors but an eventual wakeup for insistent visitors. Finally, create an advanced doorbell of your choosing, perhaps one that only responds to a secret code, one with a history feature, one that sends an SMS or Tweets, one that provides a text display, or anything else that builds a better doorbell. Use this assignment as an opportunity to get comfortable with round-trip communications, and to think about enhancing practical interactions.

Simple Sensor Network: Using ZB XBees we will create a mesh network that covers the ITP floor. Everything will be created to be permanent including boards, enclosures, mountings and documentation. We will test for redundancy, stability, extensibility and usability. The end result will be a roust infrastructure that anyone at ITP can understand, use and extend. Each student will take on an area of responsibility to collaborate on making this permanent installation

Card Assignments: one-day projects inspired by a phrase from a deck of inspiration cards. Cards will be chosen at random, with a white elephant process to exchange with classmates. Each project must be completed by the next class,including your documentation, so think small. All projects need a name, public documentation, and have to be demonstrated by the deadline. Scale your ideas to fit the time allotted and you’ll be impressed with what you can accomplish.

Sensor / Actuator Project: Generate an interactive system using the ZB XBee mesh network we created, . One group will create a network of sensors that detect something about the world and use it to generate a data feed. The second group will obtain that data and produce a network of outputs or actuators that respond. The two groups will need to collaborate internally and with each other. Consider choosing work roles. Remember the importance of clear communications protocols in the data handoff. Be careful not to take on more work than can be done in a week, including troubleshooting. Work in stages, getting simple success as early as possible. Help each other as often and much as you can.

Final Project: work in groups to create a system or device of your choosing. Your creation should use multiple nodes to create a sensing network, display network or complex interaction. This is potentially a challenging assignment in a short period of time so consider what you know about collaboration. Keep moving forward.

Documentation:

  • Class blog: …?…

Warmups:

Some classes may include a warm-up intended to enhance the collaborative atmosphere.

Grading:

Class participation & attendance 30%

Presentations and assignments 20%

Projects and documentation 30%

Final Project 20%

Office Hours

To Be Announced

Making the Most of It:

For best results, come to class early, participate in discussions, ask lots of questions, offer copious and constructive feedback, stretch yourself and have fun.

SELECTED READINGS

Math and Communication Protocols:

ZigBee

Basic XBee Examples

  1. XBee Practical Example - Using the XBee ZigBee radios in paired communication between two PIC microcontrollers.
  2. XBee Firmware Upgrade Example - Demonstrates how to build a bare-bones circuit for loading firmware and configurations to the XBee radio without the need for custom interface boards.
  3. Common XBee Mistakes – A helpful list for troubleshooting why your XBee radio isn’t doing what you think it should.
  4. XBee Power Management - Jeff LeBlanc’s documentation of our power management and pin sleep research.
  5. XBee Direct Input/Output - Moving data without external microcontrollers.

Applied Examples

  1. LilyPad XBee – a sew-in wearable radio system.
  2. Programming Arduino Wirelessly - Put an Arduino on the ceiling, underwater, up a tree, stuffed in a turkey or what have you and still be able to change and improve its behavior.
  3. ZigBee Internet Gateway – A system to allow prototype devices to transparently connect to any URL on the Internet.
  4. XBee API Library for Processing -  a Processing library for Digi’sXBee radios.

Presentations

  1. XBee DriveBy - The PDF from my students-teaching-students presentation at ITP on XBee ZigBee radios, covering the basics of applications, comparisons to other technologies, how to make one, advanced projects and some configuration in-depth.

Resources

  1. Digi - Manufacturer of the XBee radios.
  2. Product Manual -XBee OEM Module information (for 802.15.4 firmware).
  3. ITP Internal ZigBee Wiki - ITP students and staff can register a unique PAN ID here for themselves and their projects.

XBee Terminal Max

xbee_terminal_max

The XBee Terminal Max is an improved version of the original XBee Terminal for Processing that features a much bigger screen, scrolling text areas, interactive serial port management and helpful reminder messages.

Thanks to Max Whitney for generating many of the improvements and Tom Igoe for the original code.

Etech GroundedPower Talk, Sociable Objects Workshop

etech2009

Gave a talk (more of a conversation really) about Smart Energy and What Lies Ahead at ETech, the Emerging Technology Conference in San Jose last week. Slides for the online casinotalk are online.

Also gave a workshop called Socializing Stuff about wireless objects that was a hands-on introduction to 802.15.4 and ZigBee radios. Wrapped it all up at the last-night Fest with Wireless Wearables and the LilyPad XBee before renting a car and heading to Point Reyes to unwind by the foggy Pacific. Lots of cows and no cell phone service are the perfect complement to a week of tech.


ETech Conference 2009

XBee Terminal Max

xbee_terminal_max

An improved version of the original XBee Terminal for Processing that features a much bigger screen, scrolling text areas, interactive serial port management and helpful reminder messages.

Download for:

You can also download the original source code, in which case you’ll also need the controlP5 GUI library.

Thanks to Max Whitney for generating many of the improvements and Tom Igoe for the original code. Oh, and a handy tweak from Usman Haque.