Inspiration

We searched for problems commonly faced by students at Duke (or any other institution) in the hopes of demonstrating the positive impact one can have on their community through technology by engineering a solution. After a long query into the possibility of some sort of map, our team realized that it is now possible to find every gas station, fast food joint, grocery store, or even bathroom nearly anywhere in the country, yet there is no standard for women to quickly locate essential products when they need them most. We sought to create a platform that can be easily implemented by campuses across the country.

What it does

Flowcate is a model. Physically, Flowcate is an IOT device attached to the internals of a menstrual product dispenser, wired to signal data to a web server. In code, Flowcate is a live map that matches information from a database to points in the world. Together, they create an accessible platform that enables women to quickly find essential products when they need them most.

How we built it

Flowcate is composed of three pieces of software, one piece of hardware, and a cardboard box. Our Arduino kit has a button module attached to it, which via serial sends a signal to the machine running our server. We then have a Python application dedicated to constantly listening to this serial channel, which upon receiving some data immediately makes a GET http request to our localhost. Finally, our Django server is set up to receive the request and update the database with the new information. On the user end, the map is frequently refreshed to load the newest stock numbers.

Challenges we ran into

The button. What would seem like the simplest element of our project, a two-state button, ended up being the most difficult to implement. We lacked access to any means to signal our button's activity to our web server via networking, so we had to instead utilize serial. This was our first encounter with serial as a concept, and it took hours to design a working system to receive and translate our Arduino's input.

Accomplishments that we're proud of

We are proud that we managed to implement a complete solution to the problem we originally sought to solve, despite each of us needing to learn new technologies to reach this point. We are proud that during hours of bugs, errors, and things generally not working out we kept our chins up high and persevered.

What we learned

Robert learned how to utilize Arduino hardware and serial interfaces, as well as how to implement Google Maps in JavaScript. Esther learned many elements of CSS and HTML, designing the bulk of the visual end. Jacob learned the hardware side, getting input from the Arduino to the laptop, as well as learning how to debug CSS.

Share this project:

Updates