RFID & Foursquare - 2014

For my Physical Computing class project I decided to do something I have been thinking about for a while. Most people take out their phones when they arrive somewhere to "checkin" on Foursquare or Facebook*. This is something I regularly do for every venue I go to, and it's the first thing that comes to my mind. It's overwhelming to perform this act as it's the most important thing you've to do when you get there, and that's not okay. I was thinking about how I could make the locations I go more location-friendly, or checkin-friendly, and make it easier for me to tell people that I'm there without having to use my phone and have that annoying "checkin here checkin here" alarm go off in my head. After a lot of thought I felt that NFC/RFID was an amazing way to get people on-board. 

RFID/NFC are becoming more common in ID-cards, and mobile phones. Some of the newer Android phones are equip with NFC, and most new school ID cards, such as the NYU ID, is now running on RFID. So to me it's pretty clear that the simplest way for an individual to check-in to buildings would be to use their phones or their ID cards as most people have one of these. More importantly, most buildings even with schools already require people to tap their IDs to get into - so why can't we just equip those with RFID/NFC powered checkins?

Technologically it's not hard. We can use: Node.JS for running the server and communicating with Arduino, the Arduino, a WiFi shield for the Arduino, a RFID/NFC reader, and a form of a database such as MongoDB running in the background.

Each card would have it's own RFID/NFC number and that would get an OAuth token from a server running within the Arduino/Raspberry pi. The database could be remote so every individual can access each device and it would basically tell Foursquare/Facebook/Yelp/Groupon, etc that the person is there. The hardest and least simplest part of this process would be for a person to initially register for their RFID/NFC number to match up with their Foursquare OAuth token. I had a few thoughts - such as using an LCD module, or a computer itself, but then someone gave me the idea of using a QR code, which would contain a simple link. The only thing we need to tell individuals is the link of how to sign up to the page. We can use a simple GET to get the RFID/NFC number instead of using POST, and that would make everything a lot simpler.

I managed to prototype it - and it works amazingly! One tap and everything is great. You can check it out on Github here. I will be posting more as I make the next prototype.

* A new common trend within cities like New York, and San Francisco. It hasn't fully taken off in the rest of the world yet, but I believe it will. People are sharing everything from photos to information, and with products like Foursquare where peoples location can only be accessed by friends you accept it doesn't become a hassle.