Video Demo

About

The Idea

For our physical computing project, my team wanted to tie together several different technologies. We wanted to use social media and tap into the vast amount of data that is constantly flying between wires.

We eventually settled on Twitter, and thought it would be really cool to have a robot that reacted to tweets. (Twitter-Hashtag-Operated Robot).

Documentation and Challenges

Working with Twitter's API through Max/MSP

Early on, we thought the biggest issue would be communicating with Twitter's API. Luckily, we found an external Max object called Twitter4J that allowed us to easily create queries and pull tweets into Max. We searched for tweets sent to @THORtheBot, analysed the tweets through Max, performed basic sentiment analysis on them, and then triggered certain emotions through Arduino.

Unfortunately, we discovered that Twitter's API only allowed for a certain number of requests per minute, or else our traffic would get blocked. What this resulted in was a pretty slow time between someone tweeting and T.H.O.R. reacting.

Wired vs. Wireless

Secondly, we wanted to have T.H.O.R. be wireless, but unfortunately, our research revealed that York University's WiFi is very problematic when it comes to authentication through WiFi shields and Arduino. If I'd known as much as I know now about XBees, I would have gone that route instead.

We had to build a small "cage" for T.H.O.R. so that he didn't get out of control. It was a square of wood about 3 feet on each side. Then we used a microphone stand and dangled the USB cable down into his enclosement. We had everything resting on a table, with the laptop acting as a small screen to display the latest tweet that T.H.O.R. was reacting to.