Inspiration

Like most new implementations on campus this semester, BuzzSense was designed as a response to the coronavirus. With the resurgence of in-person students on campus, it’s harder than ever to maintain proper social distancing in our shared spaces. Specifically, one of BuzzSense’s largest goals was to aid immunocompromised individuals and those with restrictions on mobility in their access to covid-safe areas. Another possible application would be toward sustainability. If there are less people in an area, lights/HVAC can be altered. Overall, we wanted an easy way to check the occupancy levels of the areas we frequently visit.

...Plus, many of us students know all about the frustrating experience of looking through the 18 combined floors of Clough Commons, Price Gilbert Library, and Crosland Tower to find an open study spot.

What it does

BuzzSense determines the occupancy levels of different public buildings on campus and their floors using the number of active devices connected to various access points (which correlate with the location in the building). Our program compares the number of currently active devices with prior data to see if occupancy is above or below average.

Users can visit the BuzzSense website and select a building and floor to see a graphical representation of the floor’s location in the building and find the occupancy of the floor. Right now, our three levels of occupancy are “LOW”, “MEDIUM”, and “HIGH”. “MEDIUM” corresponds to the average occupancy of the building (~average number of active devices) “LOW” and “HIGH” correspond to below average occupancy and above average occupancy respectively

Note: We collected connection data from GTOther and also manually added some mock connection data in order to demo our product. In practice, our product would collect data from a more widely-used network and no mock data would be used.

How we built it

The website was built with HTML/CSS and JavaScript. The back-end was built with Node.js using Express and MongoDB. Wireless connection data was obtained using tcpdump.

Hardware we used: Raspberry Pi and host computer.

Challenges we ran into

We tested and researched four different methods to find building occupancy (e.g. Bluetooth LE). However, we eventually realized that many of them weren’t feasible in terms of both hardware and software.

Also, lots and lots of bugs and roadblocks with CSS and Node.js.

Accomplishments that we're proud of

  1. Our usage of access points to determine occupancy
  2. The potential viability of our prototype to solve campus-wide (and beyond) issues
  3. Our perseverance through unruly bugs

What we learned

  1. Making network-based applications can be really hard
  2. Details about Bootstrap & Linux

What's next for BuzzSense

The BuzzSense demo interface includes some of the busiest buildings on campus: Clough Undergraduate Learning Commons, Price Gilbert Memorial Library, and Crosland Tower. We hope to expand both the interface and coverage to more buildings and areas.

Other goals:

  1. BuzzSense mobile app
  2. UI improvement

More technical details and technical goals found on our GitHub page.

Share this project:

Updates