This ROS package enables the command of a DJI Tello drone using ROS2 command
velocity, building a bridge between ROS and the tellopy
Python library.
Note: It's important to install tellopy
from source,
as the pip version is outdated. The install_tellopy.sh
script in this
repository can be used for this purpose.
FlightStats.msg
: Contains flight statistics and data from the drone.
FlipControl.msg
: Used to control flip actions of the drone.
Topic Name |
Message Type |
Description |
/camera/exposure |
std_msgs/msg/Int32 |
Sets camera exposure. (Valid values: 0, 1, 2) |
/cmd_vel |
geometry_msgs/msg/Twist |
Command velocity for drone movement. |
/flip |
tello_msgs/msg/FlipControl |
Controls flips of the drone. |
/land |
std_msgs/msg/Empty |
Triggers drone landing. |
/takeoff |
std_msgs/msg/Empty |
Triggers drone takeoff. |
/palm_land |
std_msgs/msg/Empty |
Activates palm landing feature. |
/set_att_limit |
std_msgs/msg/Int32 |
Sets altitude limit for the drone. (in meters) |
/throw_and_go |
std_msgs/msg/Empty |
Activates throw and go feature. |
/toggle_fast_mode |
std_msgs/msg/Empty |
Toggles the drone's fast mode. |
Topic Name |
Message Type |
Description |
/camera/image_raw |
sensor_msgs/msg/Image |
Camera images from the drone. |
/flight_data |
tello_msgs/msg/FlightStats |
Flight data and statistics. |
/imu |
sensor_msgs/msg/Imu |
IMU data of the drone. |
/odom |
nav_msgs/msg/Odometry |
Odometry information. (It is very inacurate. Should be avoided) |
/battery_state |
sensor_msgs/BatteryState |
Battery State information. (Percentage is from 0-100%) |
Here are the configurable parameters for the tello_ros_wrapper
:
Parameter Name |
Default Value |
Description |
image_topic_name |
'camera/image_raw' |
Topic name for camera images. |
flight_data_topic_name |
'flight_data' |
Topic name for flight data. |
velocity_command_topic_name |
'cmd_vel' |
Topic name for velocity commands. |
land_topic_name |
'land' |
Topic name for landing command. |
takeoff_topic_name |
'takeoff' |
Topic name for takeoff command. |
flip_control_topic_name |
'flip' |
Topic name for flip control. |
odom_topic_name |
'odom' |
Topic name for odometry data. |
imu_topic_name |
'imu' |
Topic name for IMU data. |
toggle_fast_mode_topic_name |
'toggle_fast_mode' |
Topic name for toggling fast mode. |
camera_exposure_topic_name |
'camera/exposure' |
Topic name for camera exposure control. |
Parameter Name |
Default Value |
Description |
imu_frame_id |
'imu' |
Frame ID for IMU data. |
odom_frame_id |
'odom' |
Frame ID for odometry data. |
drone_frame_id |
'tello' |
Frame ID for the drone. |
Parameter Name |
Default Value |
Description |
auto_wifi_connection |
false |
Automatically connect to Tello WiFi. |
tello_ssid |
|
SSID for Tello WiFi connection. |
tello_pw |
|
Password for Tello WiFi. |
Parameter Name |
Default Value |
Description |
alt_limit |
30 |
Altitude limit in meters. |
fast_mode |
false |
Enables fast mode for the drone. |
video_mode |
'4:3' |
Sets video mode (options: '4:3', '16:9'). |
camera_exposure |
0 |
Camera exposure level (0, 1, 2). |