DJI Tello drone python interface using the official Tello SDK and Tello EDU SDK. This library has the following features:
- implementation of all tello commands
- easily retrieve a video stream
- receive and parse state packets
- control a swarm of drones
- support for python >= 3.6
Feel free to contribute!
pip install djitellopy
For Linux distributions with both python2 and python3 (e.g. Debian, Ubuntu, ...) you need to run
pip3 install djitellopy
Using the commands below you can install the repository in an editable way. This allows you to modify the library and use the modified version as if you had installed it regularly.
sudo apt-get install libavcodec-dev libswscale-dev libopus-dev -y
git clone https://github.com/damiafuentes/DJITelloPy.git
cd DJITelloPy
pip install -e .
cd lib/libmedia_codec
pip install -e .
See djitellopy.readthedocs.io for a full reference of all classes and methods available.
from djitellopy import Tello
tello = Tello()
tello.connect()
tello.takeoff()
tello.move_left(100)
tello.rotate_counter_clockwise(90)
tello.move_forward(100)
tello.land()
In the examples directory there are some code examples. Comments in the examples are mostly in both english and chinese.
- taking a picture
- recording a video
- flying a swarm (multiple Tellos at once)
- simple controlling using your keyboard
- mission pad detection
- fully featured manual control using pygame
- If you are using the
streamon
command and the response isUnknown command
means you have to update the Tello firmware. That can be done through the Tello app. - Mission pad detection and navigation is only supported by the Tello EDU.
- Bright environment is necessary for successful use of mission pads.
- Connecting to an existing wifi network is only supported by the Tello EDU.
- When connected to an existing wifi network video streaming is not available (TODO: needs confirmation with the new SDK3
port
commands)
- >1.5 Million views Youtube: Drone Programming With Python Course
- German magazine "Make": "KI steuert Follow-Me-Drohne" (paywall), authors notes, github repo
- Webinar on learn.droneblocks.io: "DJITelloPy Drone Coding", github repo
- Universities & Schools using DJITelloPy in projects or in class:
- Damià Fuentes Escoté
- Jakob Löw
- and more
This project is licensed under the MIT License - see the LICENSE.txt file for details