Java

Overview: 
Instructions on how to download and install the Tello SDK that supports this course.
Objectives: 

Get the Tello SDK downloaded and installed into Eclipse so you can begin programming.

Content: 

The Tello SDK is an Eclipse ready Java project created to support programing the Tello. You can download it from GitHub as a zip file. On GitHub, click the green Clone or Download button and then click Download Zip. Then copy that zip file's top folder (Tello-SDK-master) to the Eclipse workspace folder established in the previous lesson

Once copied, rename the folder Tello-SDK-master to Tello-SDK. Then import the project into Eclipse: go to the Eclipse File menu and select Import. On the selection menu that appears, select General and on that menu select Existing Projects into Workspace. Next select the folder of the SDK project you created & renamed above. Click Accept to import the project.

The import process will take some time and  Eclipse may appear stuck at 50% but it is working and will eventually finish. The Tello-SDK project should appear in the Package Explorer window on the left.

Now test run the project. On the Eclipse toolbar will be a green arrow button which runs programs. Click the drop down arrow next to the green button. Next click Run Configurations. In the window that appears, click Java Application. Then click Tello. Now click the Run button lower right. This should execute the program. A console window should appear and display an error indicating the program executed but can't connect to a drone.

After doing this run procedure the first time, the green run arrow on the toolbar will remember and directly launch the Tello program when you click it.

Navigation:

Installing the Tello SDK

The Tello SDK is an Eclipse ready Java project created to support programing the Tello. You can download it from GitHub as a zip file. On GitHub, click the green Clone or Download button and then click Download Zip. Then copy that zip file's top folder (Tello-SDK-master) to the Eclipse workspace folder established in the previous lesson

Overview: 
Learn how to install the Java SDK and the Eclipse IDE.
Objectives: 

Have the Java SDK and Eclipse IDE installed and ready to use.

Content: 

To write Java programs you need the Java SDK and an Interactive Development Environment (IDE) .We will use Eclipse for the IDE. 

Here is a link to download the Java SDK 11, required by the Tello-SDK project. SDK 11 only comes in 64 bit form. When installing the JDK, you only need the Development Tools, so you can X out source code.

The minimum version of Eclipse for programming the Tello is Photon (4.8). The recommended package is the Eclipse IDE for Java Developers. Eclipse requires the Java Run Time (JRE) 8 (1.8) in 64 bit form. Download it here if you do not already have it. Install this JRE before installing Eclipse. You can then download Eclipse here. The current version of Eclipse is only available in 64 bit form.

Eclipse is delivered in a .zip file. To install, simply unzip the eclipse folder from the zip to any directory you wish, though Program Files is a good place. To run Eclipse, double click the eclipse.exe file in the eclipse folder. It is best to create a shortcut to the executable file and place the shortcut on your desktop. Eclipse does not modify the Windows registry. To delete Eclipse, simply delete the Eclipse directory.

A regular installer (.exe) is also available though you may have to run it as an Administrator to get it to install Eclipse in the Program Files directory. The installer exe will create the desktop shortcut for you. It will also install the JRE for you.

The first time you run Eclipse it will prompt you for a workspace location. It is probably best to go with the default shown in the prompt. The workspace is a folder where your Java projects will be stored. Select Use this as the default to not be prompted for the workspace folder each time you run Eclipse.

When Eclipse opens you will see the Welcome screen. Uncheck Always show Welcome at start up in the lower right corner. Then in the upper left corner, below the File menu will be a small icon that looks like two folders (called Restore). Click on it to display the Java editing view. Now close the Welcome, Task List, Outline, Problems, Javadoc and any other windows at the bottom of the screen. You should have just the Package Explorer window on the left and the blank editing area on the right.

It is best to configure Eclipse to automatically search for updates. On the Eclipse menu bar, click Window -> Preferences. Double click Install/Update in the Preferences list. Highlight Automatic Updates. Check the option to Automatically find new Updates and Notify me. Click Ok. This will help keep Eclipse updated.

Here are several resources to help you learn more about Eclipse and how to use it beyond what is covered in our lessons:

Video Tutorial

Tutorials Point Eclipse Guide

Vogella Eclipse Tutorial

Official Eclipse Java Tutorial

 

Navigation:

Installing the Java SDK and Eclipse IDE

