Challenge #4: Self-Driving Car Android Dashboard

Udacity Self-Driving Car Challenge #4

The Udacity Self-Driving Car

As detailed in this post, a critical part of our process in launching the Self-Driving Car Nanodegree program is to build our own self-driving vehicle. To achieve this, we formed a core Self-Driving Car Team with Google Self-Driving Car founder and Udacity President Sebastian Thrun. One of the first decisions we made together? Open source code, written by hundreds of students from across the globe!

We are now breaking down the problem of making the car autonomous into Udacity Challenges. The first challenge is complete, Challenge #2 and Challenge #3 are underway, and we’re now ready to introduce Challenge #4!

Challenge #4 — Now Open

As self-driving vehicles continue to capture the imagination of dreamers, builders, innovators, and engineers across the globe, it’s inevitable that radical new passenger experiences will come to life. Why have a steering wheel (and awkward analog controls) when level-5 autonomy is achieved? Although we aren’t quite ready to revolutionize the interior of our Udacity self-driving car, we do want to make self-driving feel approachable and user friendly.

An interior concept created by our Nanodegree partner Mercedes-Benz

Calling all Android engineers! Challenge #4 is all about building a user-friendly, fun, and engaging dashboard for our Udacity self-driving car. We’ve mounted an Android tablet in the car, and we’re ready to run your Android app to control and monitor core functions.

Inspiration perhaps? From a Tesla Model S

Challenge Overview

Our car is currently running an open source package called Autoware. We want to build an Android-powered dashboard that will connect seamlessly to Autoware to power and visualize the car.

We don’t want to build just any dashboard, though. We want something that lives up to the expectation of stepping into a self-driving car. It should be futuristic, slick, performant and above all: useful.

To really stand out with this challenge, you’ll need to push the envelope. What features could you build that are not only useful, but also “wow”-inducing? How can you balance all of the elements visually while making the dashboard performant? Tesla’s dashboard has almost zero lag, so that should be the aim here also.

We don’t want to be prescriptive on the feature-set of the dashboard (for fear of limiting creativity!), but you can take a look at an example Autoware Android app to get a sense for what’s possible. Don’t feel constrained, seek out what’s possible with Autoware!

Beautiful design is baked in to all Udacity products, and this dashboard is no different. We’ve created a Sketch style-guide that’s available for use in this challenge, and made it available on GitHub. We welcome contributions!

Our style-guide, which you can download here


First Place: One-time sum of $10,000
Second Place: Up to five Google Pixel phones (one per team member)
Third Place: A 60 minute 1:1 session with our Udacity Android team to talk apps

Win a Google Pixel!


Start Date: 10/11/2016
End Date: 11/11/2016

Essential Rules

  • Your app must be built to run on a Google Pixel C using the Android SDK.
  • Your app must feel like a Udacity product, using our color schemes, imagery, and look-and-feel.
  • One team per participant, one submission per team, no maximum team size. Teams must be formed by October 13th.
  • A submission will be considered ineligible if it was developed using code containing or depending on software that is not approved by the Open Source Initiative, or a license that prohibits commercial use.
  • Winners must submit runnable code (with documentation and description of resources/dependencies required to run the solution) with reproducible results within (1) week of being selected as the Challenge winner.
  • All code submitted will be open-sourced, and there should be no expectation of maintaining exclusive IP over submitted code.

For full contest rules, please read this.


Since this is a very creative project that will require subjective assessment, Udacity will form a panel of judges to decide the winners. We will take into account the following:

  • ReliabilityDoes it crash often?
  • PolishIs it beautiful?
  • PerformanceIs it responsive?
  • CreativityWhich feature—or features—makes the dashboard stand out?

We will open source the results of the judging, so you can hear and understand the reasoning behind our decision.

Frequently Asked Questions

Submission Format & Details

Teams will be able to submit their final results only once via email to The submission email must be accompanied by a list of teammates, team name, and code/documentation.

How do I get started?

  1. Submit your results to with code (preferably in a Git repo) and team information.

Here We Go!

Udacity is dedicated to democratizing education, and we couldn’t be more excited to bring this philosophy to such a revolutionary platform — the self-driving car! We anticipate this project to have an incredible impact on the industry, giving anyone access to the tools required to get an autonomous vehicle on the road. Help us achieve this dream by joining a team and competing in our challenges. Plus, if you’re looking to gain the skills necessary to launch a career building cars that drive themselves, we encourage you to check out our Self-Driving Car Engineer Nanodegree program.