Inspiration

Waste collection is often treated as a simple transportation problem, but the real challenge is a lack of visibility.

Waste management operators may not know which collection points are already full, whether trucks are taking efficient routes, or whether waste is being disposed of at the correct facilities. This leads to unnecessary trips, overflowing waste, higher fuel consumption, and limited accountability.

Through a design-thinking approach, we asked:

How might we help waste operators make better collection decisions using real-time data instead of assumptions and fixed schedules?

That question became Rotom.

What it does

Rotom is an IoT-powered waste management platform that helps cities monitor, optimize, and understand waste collection operations in real time.

Rotom connects waste facilities, garbage trucks, and operators through one dashboard.

Our system can:

  • Monitor waste capacity at collection facilities using IoT sensors.
  • Track garbage trucks in real time using GPS.
  • Identify drivers or operators using RFID.
  • Recommend more efficient collection routes based on facility conditions.
  • Visualize truck movements and waste operations on a map.
  • Store historical operational data for analysis.
  • Help identify unusual routes or disposal patterns that may indicate improper waste disposal.

Instead of asking trucks to visit every location on a fixed schedule, Rotom helps operators prioritize where collection is actually needed.

How we built it

Rotom consists of three main layers: IoT devices, realtime infrastructure, and the operations dashboard.

For waste-capacity monitoring, we use an ESP8266 NodeMCU V3 with an HC-SR04 ultrasonic sensor to estimate how full a waste container or collection point is.

For garbage-truck tracking, we use an ESP32 connected to a NEO-6M V2 GPS module and RC522 RFID reader. GPS provides truck-location data, while RFID can associate operations with an authorized driver or operator.

The IoT devices publish telemetry through MQTT, using EMQX as the MQTT broker. This enables realtime communication between devices, backend services, and the dashboard.

Our web dashboard is built with Next.js, React, TypeScript, Tailwind CSS, and shadcn/ui. Backend operations use oRPC, while Prisma and PostgreSQL manage persistent operational data.

Realtime MQTT data is displayed directly on the dashboard, allowing operators to monitor facility capacity and fleet movements as they happen.

Challenges we ran into

One of our biggest challenges was turning raw sensor data into information that is actually useful for operators.

Knowing that a container is "80% full" is not enough. The system needs to answer a more important question:

What should the operator do next?

This pushed us to think beyond IoT monitoring and design Rotom as a decision-support system.

Another challenge was combining physical IoT devices, GPS data, realtime MQTT communication, backend services, maps, and route optimization into one coherent architecture.

We also had to think carefully about unreliable sensor readings, intermittent connectivity, external message validation, GPS accuracy, and how realtime information should interact with persistent historical data.

Accomplishments that we're proud of

We're especially proud that Rotom goes beyond being another IoT dashboard.

We designed the system around an operational workflow:

Sense → Understand → Decide → Act → Analyze

Instead of simply showing sensor readings, Rotom connects waste-capacity information with fleet tracking and routing decisions.

We're also proud of building an end-to-end system that combines hardware, realtime communication, mapping, backend infrastructure, and user-centered product design.

Most importantly, Rotom demonstrates how relatively affordable IoT hardware can be combined with software to provide governments with greater visibility into physical public infrastructure.

What we learned

The biggest lesson we learned was that technology alone does not solve a problem better decisions do.

Initially, it was easy to focus on sensors, GPS modules, MQTT, and dashboards. Through the design-thinking process, we realized that these technologies only matter when they reduce uncertainty for the people operating the waste-management system.

We also learned the importance of designing IoT systems around imperfect real-world conditions. Sensors can fail, networks can disconnect, GPS coordinates can fluctuate, and data can arrive late.

Building Rotom taught us to think about the complete system rather than individual features: hardware, connectivity, data, software, users, and operational decisions all need to work together.

What's next for Rotom

Our next goal is to evolve Rotom from a monitoring platform into an intelligent waste operations system.

We also want to build anomaly detection for truck movements, helping authorities identify unusual routes, unauthorized stops, or suspicious disposal patterns.

In the longer term, Rotom could integrate additional parts of the waste-management ecosystem from collection points and transfer stations to processing facilities and landfills.

Our vision is simple:

Give cities the data they need to move from reactive waste collection toward proactive, efficient, and accountable waste management.

Built With

Share this project:

Updates