To write Java programs you need the Java SDK and an Interactive Development Environment (IDE) .We will use Eclipse for the IDE. 

Here is a link to download the Java SDK 11, required by the Tello-SDK project. SDK 11 only comes in 64 bit form. When installing the JDK, you only need the Development Tools, so you can X out source code.

Overview: 
Install Tello software on your phone in order to configure the drone for network access.
Objectives: 

Get your Tello drone ready to use for this course.

Content: 

Once you have your Tello in hand, you can download the Tello App. The app will allow you test communications and get an introduction to operating the Tello. The app will also check the firmware version on the drone and allow you to update if needed. The Tello app is an example of a program written to control the drone remotely, very much like the programs you will learn to write. You can find documentation on how to operate the drone in the Tello User Manual found here or the Tello EDU User Manual found here.

You can find the Tello App on Google Play by searching for Tello. There are also links to the app on the manual download pages listed above. Use the manuals and app to familiarize yourself with drone controls and operation. Practice flying the drone with the app..

You can find more Tello resources at the official Tello web site.

Note: Programming the Tello takes a lot trial and error and repeated flying. Having multiple batteries and a charger that can handle multiple batteries is highly recommended.

Note: The basic Tello firmware should be version 01.04.91.01 or later. The Tello EDU firmware should  be 2.04.90.01 or later.

Navigation:

Getting the Tello Ready

Once you have your Tello in hand, you can download the Tello App. The app will allow you test communications and get an introduction to operating the Tello. The app will also check the firmware version on the drone and allow you to update if needed. The Tello app is an example of a program written to control the drone remotely, very much like the programs you will learn to write.

Introduction

This lesson is the first in the "off ramp" unit for Tello programmers. This unit contains a detailed exploration of writing Java programs for the control system used on Tello drones. 

We have been learning a lot about the Java programming language. Now its time to explore how we actually write, compile and execute Java programs that control the Tello.

Overview: 
Introduction to Java programming for the Tello drones.
Objectives: 

Introduce the main concepts of the Tello drone control system and programming it in Java.

Content: 

This lesson is the first in the "off ramp" unit for Tello programmers. This unit contains a detailed exploration of writing Java programs for the control system used on Tello drones. 

We have been learning a lot about the Java programming language. Now its time to explore how we actually write, compile and execute Java programs that control the Tello.

The Tello comes in two models, the basic Tello and the more capable Tello EDU. This curriculum works with both models but some of the lessons covering more advanced capabilities require the EDU. We will call out the differences between the two models as you go through this course. The EDU model will provide the best results.

Tello drones are different than the previous robotics platforms we have discussed. The Tello does not support the downloading of code to be executed on the drone. Tello control programs run on a separate device from the drone, in our case a Windows PC. Such programs remotely control the drone though commands sent to the drone over WiFi. The program running on the PC also receives status information and video sent back by the drone. In this model, the Tello is truly an ROV, or Remotely Operated Vehicle.

While the drone has some limited autonomous capability, pretty much anything it does is controlled by a program running on the remote device. There are several phone based apps provided by DJI to operate the Tello. In this unit you will learn how to write your own PC programs to operate the Tello. With the knowledge gained here you could go on to write your own phone app to control the Tello.

To work with the Tello you will need several hardware items and software tools:

  • Tello or Tello EDU drone
  • Tello drone phone-based control app
  • Video game controller
  • Java SDK
  • Eclipse IDE
  • Tello SDK for this course

We will cover where to get the software tools and how to install them in following lessons. After that, we will get into the details of programming the Tello.

 

Navigation:

Customization Description: 
West Sound Academy - Introduction to Programming Robots with Java.
Overview: 

This course is intended to introduce the Java programming language to students using the EV3 (FLL), Tetrix (FTC) and RoboRio (FRC) robotics platforms. For EV3, the course moves the student away from block based robot programming to using a text based programming language. For Tetrix and RoboRio, the course will provide more instruction in Java itself, which is missing in existing materials. The course will teach a basic competency in Java with a focus on robotics applications. Robot construction will not be covered in any depth as it is assumed the student will have or acquire hardware building skills separately. The course is targeted to beginners and there are no prerequisites.

Get started using this course by clicking the first Unit and then the first Lesson. The Lesson content will be displayed and next/previous lesson buttons will appear at the bottom of each lesson making it easy to move between adjacent lessons.

Education Level: 

Pages