Inspiration
As Tufts seniors, we've seen facilities at Tufts get busier and busier. We wanted a way to know before you go somewhere, like JCC or the gym, whether it's a good time to go.
What it does
Is Tufts Busy? shows live statistics about how full buildings are at Tufts, starting with the Gym and the JCC. Each location can be expanded to show a graph of the traffic in the building compared to an average for this same weekday in past weeks.
How we built it
Data is collected passively using a Raspberry Pi installed in the building, which has a WiFi antenna that passively picks up signals that visitors' devices are outputting.
We send this anonymous data to a web server, which calculates based on the MAC addresses of the devices in the area an estimate for how busy the building is.
Finally, our frontend displays the estimates on interactive charts with comparisons against the last few weeks.
Challenges we ran into
- Initially, we set up the Raspberry Pi as its own broadcasting network. However, we were only able to collect data from devices connected to our dummy network.
- Raspberry Pi chips by default don't have "monitor mode" available by default. We tried to patch it with a firmware patch called
nexmon. - We weren't sure whether it was even possible to pick up on passive network traffic and guess the number of people in the area.
nexmonwas not compatible with out chipset for three different Raspberry Pi devices. We tried editing their scripts and compiling from source. This did not work.- We drove to Micro Center 15 minutes before they closed on Saturday night and were researching on our phones which of the WiFi antennas were compatible with "monitor mode" and our Raspberry Pi. We found on antenna whose older version was compatible, but the newer version was not, and we purchased the older version.
- We found a second WiFi antenna in the electronic waste bin in JCC and it happened to work. (Sustainability!)
- Creating an algorithm to estimate the relative foot traffic in a building based on historical data. We read several research papers to try to establish the best way to do this and to understand the various phases of WiFi handshakes.
Accomplishments that we're proud of
- Building not one, but two Raspberry Pi devices with WiFi antennas that broadcast their data every minute back to our web server.
- Deploying both web servers in discrete places in the JCC and the gym, close to high-traffic areas.
- Debugging these Raspberry Pi servers when they stopped sending data.
What we learned
- How WiFi and local internet traffic is constantly broadcasting around us, and how we can pick up on those signals, given the right equipment.
- How to analyze WiFi traffic in order to estimate approximately how busy a building is.
What's next for IsTuftsBusy.com
We plan on producing more servers that can measure foot traffic in more buildings, using what we've learned to bring down the cost per-unit. This will allow us to bring more buildings online and make IsTuftsBusy.com more useful for Tufts students.
Built With
- aircrack-ng
- laravel
- php
- raspberry-pi
- scapy


Log in or sign up for Devpost to join the conversation.