Web app login screen
A sample outfit on the web app
Android screenshot of an outfit.
Originally, we were excited about using machine learning tools to pick out outfits based on weather and style preferences. When we got to the venue, we realized that the hardware resources were here to extend our vision to IoT.
Why pick your own clothes when you can have a computer do it for you? Clueless Closet is able to take clothes inside your closet, and by making educated decisions based on the weather and machine learned style preferences, our project is able to provide you with accurate information on what you should wear. By working together on this project, we were able to see the power that everyone contributing their skill sets can have. We were able to integrate a front end website, an android application, and a hardware tool, and connect them all together through the power of a back end server.
How we built it
We made the individual smart hangers using Arduinos with associated components to create real time sensing units for each hanger. Each hanger is connected to a bus where a master DragonBoard polls the individual hangers. The Dragonboard runs on multiple threads to manage both interfaces in real time.
We worked on APIs first, then generated multiple front ends for the API. The Web app was one of the front ends, and it was built with node.js.
Back end server
Handles the API requests that power our Web App and Android front end. Built on a MEAN stack.
We used a null-safe modern language to create a material-compliant Android application.
Challenges we ran into
- Integrating all the components:
With a mobile app, a web app, a back end server and an IoT interface, our project had a lot of moving parts. Managing responibilites was difficult, but it was a very rewarding experience to see all the pieces come together at the end.
- Improvising hardware:
There were a few key pieces of hardware that would have liked to see on our project, but we were able to manage without. We would have liked to connect our IoT devices via Bluetooth instead of I2C (because the Dragonboard has integrated Bluetooth- that's why we chose it). Also, we couldn't find a suitable digital switch to monitor the hangers, so we made one from analog sensors instead.
- Manually uploading images to our MEAN stack:
Its just a pain to transfer coordinating file transfers accross different networks. This ended up being a dull and time consuming process that had to get done.
Accomplishments that we're proud of
- Full system integration
By far the most exciting achievement of this project was having all of the components come together.
What we learned
Most importantly, we learned that broad team projects like this require a high level of patience and communication. Each of us had something to bring the team, and I think we learned how to ask the right questions to leverage eachother's skills to the max.
What's next Clueless Closet?
We're looking for venture capital to invest in smart coat hangers this quarter, and we're looking to diversify into smart toasters within the next two years.