djitellopy


Namedjitellopy JSON
Version 2.5.0 PyPI version JSON
download
home_pagehttps://github.com/damiafuentes/DJITelloPy
SummaryTello drone library including support for video streaming, swarms, state packets and more
upload_time2023-06-09 16:31:21
maintainer
docs_urlNone
authorJakob Löw
requires_python>=3.6
licenseMIT
keywords tello dji drone sdk official sdk
VCS
bugtrack_url
requirements numpy av pillow
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # DJITelloPy
## [中文文档 (Chinese version of this readme)](README_CN.md)

DJI Tello drone python interface using the official [Tello SDK](https://dl-cdn.ryzerobotics.com/downloads/tello/20180910/Tello%20SDK%20Documentation%20EN_1.3.pdf) and [Tello EDU SDK](https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf). 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](https://djitellopy.readthedocs.io/en/latest/) for a full reference of all classes and methods available.

### Simple example
```python
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](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/) directory there are some code examples.
Comments in the examples are mostly in both english and chinese.

- [taking a picture](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/take-picture.py)
- [recording a video](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/record-video.py)
- [flying a swarm (multiple Tellos at once)](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/simple-swarm.py)
- [simple controlling using your keyboard](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/manual-control-opencv.py)
- [mission pad detection](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/mission-pads.py)
- [fully featured manual control using pygame](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/manual-control-pygame.py)

### Notes
- If you are using the `streamon` command and the response is `Unknown 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](https://youtu.be/LmEcyQnfpDA?t=1282)
- German magazine "Make": ["KI steuert Follow-Me-Drohne" (paywall)](https://www.heise.de/select/make/2021/6/2116016361503211330), [authors notes](https://www.jentsch.io/ki-artikel-im-aktuellen-make-magazin-6-21/), [github repo](https://github.com/msoftware/tello-tracking)
- Webinar on learn.droneblocks.io: ["DJITelloPy Drone Coding"](https://learn.droneblocks.io/p/djitellopy), [github repo](https://learn.droneblocks.io/p/djitellopy)
- Universities & Schools using DJITelloPy in projects or in class:
    - [Ball State University in Muncie, Indiana](https://www.bsu.edu/)
    - [Technical University Kaiserslautern](https://www.uni-kl.de/)
    - [Sha Tin College, Hong Kong](https://shatincollege.edu.hk/)
    - [University of São Paulo](https://www5.usp.br/)
    - [add yours...](https://github.com/damiafuentes/DJITelloPy/edit/master/README.md)

## Authors

* **Damià Fuentes Escoté**
* **Jakob Löw**
* [and more](https://github.com/damiafuentes/DJITelloPy/graphs/contributors)

## License

This project is licensed under the MIT License - see the [LICENSE.txt](LICENSE.txt) file for details

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/damiafuentes/DJITelloPy",
    "name": "djitellopy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "tello,dji,drone,sdk,official sdk",
    "author": "Jakob L\u00f6w",
    "author_email": "djitellopy@m4gnus.de",
    "download_url": "https://files.pythonhosted.org/packages/fe/82/0717caed52cfa427c12a0cabf2ff91f9a2c9f94acf73206c5c2be9992595/djitellopy-2.5.0.tar.gz",
    "platform": null,
    "description": "# DJITelloPy\n## [\u4e2d\u6587\u6587\u6863 (Chinese version of this readme)](README_CN.md)\n\nDJI Tello drone python interface using the official [Tello SDK](https://dl-cdn.ryzerobotics.com/downloads/tello/20180910/Tello%20SDK%20Documentation%20EN_1.3.pdf) and [Tello EDU SDK](https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf). This library has the following features:\n\n- implementation of all tello commands\n- easily retrieve a video stream\n- receive and parse state packets\n- control a swarm of drones\n- support for python >= 3.6\n\nFeel free to contribute!\n\n## Install using pip\n```\npip install djitellopy\n```\n\nFor Linux distributions with both python2 and python3 (e.g. Debian, Ubuntu, ...) you need to run\n```\npip3 install djitellopy\n```\n\n## Install in developer mode\nUsing 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.\n\n```\ngit clone https://github.com/damiafuentes/DJITelloPy.git\ncd DJITelloPy\npip install -e .\n```\n\n## Usage\n### API Reference\nSee [djitellopy.readthedocs.io](https://djitellopy.readthedocs.io/en/latest/) for a full reference of all classes and methods available.\n\n### Simple example\n```python\nfrom djitellopy import Tello\n\ntello = Tello()\n\ntello.connect()\ntello.takeoff()\n\ntello.move_left(100)\ntello.rotate_counter_clockwise(90)\ntello.move_forward(100)\n\ntello.land()\n```\n\n### More examples\nIn the [examples](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/) directory there are some code examples.\nComments in the examples are mostly in both english and chinese.\n\n- [taking a picture](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/take-picture.py)\n- [recording a video](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/record-video.py)\n- [flying a swarm (multiple Tellos at once)](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/simple-swarm.py)\n- [simple controlling using your keyboard](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/manual-control-opencv.py)\n- [mission pad detection](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/mission-pads.py)\n- [fully featured manual control using pygame](https://github.com/damiafuentes/DJITelloPy/tree/master/examples/manual-control-pygame.py)\n\n### Notes\n- If you are using the `streamon` command and the response is `Unknown command` means you have to update the Tello firmware. That can be done through the Tello app.\n- Mission pad detection and navigation is only supported by the Tello EDU.\n- Bright environment is necessary for successful use of mission pads.\n- Connecting to an existing wifi network is only supported by the Tello EDU.\n- When connected to an existing wifi network video streaming is not available (TODO: needs confirmation with the new SDK3 `port` commands)\n\n## DJITelloPy in the media and in the wild\n- \\>1.5 Million views Youtube: [Drone Programming With Python Course](https://youtu.be/LmEcyQnfpDA?t=1282)\n- German magazine \"Make\": [\"KI steuert Follow-Me-Drohne\" (paywall)](https://www.heise.de/select/make/2021/6/2116016361503211330), [authors notes](https://www.jentsch.io/ki-artikel-im-aktuellen-make-magazin-6-21/), [github repo](https://github.com/msoftware/tello-tracking)\n- Webinar on learn.droneblocks.io: [\"DJITelloPy Drone Coding\"](https://learn.droneblocks.io/p/djitellopy), [github repo](https://learn.droneblocks.io/p/djitellopy)\n- Universities & Schools using DJITelloPy in projects or in class:\n    - [Ball State University in Muncie, Indiana](https://www.bsu.edu/)\n    - [Technical University Kaiserslautern](https://www.uni-kl.de/)\n    - [Sha Tin College, Hong Kong](https://shatincollege.edu.hk/)\n    - [University of S\u00e3o Paulo](https://www5.usp.br/)\n    - [add yours...](https://github.com/damiafuentes/DJITelloPy/edit/master/README.md)\n\n## Authors\n\n* **Dami\u00e0 Fuentes Escot\u00e9**\n* **Jakob L\u00f6w**\n* [and more](https://github.com/damiafuentes/DJITelloPy/graphs/contributors)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.txt](LICENSE.txt) file for details\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Tello drone library including support for video streaming, swarms, state packets and more",
    "version": "2.5.0",
    "project_urls": {
        "Download": "https://github.com/damiafuentes/DJITelloPy/archive/2.5.0.tar.gz",
        "Homepage": "https://github.com/damiafuentes/DJITelloPy"
    },
    "split_keywords": [
        "tello",
        "dji",
        "drone",
        "sdk",
        "official sdk"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a7068da29bca8ec949043b840e00cad95ba96d3ad31cbec20cad2d409c0c7e37",
                "md5": "fc3d36855b8124b5d155e4dcb9876c35",
                "sha256": "525e9072dfb53a1f43051b6a8cbe33737def8430e8bf7b838c44a4c485c961e8"
            },
            "downloads": -1,
            "filename": "djitellopy-2.5.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fc3d36855b8124b5d155e4dcb9876c35",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 15412,
            "upload_time": "2023-06-09T16:31:19",
            "upload_time_iso_8601": "2023-06-09T16:31:19.589354Z",
            "url": "https://files.pythonhosted.org/packages/a7/06/8da29bca8ec949043b840e00cad95ba96d3ad31cbec20cad2d409c0c7e37/djitellopy-2.5.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fe820717caed52cfa427c12a0cabf2ff91f9a2c9f94acf73206c5c2be9992595",
                "md5": "d379dbe86f9d05907c659e0281854d92",
                "sha256": "fae6c9a353404a61ce362c6766efe0d23cf559fdeaf60cbc72c75e4896d780cd"
            },
            "downloads": -1,
            "filename": "djitellopy-2.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d379dbe86f9d05907c659e0281854d92",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 16533,
            "upload_time": "2023-06-09T16:31:21",
            "upload_time_iso_8601": "2023-06-09T16:31:21.720331Z",
            "url": "https://files.pythonhosted.org/packages/fe/82/0717caed52cfa427c12a0cabf2ff91f9a2c9f94acf73206c5c2be9992595/djitellopy-2.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-09 16:31:21",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "damiafuentes",
    "github_project": "DJITelloPy",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "numpy",
            "specs": [
                [
                    "==",
                    "1.20.1"
                ]
            ]
        },
        {
            "name": "av",
            "specs": [
                [
                    "==",
                    "8.0.3"
                ]
            ]
        },
        {
            "name": "pillow",
            "specs": [
                [
                    "==",
                    "8.4.0"
                ]
            ]
        }
    ],
    "lcname": "djitellopy"
}
        
Elapsed time: 0.07587s