1 - Preface

RoboMaster TT is the first open-source educational drone from DJI. For making this drone more in conformity with the spirit of open-source and getting close to the core of Youth Science & Technology Innovation Education, DJI has officially cooperated in-depth with DFRobot, a leading international open-source hardware company, to combine its RoboMaster TT with DFRobot graphical programming software Mind+, aiming to bring professional educational solutions and tools for teachers and students. Mind+ is designated as the official graphical programming software platform for this drone.

Moreover, since Mind+ supports an extensive range of hardware libraries and user-defined extension library function, DFRobot's open-source hardware products are also recommended as the third-party external hardware for RoboMaster TT, which enables several advances for this drone.

img

2 - RoboMaster TT

RoboMaster TT consists of two parts:

Connect the two parts with a micro USB cable, activate the WIFI module for communication.

3 - Mind+

Mind+ can control Tello EDU in real-time via WIFI on a computer or program the ESP32 controller on the extension module to operate Tello EDU.

Therefore, there are four ways to play with RoboMaster TT on Mind+:

  1. Online Mode —— Single-Player Mode
  2. Online Mode —— Multi-Players Mode
  3. Offline Mode —— ArduinoC Programming
  4. Offline Mode—— MicroPython Programming

>3.1 - Online Mode VS Offline Mode

In Mind +, if the program runs on the computer immediately after programming, it is Online mode programming. In contrast, if the program needs to be uploaded to the third-party hardware to run after programming, and it is Offline mode programming.

Therefore, for RoboMaster TT, under Online mode, it can be directly programmed and controlled in real-time when connected with the WIFI in your computer. Once the WIFI disconnected, the set program will not be executed. In Offline mode, you need to connect the ESP32 on the extension module to your computer with a USB cable, then download the program into the ESP32 chip. The drone can still perform the set program when disconnected.

>3.2 - Video Tutorial

Click to watch the complete video

4 - Preparation

Before using, adjust the drone to the latest default status to better realize the effects described in this document.

>4.1 - Update Tello EDU Firmware

Please use DJI official Tello EDU mobile APP to update the firmware to the latest version according to the Tello EDU Instruction.

Note: do not connect the extension module when updating EDU firmware, that is, the WIFI name should be Tello-xxxx.

>4.2 - Install Driver

The extension module is programmed on Mind+ by USB port, so you need to install driver when using Mind+ to connect the extension module for the first time.

  1. Connect the extension module to a computer with a USB cable.
  2. Open Mind+, click "install serialport driver" in "Connect Device" on the menu bar. The driver installation box will pop up, click next or OK to complete it.
  3. If there are any problems during installation, click the link to check the detailed steps: https://mindplus.dfrobot.com.cn/zhunbei

>4.3 - Restore Extension Module Firmware

Since the extension module is programmable, if it already has codes inside, then in Online mode, the program wrote for controlling the drone will not work. Thus, it is necessary to reset the extension module to default.

5 - Play in Online Mode

This part briefly introduces the basic ways to play RoboMaster TT under Mind+ Online mode.

Note: it is compatible with parts of functions of Tello EDU except the extension module, such as LED matrix control.

>5.1 - Single-Player Mode

Preparation

Control

  1. Open Mind+, switch to "Online Mode", click "Extensions"->"Function"->"RoboMaster TT(Stand-alone)", then back to the main interface.
  1. Connect the WIFI named as RMTT-xxx or Tello-xxx.

Note:

  1. When connected successfully, a green tick will appear in the box marked below with red. The drone indicator flashes in purple (RMTT) or green(Tello EDU), which means all works fine, now you can program to control it.
  1. To begin with, turn on the real-time display of battery power and drone temperature. When the battery power is not enough, then the drone flipping command will not be executed. If the temperature is too high, it will auto shut down.
  1. Click the block or drag out the block to the editing section, the related command will be executed. In the "propeller start mode", the propellers spin without flying the drone, which enables to cool the drone when landed on the ground. The drone should exit the "propeller start mode" before taking off.
  1. Program Test. Put the drone in an open space.

Note: each program waits until the action is executed before moving to the next command, also, blocking command.

Block Description

>5.2 - Multi-Player Mode

Connect multiple drones and a PC to the same router, then the computer can send commands to different drones to realize multi-drones control.

Preparation

Drone Setup

First of all, we have to record the SN code or WiFi name of the drone. It can be found in Tello EDU battery holder, mobile APP, product package box, or single-player mode. Here we will show you how to get drone SN code via Mind+.

  1. First set the single-player mode(also stand-alone mode), then the SN code can be get by using the block "Tello SN code". Record the SN code.

Then, connect the drone into the Route WiFi: Note: a quality network is required for the multi-players mode. So it is recommended to use a dedicated router to let the computer and drone access 5.8G WiFi, and disable other network cards in the computer.

  1. Set the router WiFi the drone will connect to. The following block will be used. Fill in the WiFi name and password, then click to run.
  1. Turn the switch on the RMTT extension module to STA mode. Wait for the drone to connect to the WiFi. It will automatically enter "propeller start mode" when connected.

