Tello drone library including support for video streaming, swarms, state packets and more
Project description
DJITelloPy
中文文档 (Chinese version of this readme)
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!
Install using pip
pip install djitellopy
For Linux distributions with both python2 and python3 (e.g. Debian, Ubuntu, ...) you need to run
pip3 install djitellopy
Install in developer mode
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.
git clone https://github.com/damiafuentes/DJITelloPy.git
cd DJITelloPy
pip install -e .
Usage
API Reference
See djitellopy.readthedocs.io for a full reference of all classes and methods available.
Simple example
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()
More examples
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
Notes
- 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)
DJITelloPy in the media and in the wild
- >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:
Authors
- Damià Fuentes Escoté
- Jakob Löw
- and more
License
This project is licensed under the MIT License - see the LICENSE.txt file for details
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file djitellopy-2.5.0.tar.gz
.
File metadata
- Download URL: djitellopy-2.5.0.tar.gz
- Upload date:
- Size: 16.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fae6c9a353404a61ce362c6766efe0d23cf559fdeaf60cbc72c75e4896d780cd |
|
MD5 | d379dbe86f9d05907c659e0281854d92 |
|
BLAKE2b-256 | fe820717caed52cfa427c12a0cabf2ff91f9a2c9f94acf73206c5c2be9992595 |
File details
Details for the file djitellopy-2.5.0-py3-none-any.whl
.
File metadata
- Download URL: djitellopy-2.5.0-py3-none-any.whl
- Upload date:
- Size: 15.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 525e9072dfb53a1f43051b6a8cbe33737def8430e8bf7b838c44a4c485c961e8 |
|
MD5 | fc3d36855b8124b5d155e4dcb9876c35 |
|
BLAKE2b-256 | a7068da29bca8ec949043b840e00cad95ba96d3ad31cbec20cad2d409c0c7e37 |