DroneBlocks Basics

Overview

DroneBlocks is an online tool that provides a complete drone related education, from curriculum to physical drones. Currently, their product line contains drone curriculum, drones for sale, software, support, and professional development. Their URL is: https://www.droneblocks.io/.

The courses offered by DroneBlocks cover most drones, however it is primarily geared towards the Tello drone. Course offerings include programming with Python, using the DroneBlocks Simulator, and programming challenges.

DroneBlocks Products:

  • DroneBlocks App: Block based programming app for drones, very intuitive for beginners to learn the logic behind programming a drone to fly somewhere, available as an app and a chrome toolbar.
  • DroneBlocks Simulator: Essentially a visual output for the App, where block code can be used to simulate drone flight, either through challenge rings or just on a free plane.
  • Curriculum: Drone lessons geared towards the Tello Drone. Lessons go from beginners guides to drone programming with various languages to challenges.

Ideally, it would make sense to start with the App/Simulator to get familiar with programming as a beginner, then head to the courses and work with the Tello Drone itself.

Login Process

To use the DroneBlocks curriculum, go to the login page and enter your login information: https://sso.teachable.com/secure/94245/identity/login

To get a login, check with your teachers or send an email to ARC at aero.robotics.comp@gmail.com.

After logging in, you will be greeted by the home screen:

Course Overview

This section will be an overview of each of the courses offered, giving a small brief on what each course covers.

Troubleshooting Tello: This course goes over various faults that may occur during the usage of a Tello drone and how to fix them. Topics are covered such as safely using a drone in a classroom/enclosed space, and part such as batteries or propellers.

Introduction to Tello Drone Programming: Ideally the first lesson to be taken. Introduces Tello and the DroneBlocks software, and covers basic block programming skills such as loops, variable definitions, and logic statements.

Tello Block Coding – Math Edition: Programming challenges using the block programming style, highlighting math related challenges particularly.

The DroneBlocks Simulator: Covers the DroneBlocks Simulator, with challenges to test knowledge. This would be the simulator version of the “Introduction to Tello Drone Programming” course.

Introduction to Tello EDU Drone Programming with DroneBlocks: Like the Intro to Tello Drone Programming course, this course goes over programming the EDU drone using DroneBlocks and doing various tests and challenges.

Advanced Tello Programming with DroneBlocks: Advanced coding techniques like nested loops, sine waves, and 3d visualization.

Advanced DroneBlocks with Functions: An unfinished lesson containing the creation of functions and management of functions, including recursive and polygonal functions.

Tello & Art Presents: Dance: Programming challenges with relation to dance and music.

Tello Challenges from Italy with Mr. Torelli - Part 1: Various programming challenges made by Mr. Torelli, with inspiration from Italy.

Tello Drone Programming with Python - Video Course: Introduction to programming a Tello Drone using Python.

OpenCV, Python, and DroneBlocks for Tello Camera Control: A course overviewing how to control the camera on a Tello Drone using tools such as OpenCV, Python, and DroneBlocks.

Advanced Tello Programming with Python 3 and OpenCV - Course 1/3: Advanced programming techniques such as using the Jupyter Notebook, Tello Video, and Script Runners.

Advanced Tello Programming with Python 3, OpenCV, and ArUco Markers - Course 2/3: Part 2 of the advanced programming course with techniques like point and click flying and ArUco Marker detection .

Advanced Tello Programming: When Art Meets Technology - Course 3/3: Part 3 of the advanced programming course which goes over image detection and processing.

Introduction to JavaScript Programming with DroneBlocks Code: Programming the Tello Drone with JavaScript. Topics such as variables, loops, and functions are covered.

Node-RED Programming with Tello and Tello EDU: Introduces a visual programming interface known as Node-RED. Topics such as mission box flows, dashboard navigation, and swarms are introduced.

Healthcare in the Himalayas Challenge: Provides a drone challenge with respect to providing healthcare in the Himalayas.

DroneBlocks Membership: Handily organizes all lessons.

DJITelloPy Drone Coding: Programming the Tello Drone using the DJITelloPy API.

Recommendations

To effectively use DroneBlocks, our recommendation is to start with the Introduction to Tello Drone Programming, and Introduction to Tello EDU Drone Programming with DroneBlocks lessons. This would be ideal for beginners to dip their feet into the DroneBlocks system, learning the basics of block style programming. It will get you started and give you enough knowledge to perform some tests on your own. Then, go to The DroneBlocks Simulator lesson. With the simulation lesson, you can learn how to use the simulator, which would be good if you do not always have access to the drone. It builds upon the block style programming, just the output is a simulation instead of a real-life drone. Once you are comfortable with the basics, move to the advanced lessons. Start with the Advanced Tello Programming with DroneBlocks lesson, then move to some of the challenges. While not all the challenges directly use the block programming, they may still be able to be completed using the blocks. After you believe you are strong with the blocks, move to some of the programming languages, such as Tello Drone Programming with Python - Video Course. Like block programming, start with the introduction, practice on the Tello drone, then move to the advanced course and challenges. The simulator does not use Python, so the programming languages will have to be practiced on a physical drone. If there are issues, check the Troubleshooting lesson.

While not all the lessons have to be watched, going through the lessons will surely improve your knowledge in drone programming, and maybe help you understand more of the dynamics behind how the code affects the drone. The best way to go through things is to watch a lesson video, then try practicing it on the Drone/Simulator. Taking notes can also help retain information.