We can also check if the drone is connected to the WiFi through the router background.

Follow the steps above to record SN code of each drone and get them connected to the WiFi.

Drone Control

Load the RoboMaster TT(team) blocks. Do not mix block of two modes in use.

To better control multiple drones, we can number all drones using the related block. As shown below, input the drone SN codes and number them as 1 and 2. Then scan drones in the computer network.

Turn on the drone that has switched to STA mode, wait for the drone to connect to the WiFi, and then its propellers will automatically start spinning. Run the program below to search for the drone. When the drone's indicator changes from yellow to purple, the drone is found.

Note:

Check the drone status.

Multi-Drones flying test.

Block Description

6 - Play in Offline Mode

This chapter will mainly show you how to program RMTT extension module under Mind+ Offline mode.

RoboMaster TT is equipped with an ESP32 chip the as main-controller. Mind+ supports two programming languages: ArduinoC and MicroPython. The former has more functions and its extension functions are more suitable for beginners while the latter has less function relatively, but is a good choice for users who want to learn Python.

>6.1 - ArduinoC Programming

Preparation

Start to Control

  1. Switch Mind+ to Offline mode. Select RoboMaster TT(ESP32) in Extension->Board. Connect the extension module to your computer with USB cable.

  1. Write a simple blink program, select COM port at Connect Device, click Upload, then see the result.
  1. Flight control. Write a fly program, disconnect the USB cable when the program is uploaded. Connect the extension module to the Tello EDU drone, then turn it on.

  2. Wait for the drone indicator to light up in green, then press the button on the extension module(Drone guard system, the drone will fly only when "Fly control" block is used after pressing the button). Then the light color changes to red, the drone starts flying. Blue for hovering, green for landing.

Coding Manually

You can directly write code into Mind+ for compiling and uploading. Especially for sensors that Mind+ does not support currently, you can input code manually onto Mind+ to control them.

Please note that when click "Upload", if the code input area is in Auto Generate mode, then the program uploaded is the corresponding graphical code. Normally, the two can coexist without conflicts,

For example, read the external URM10(SR04) ultrasonic sensor by manually editing.

User Extension Library

Mind+ extension library is opened, so users can import external Arduino library by this function, and program manually or design their graphical blocks to control.

For more details, please refer to Mind+ User-defined Library Tutorial.

Block Description

>6.2 - MicroPython Programming

Preparation

Start to Control

  1. Switch Mind+ to Offline Mode, select RoboMaster TT(ESP32) in Extension->Board. Connect the extension module to your computer with USB cable.

  1. Switch the coding language to MicroPython. The codes will be turned to MicroPython syntax. Select COM port at the "Connect Device", then the MicroPython firmware will be burned automatically.
  1. Write a program to switch light color, click Run to check the result. Since the compilation process is omitted in the MicroPython mode, the program uploading speed is faster.

Block Description

>6.3 - Tutorial: IR Remote Controlled Drone

Mind+ supports a large number of open-source hardware, so users can connect various components to RMTT to realize all kinds of effects.

This tutorial will be using an IR receiver module to control the RMTT drone.

Preparation

Hardware Connection

img

Software Programming

Video Demo: Click to watch

Advanced Extension

More Tutorials

*Click to view: * ROBOMASTER TT Drone Programming Teaching Development Competition

7 - FAQ

Q1. Can the Tello Non-RMTT version be programmed on Mind+?
Common versions are not supported. EDU version can be used under Online mode +Team Control function. For RMTT version, all functions are available including in Offline mode.
Q2 Cannot find WiFi or Tello EDU under Online Mode, or WiFi disconnects immediately after a successful connection.
First, make sure your computer and drone are in the same network, and drone firmware are all in the latest version.
S1 Turn off the network card and restart the computer. If the device cannot be found, please disable all network cards except the one you have to use, then restart the computer and search. It is recommended to use Windows 10.
S2 Disable the firewall. Firewalls have an impact on network connection, disable the Windows firewall in the control panel.
Q3 Failed to access port 8889, what should I do?
Click the block "disconnect" in team mode, or restart the software, reduce the number of scanning operations. If it still cannot be solved, give us feedback via email.
Q4 Why there is a big delay when doing the actions in team mode?
In team mode, please use the dedicated router and make sure all drones and your computer are accessed to the router 5.8G WiFi instead of 2.4G WiFi (If your router has channel setting function, you can set 5G channel to 149).
Q5 I can only find the WiFi starting with Tello, but not WiFi RMTT-XXX, why is that?
First of all, please make sure the extension module is connected to the Tello EDU before starting it, and dial the switch on that module downward(mobile symbol side). Then, since the extension module WiFi is default to 5GHz, you have to check if your mobile phone or PC supports 5GHz. If not, you can revise the channel of the module in this way: get a phone that can connect to RMTT, turn on the Tello EDU, set the communication channel to 1-13(2.4G band) in the external module. Run program then the 2.4G mobile phone can be used.
Q6 How can I fix a sensor onto RMTT?
3D print a component to fix it: click to download img
Q7 What is the I2C pin of the RMTT extension board?
SDA:IO27 , SCL:IO26