0.0.2 • Published 4 years ago
tello-api v0.0.2
tello-api
Description
Node API for the tello drone.
Supporting the 1.3 SDK version
The API if using the dgram sockets under the hood to connect to drone through UDP.
Installation
yarn add tello-api
npm i -save tello-api
Usage
API is working with async/await syntax Currently it's supporting only one command at the time
Typescript example
import { Drone } from 'tello-api'
const drone = new Drone(); // will create new instance with default ports
await drone.connect(); // will init the command and state sockets
const temp = await drone.command('battery?'); // will return battery result
await drone.takeoff() // drone will take off
await drone.up(25) // drone will go up
await drone.land() // drone will land
await drone.disconnect(); // remove all listeners from the sockets
To create an instance with different drone host and ports use the DroneConstructorInput interface as in example with defaults 👇
const drone = new Drone({
commandHost: 192.168.10.1;
commandPort: 8889;
statePort?: 8890;
});
When connecting to the drone, client UDP port on your machine assigned by default. To change that use the optional parameters to connect command: DroneConnectInput interface as in example with defaults 👇
const drone = new Drone();
await drone.connect({
clientPort: 9888,
defaultCommandTimeout: 12000 // time in ms
})
Developing
npm install
OR
yarn
Testing
I'm using the node-tap for testing
To run tests npm test
should be enough. Config is in .taprc
file.
Future Development
- Cover all SDK commands (
go
,curve
,set commands
not supported yet) - Generate API docs from the ts files.