Drone Coding With Python

Course Overview

The Python course with a focus on Drone Programming will introduce students to the world of unmanned aerial vehicles and their control using the Python programming language. The course will cover the basics of programming with Python, as well as the specific principles and techniques needed for programming drones. Students will learn about drone architecture, flight control systems, navigation, and communication protocols, and will use Python to develop simple drone control programs. Throughout the course, students will work on projects that simulate real-world drone applications and will gain hands-on experience with programming drones using Python. This course will prepare students to participate in the annual national ariel drone competition. This course is perfect for those who are interested in the intersection of computer science and aeronautics, and want to develop their programming skills in a cutting-edge field.

Competition Manual

Next Ariel Drone Competition












Live Instruction

Getting Started

0.1 - Introduction To Drone

Introduction to drone

Before you can start flying and programming the Drone, you need to learn more about your drone and set up your device for programming.

0.2 - Taking care of your drone

Taking care of your drone

In this lesson, you will learn how to maintain your Drone in its best shape to maximize your experience!

0.3 - Powering, Pairing, and Charging

Powering, Pairing, and Charging

Let's learn how to power on, charge, and pair your drone!

0.4 - Software Installation

Software Installation

To use the Drone with Python, you will need to follow a few steps to get up and running, install Python and install Pycharm.

0.5 - How to run Python code

How to run Python code

Now that you have everything set up on your computer, learn the steps of programming and running code using Python.

0.6 - Setting the Trim

Setting the Trim

In this lesson, you will learn how to trim your drone. Refer back to this lesson whenever you need to trim your drone!


1.1 - Flying Drone With Controller

Flying Drone With Controller

Let's learn to fly with the remote control!

1.2 - First Flight

First Flight

So you know how to fly the drone with a remote, but can you code it to fly as well? Check out to see what you will learn in this lesson!

1.3 - Hover and Trim

Hover and Trim

So we got off the ground but went right back down! Now we will learn how to stay in the air longer and make sure our drone doesn't drift away.

1.4 - Roll and Pitch

Roll and Pitch

Now that we can stay of the ground and in the same place, let's learn how to move forward, backward, and side to side!

1.5 - Throttle and Yaw

Throttle and Yaw

Now that we know some basic movements, lets go a little deeper by making our drone go higher!

1.6 - Variables Part 1: Data Types

Variables Part 1: Data Types

You might know variables from math, but in this lesson we will learn about variables in programming and how to use them.

1.7 - Variables Part 2: Variables Take Flight!

Variables Part 2: Variables Take Flight!

Now that we know how to create and use variables, let's create some programs that use their abilities.

1.8 - For Loops

For Loops

Tired of repeating yourself? Code getting too long and repetitive? We have the perfect solution! Loops!

1.9 - While Loops

While Loops

In this lesson, you will learn how while loops work and how you can use them in your drone programs.

1.10 - Conditionals


In this lesson, you'll learn how conditionals work and use them to fly your drone.

1.11 - User Input

User Input

Changing your drone's variables on the fly? No problem!

1.12 - User Input Controller

User Input Controller

Now that we know how to take in user input, let's make our own controller for the drone using nothing but our keyboard!


2.1 - LED


Learn how to choose patterns, select LED (Light Emitting Diode) colors, and add the LED to your flight program.

2.2 - Lists


In this lesson, you’ll learn about lists, which can hold multiple pieces of data at the same time!

2.3 - Void Functions

Void Functions

Writting our own custom commands! That is what we will learn in this and the next lesson!

2.4 - Return Functions

Return Functions

Want to create a function to give you back some information? Well, you can do that with the RETURN statement!

2.5 - Random


Let's learn how our drone can act like it has a mind of its own. You can do that with random values!

2.6 - Timers


Let's explore how timers can be used to track information about our flights and make decisions.


3.1 - Sensors Introduction

Sensors Introduction

In this lesson, we will get a general understanding of how sensors can be used to make more intelligent programs.

3.2 - Battery


Learn how to program your drone to let you know when the battery is low.

3.3 - Temperature and Air Pressure

Temperature and Air Pressure

In this lesson, your drone can and read and print both its temperature and air pressure.

3.4 - Height Sensor

Height Sensor

In this lesson, you are going to use the barometer to measure your drone’s altitude!

3.5 - Gyroscope


In this lesson, you will learn how your drone's gyroscope works and how to program it.

3.6 - Front Range Sensor 1

Front Range Sensor 1

In this lesson we will learn the basics of the front range sensor located on the front of the drone.

3.7 - Front Range Sensor 2

Front Range Sensor 2

In this lesson we will learn how to use the front range sensor to fly our drone autonomously!

3.8 - Color Classifier

Color Classifier

In this lesson we will learn how to access and use the color sensor located on the bottom of the drone.

3.9 - Custom Controller

Custom Controller

In this lesson we will learn how to create a custom controller with Python code using the drone controller!

3.10 - Screen Drawing

Screen Drawing

In this lesson we will learn how to draw on the drone controller screen using code!