https://github.com/giwi/ryze-tello-sdk
Tello Nodejs lib
https://github.com/giwi/ryze-tello-sdk
drone nodejs tello tellodrone
Last synced: 27 days ago
JSON representation
Tello Nodejs lib
- Host: GitHub
- URL: https://github.com/giwi/ryze-tello-sdk
- Owner: Giwi
- License: apache-2.0
- Created: 2018-12-19T21:18:59.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-10-05T14:37:37.000Z (over 2 years ago)
- Last Synced: 2023-04-01T07:27:32.796Z (about 2 years ago)
- Topics: drone, nodejs, tello, tellodrone
- Language: TypeScript
- Homepage: https://giwi.github.io/ryze-tello-sdk/
- Size: 834 KB
- Stars: 8
- Watchers: 2
- Forks: 3
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ryze Tello commands
NodeJS utility for the [Ryze Tello Drone](https://www.ryzerobotics.com/tello)
Video stream is supported, but you need mplayer.
## Usage
yarn install @giwisoft/ryze-tello-sdk
Connect to the Tello's Wifi.
yarn start
```javascript
'use strict';
const tello = require('./lib/tello');tello.start()
.then(() => tello.takeoff())
.then(() => tello.forward(50))
.then(() => tello.rotateCCW(360))
.then(() => {
return new Promise(resolve =>
tello.get('h').then(r => {
console.log('height', r.value);
resolve()
}));
})
.then(() => tello.backward(50))
.then(() => tello.land())
.then(() => tello.stop());
```or
```javascript
const tello = require('./lib/tello');'use strict';
(async() => {
// Start the engine
await tello.start();
await tello.startStream();
await tello.startTelemetry({});
await tello.takeoff();
// Read the battery status
console.log('battery', (await tello.get('bat')).value, '%');
// Go up
await tello.up(50);
// Perform a forward flip
await tello.flip('f');
// Go forward
await tello.forward(50);
await tello.right(20);
// Read the height
console.log('height', (await tello.get('h')).value, 'cm');
// Go backward
await tello.backward(100);
await tello.rotateCW(360);
// Finally land
await tello.land();
await tello.stopTelemetry();
await tello.stopStream();
// And then shut down the engine
})().then(() => tello.stop());
```## Tello flight vars
| Name | Unit | Description |
| --- | --- | --- |
| `h` | cm | height |
| `baro` | cm | barometer |
| `tof` | cm | to floor distance |
| `templ` | °C | min temperature |
| `temph` | °C | max temperature |
| `pitch` | ° | attitude pitch |
| `roll` | ° | attitude roll |
| `yaw` | ° | attitude yaw |
| `agx` | 0.001g | acceleration x |
| `agy` | 0.001g | acceleration y |
| `agz` | 0.001g | acceleration z |
| `vgx` | cm/s | speed x |
| `vgy` | cm/s | speed y |
| `vgz` | cm/s | speed z |
| `bat` | % | battery |## RoadMap
- [ ] Save video on the file system
- [ ] Take pictures
- [ ] RealTime remote control with web video stream
- [ ] Raspberry setup
- [ ] GamePad support on Raspberry