All Projects → jsolderitsch → Tello Nodejs

jsolderitsch / Tello Nodejs

Licence: mit
Interacting with the DJI/Ryze Tello using only node.js

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Tello Nodejs

roboticsknowledgebase.github.io
Robotics Knowledgebase. The Wiki for Robot Builders.
Stars: ✭ 85 (+7.59%)
Mutual labels:  programming, drones
100projectsofcode
A list of practical knowledge-building projects.
Stars: ✭ 1,183 (+1397.47%)
Mutual labels:  programming
Learn Objective C In 24 Days Clone
This project was created with the intention of preservation
Stars: ✭ 54 (-31.65%)
Mutual labels:  programming
Ecola
Tree editor for touch screens
Stars: ✭ 64 (-18.99%)
Mutual labels:  programming
Python biologist
Python Programming for Biologists
Stars: ✭ 55 (-30.38%)
Mutual labels:  programming
Programming Exercises
Programming Exercises about Interesting Topics
Stars: ✭ 67 (-15.19%)
Mutual labels:  programming
Python Aos Lesson
Python for Atmosphere and Ocean Scientists
Stars: ✭ 49 (-37.97%)
Mutual labels:  programming
Elementary Ide
An unofficial elementary OS (Vala) oriented IDE.
Stars: ✭ 75 (-5.06%)
Mutual labels:  programming
Dayasadev
📗 A course to teach non-technical team members what developers do 📗
Stars: ✭ 73 (-7.59%)
Mutual labels:  programming
Programming Basics Book Csharp Bg
Textbook for the "Programming Basics" course @ SoftUni (C#, Bulgarian)
Stars: ✭ 59 (-25.32%)
Mutual labels:  programming
Opencomputers
Home of the OpenComputers mod for Minecraft.
Stars: ✭ 1,104 (+1297.47%)
Mutual labels:  programming
Easytello
An easy to use library to support DJI Tello scripting in Python 3
Stars: ✭ 58 (-26.58%)
Mutual labels:  drones
Learn Vim
Vim 实操教程(Learning Vim)Vim practical tutorial.
Stars: ✭ 1,166 (+1375.95%)
Mutual labels:  programming
Julia.jl
Curated decibans of Julia programming language.
Stars: ✭ 1,083 (+1270.89%)
Mutual labels:  programming
Goexpertprogramming
《Go专家编程》Go语言快速入门,轻松进阶!
Stars: ✭ 1,193 (+1410.13%)
Mutual labels:  programming
Xible
Visualize your workflow
Stars: ✭ 49 (-37.97%)
Mutual labels:  programming
Hackphiles
BruteForce Tool For both Instagram and Facebook
Stars: ✭ 57 (-27.85%)
Mutual labels:  programming
Tis 3d
TIS-100 inspired low-tech computing in Minecraft.
Stars: ✭ 64 (-18.99%)
Mutual labels:  programming
Songtianyi.github.io
blog pages
Stars: ✭ 77 (-2.53%)
Mutual labels:  programming
Ds Cheatsheets
List of Data Science Cheatsheets to rule the world
Stars: ✭ 9,452 (+11864.56%)
Mutual labels:  programming

tello-nodejs

Interacting with the DJI/Ryze Tello using only node.js.

The code in this repo is based on the Tello.js source file distributed along with the Tello SDK. The keyboard processing logic was adapted from sample code available at: http://thisdavej.com/making-interactive-node-js-console-apps-that-listen-for-keypress-events/

Use at your own risk, especially in low ambiant light conditions.

Developed and tested using v8.11.1 of node.js

You may need to import the got package with npm

  1. Usage: node TelloConsole.js

You should first connect the computer where you are running node.js to the Tello wireless network for your Tello.

List of available keyboard commands is printed.

The first command to execute is c for command mode.

The land command will be executed when the space bar is pressed.

To quit the program, enter ctrl-c

See the Tello SDK documentation for explanation of the commands.

The commands that need a numeric parameter have a fixed value that is used when the command is sent to the Tello. This behavior may be improved in future versions of the TelloConsole.js file. Only the Flip forward version of the Flip command is currently supported.

This is just a getting started version of the program.

Extensions and improvements encouraged.

A new full command line script is also available. Any SDK command can be entered just like for the Tello3.py file distributed by DJI/Ryze for the Tello SDK.

  1. Usage: node TelloCommandLine.js

As an added bonus, the readline feature used here has command history so that the up and down arrow keys can be used to find and then re-execute commands in the current session.

A video demo is available at: https://www.youtube.com/watch?v=BNNRNsa2a3o

A nice next step would be to add game controller support. node.js seems to support PS3 and PS4 controller types.

Just Added:

Added a mission file interpreter that reads in mission files (samples included in project) and flies them.

  1. node TelloMissionFile.js

This code took some patient experimentation to get working and is even more experimental. It relies on the async/await feature of node.js to allow tello commands to be sent to the tello via the normal udp socket and then check for a response. There is a delay pattern built in as well so that the next command is not sent to the tello until a delay of about 5 seconds has elapsed. This makes it more likely that the tello has had enough time to execute the command. The user is prompted for a tello Mission file name and you can run multiple missions without turning off the tello.

ToDo: Make the mission file language more expressive with at least loop support

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].