Living downtown we noticed that there were many overfilled trash cans and waste disposal was an overall problem for the people and citizens of the city. How many have wandered the city to find some cans completely overfilled while others were empty and in what seemed to be bad spots. What inspired us was the relatively bad experiences of living an urban life. That got us thinking, if we are having trouble finding trashcans and often find full or overflowing units, how are people that are managing this trash optimizing their routes and making sure they are hitting the right areas at the right time? With all of the available tools we wondered how and why there was no cost-effective and smart-city solution to make CLEAN data available and actionable to municipalities and waste disposal services.

We offer a citizen component for people to interact with where their nearest disposal sites are and integrated our app into the Montreal 311 ecosystem.

What it does

We used an ultrasonic sensor in a garbage can to detect the realtime fill levels of waste disposal units and send that information to our firebase realtime database. There our data visualization process generates a real-time view of the fill levels and location of all of the units. Our AI then generates the optimal route for a garbage collection service according to the departure time and the current LIVE fill level of the trash cans. This can mean less garbage trucks dedicated to city spaces potentially saving hundreds of thousands of dollars for cities and a C L E A N and more sustainable smart city life. We use data to make the planet better!

Citizens can access the location and report overfilled cans on the MONTREAL 311 app and the city can utilize that same interface to plan the waste disposal trips. This function is a perfect addition to this smart city!

How we built it

We built it using these technologies



Ultrasonic Sensor

Raspberry Pie


Google Cloud


Cache Database:

firebase realtime database


Express.js Prettier

Swagger Eslint

React Node.js

Google cloud platform Firebase hosting

Github MapBox

Figma Chart.Js

Typescript Montreal Open Data Platform

Challenges we ran into

We first attempted to set up the data gathering device using raspberry pie, we ran into a number of logistical and software issues in our R&D phase, we then pivoted and used an arduino board with an ultrasonic sensor. We found that it detected levels a lot better. We then ran into some logistical challenges of route optimization for disposal trucks but we managed!

We had to make the data flow in the database, make the information available REALTIME and optimize routes according to live data! Now THAT was a challenge!

Accomplishments that we're proud of

We are proud of having delivered a functional demo with a full backend, working database, and a product we are proud of. We made something we did not think possible in less than 20 hours!

What we learned

We learned how to implement an IOT data collection tool into a smart city context which will use big data to challenge the waste disposal process and we learned a lot by tackling many implementation challenges in attempting to both deliver an optimal product as well as an efficient one.

What's next for C L E A N

Pitch it to the city of Montreal :)

Built With

Share this project: