SafeSide allows ambulance drivers to reach emergencies with the control of traffic in their hands.


Rishab, who is from India, found that the high congestion of traffic in the city prevented important things to move around such as ambulance drivers reaching patients in time.

What it does:

Our software changes traffic lights at intersecting roads to allow incoming ambulance drivers to maintain traffic flow. The changing of traffic lights are controlled by sensors on the roads that detect the incoming ambulance.

How we built it:

We built a cardboard diagram to demonstrate how our software applies to real road networks. A network of lines and nodes are drawn on, which represent real-world roads and intersections. At every intersection, we lined up red, yellow, and green LEDs , representing traffic signals. And on each separate road, 2-way road, a phototransistor sensor is on both sides of the road. Underneath the diagram, the LEDs and phototransistors are wired to breadboards and a arduino uno controller and arduino clones.

Challenges we ran into:

Initially, we created a code based on Dijkstra’s algorithm that finds the shortest path between nodes in a graph, which is represented by the road network diagram. This was to be used coincidingly with the sensors so an ambulance could find the quickest route and control traffic flow. But because the sensors are practical by themselves and GPS exists, the "shortest distance had no purpose, which wasted more than half of our hacking time. Our second setback was figuring out how the sensors would know which direction the ambulance was coming at. We decided we would put two sensors on both sides of the road, one for each two-way street so the traffic lights will know what direction the ambulance is coming. We definitely needed the help of all of our team members but have of them were absent for most of the project, so it was difficult managing and dividing the work fairly. Also, we were running low on the proper wires to connect our LEDs to the Arduinos and breadboards. Also, the wires would not connect and so we needed tape and we used a conductive tape that caused faulty wiring, which messed up the circuits from functioning right when the program ran.

Accomplishments that we're proud of:

A lot of major setbacks came up but I’m very proud of how we did not let up and we kept solving every problem along the way. I also liked when we were hyperactive and focused and it really helped us get through small errors throughout the process.

What we learned:

Working on this project helped us learn to communicate and catch each other’s mistakes. We learned so many new skills and tips to programming and having the right mindset when working on a project like this. It's okay to feel stumped on something but it just means we have to come at a different angle or not over -complicate it.

What's next:

There were many implications and ideas we originally had that we wanted to add to the project, but we would love to add more of our original ideas to make the software more practical.

Built with:

We used an Arduino Uno, Arduino clones, four breadboards, a large sheet of cardboard, conductive tape, electrical tape, a lot of red, yellow, and green LEDS and a lot of wires.

Prizes we're going for:

Arteck HB030 Portable Keyboard

Call of Duty: Black OPS 4 (XBOX ONE)

$100 Amazon Gift Cards

LS20 Gaming Headset

Hustle Award

Grand Prize

Hacker gear & swag from

Misfit Shine 2

Raspberry Pi Arcade Gaming Kit

Team Members

Simon Nathans, Rishab Maheshwari, Brian Hoang, Ngan Nguyen, Cody Nguyen
View on Github