tello-custom-ip
Version:
Tello drone client with custom IP address support, forked from @0x77/tellots
117 lines • 4.19 kB
TypeScript
import { getTelloIP } from './config';
export * from './types';
export * from './streams/state.interfaces';
/**
* Main Tello SDK object with response parsing and typed return values
*
* - READ commands return structured data with appropriate types
* - CONTROL/SET commands return boolean (true for 'ok', false for errors)
*/
export declare const Tello: {
/**
* Set a custom IP address for the Tello drone
* @param ip - The IP address to connect to (default: 192.168.10.1)
*/
setIP: typeof import("./config").setTelloIP;
/**
* Get the current Tello IP address
* @returns The current IP address
*/
getIP: typeof getTelloIP;
/**
* Control commands - All return boolean (true for success, false for failure)
*
* Examples:
* - connect() - Establish connection to the drone
* - takeOff() - Take off
* - land() - Land the drone
* - move.up(50) - Move up 50cm
* - rotate.clockwise(90) - Rotate 90 degrees clockwise
*/
control: {
connect: () => Promise<boolean>;
takeOff: () => Promise<boolean>;
land: () => Promise<boolean>;
emergency: () => Promise<boolean>;
stop: () => Promise<boolean>;
go: (end: {
x: number;
y: number;
z: number;
}, speed: number) => Promise<boolean>;
curve: (start: {
x: number;
y: number;
z: number;
}, end: {
x: number;
y: number;
z: number;
}, speed: number) => Promise<boolean>;
move: {
up: (distance: number) => Promise<boolean>;
down: (distance: number) => Promise<boolean>;
left: (distance: number) => Promise<boolean>;
right: (distance: number) => Promise<boolean>;
back: (distance: number) => Promise<boolean>;
front: (distance: number) => Promise<boolean>;
};
rotate: {
clockwise: (angle: number) => Promise<boolean>;
counterClockwise: (angle: number) => Promise<boolean>;
};
flip: {
left: () => Promise<boolean>;
right: () => Promise<boolean>;
back: () => Promise<boolean>;
front: () => Promise<boolean>;
};
};
/**
* Read commands - All return structured data with proper types
*
* Examples:
* - battery() - Returns BatteryResponse {value: number}
* - height() - Returns HeightResponse {value: number, unit: 'dm'}
* - attitude() - Returns AttitudeResponse {pitch: number, roll: number, yaw: number, unit: '°'}
*/
read: {
speed: () => Promise<import("./types").SpeedResponse>;
battery: () => Promise<import("./types").BatteryResponse>;
time: () => Promise<import("./types").TimeResponse>;
wifi: () => Promise<import("./types").WifiResponse>;
height: () => Promise<import("./types").HeightResponse>;
temperature: () => Promise<import("./types").TemperatureResponse>;
attitude: () => Promise<import("./types").AttitudeResponse>;
barometer: () => Promise<import("./types").BarometerResponse>;
tof: () => Promise<import("./types").TofResponse>;
acceleration: () => Promise<import("./types").AccelerationResponse>;
};
/**
* Set commands - All return boolean (true for success, false for failure)
*
* Examples:
* - speed(50) - Set speed to 50cm/s
* - wifi(ssid, password) - Set WiFi SSID and password
*/
set: {
speed: (speed: number) => Promise<boolean>;
rc: (x: number, y: number, z: number, yaw: number) => Promise<boolean>;
wifi: (ssid: string, password: string) => Promise<boolean>;
};
/**
* Receivers for state and video streams
*/
receiver: {
state: {
bind: () => import("events")<[never]>;
close: () => import("dgram").Socket;
};
video: {
bind: () => Promise<import("events")<[never]>>;
close: () => Promise<void>;
};
};
};
export default Tello;
//# sourceMappingURL=index.d.ts.map