Three Steps to Code Your Own Flying Vehicle

Jake Lussier
Udacity Inc
Published in
4 min readFeb 6, 2018

Applications for our Flying Car Nanodegree program close at 11:59 p.m. PST on February 7th. We’re so excited to meet the engineers who will help build and define the future of flight! Apply today to join the pioneering inaugural class.

In this program, you’ll immerse yourself in the full-stack of autonomous aerial systems — from low-level controls to massive-scale system coordination. You will begin with drones, advance to flying cars, and, ultimately, tackle the challenge of entire fleets.

The Flying Car Nanodegree Program

The program is comprised of two terms: “Term 1: Aerial Robotics” and “Term 2: Intelligent Air Systems.” Across these two terms, you’ll learn cutting-edge technologies from the world’s leading flight pioneers, including Sebastian Thrun, Nicholas Roy, Angela Schoellig, and Raffaello D’Andrea. Plus, thanks to new content partnerships announced below, you’ll have access to software and hardware tools to gain hands-on experience and advance your career!

In this post, I’d like to share the three-step development path we’ve set up for you to get your own code on your own flying vehicle.

Step 1: Learn with interactive simulation (Python + Jupyter + Unity)

The first step towards real-world testing starts right in the Flying Car classroom. When you write Python code in a classroom Jupyter notebook, you can import Udacity’s flight API and immediately see your results in a Unity visualizer.

This workflow is optimized for learning, iteration, and visualization (sometimes even using real maps from real cities). For certain planning and coordination tasks where it is OK to use high-level languages, this will also serve as a realistic environment similar to an aircraft companion computer or a ground station. For these projects, students may even be able to independently run their Python code directly on their drones.

Caption: Python + Jupyter + Unity = simulation with little-to-no setup and ample learning tools and visualizations.

Step 2: Experiment with higher-fidelity simulation (realistic C++ sim courtesy of Fotokite!)

Certain low-level tasks require higher-fidelity testing in accurate and adaptable simulation. This is why we are extremely pleased to announce our content partnership with aerial drone maker, Fotokite! Fotokite is an innovative drone producer of reliable, easy-to-use drones that made headlines when they were selected for use by CNN.

With the benefit of Fotokite’s deep expertise, we offer an open simulator, written in C++, that provides job-ready experience implementing layers of the autonomous flight full-stack.

Step 3: Port and fly!

Porting code to an actual drone is an exciting step for a full-fledged autonomous flight engineer to take, and we’ve augmented our core curriculum with supplemental lessons like “Backyard Flier on a Drone” that will support your independent efforts to engage in hardware testing outside of the program. Within the program, our focus is on flight autonomy software, and no hardware purchase or testing is required.

If and when you do elect to take this step, we want to ensure you’re set up to succeed. You can choose any drone platform, but thanks to our colleagues at Bitcraze, we will have a special discount for the Bitcraze Crazyflie STEM drone bundle for students in our program! Once you’re enrolled, keep an eye on your inbox for additional details.

In the classroom, we will provide thorough instructions for the Crazyflie and for the Intel Aero drone, and your code should work with any PX4 compatible drone. In fact, we’ve designed our API’s so that this can be as easy as changing a single line of code!

Today, Applications. Tomorrow, The Future!

It’s difficult to capture the magnitude of what students in this program will be working towards — to say you’ll be building the future of flying cars hardly does justice to the full scope of what the next generation of engineers in this space stands to achieve. It’s wild that something as remarkable as a flying car should actually only be one component in a much larger vision, and yet, this is exactly the case. What we’re talking about is the future of mobility — literally, how and where we move.

Apply today to join the Flying Car community and build the future with us! I’m jake.lussier@udacity.com. Hope to see you in the classroom!

--

--

Jake Lussier
Udacity Inc

Flying Car Lead at Udacity. AI PhD at Stanford. Likes to invent and make good things better.