You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行Tello无人机djitellopy代码出现command指令4次重试失败报错如何解决?

报错原因
  • 无人机未完成首次激活:全新或重置后的Tello必须通过官方Tello APP完成激活,未激活状态下不会响应第三方SDK的控制指令,会持续显示黄色指示灯,所有控制指令都不会返回正常响应。
  • 网络路径冲突:电脑同时连接了以太网、其他WiFi等网络,系统默认路由没有把控制指令发到Tello的专属网段(默认IP为192.168.10.1),导致指令无法送达无人机。
  • djitellopy库版本与无人机固件不匹配:旧版本djitellopy库无法适配新固件的Tello,反之新版本库也可能对旧固件的无人机存在兼容性问题。
  • 本地防火墙/杀毒软件拦截:Tello通过8889UDP端口收发控制指令,本地安全软件可能拦截了Python进程的UDP通信,导致指令发送后无法收到无人机的响应。
解决步骤
  • 第一步先完成无人机激活:手机连接Tello的WiFi,打开官方Tello APP按照引导完成激活流程,确认无人机指示灯变为绿色闪烁后再运行代码测试。
  • 排查网络问题:断开电脑上除Tello WiFi外的所有网络连接,打开终端执行 ping 192.168.10.1 确认通信正常,再运行代码。
  • 调整djitellopy库版本:
    • 普通版Tello可先降级到稳定兼容版:执行 pip install djitellopy==2.4.0
    • Tello EDU/Talent版升级到最新版本:执行 pip install --upgrade djitellopy
  • 放行通信权限:暂时关闭本地防火墙、杀毒软件测试是否能正常连接,若测试可行,将Python进程和UDP 8889端口加入安全软件白名单即可。
  • 可以修改代码增加重试配置,提高连接成功率,参考代码如下:
from djitellopy import Tello
# 增加重试次数和超时时间,适配网络波动场景
tello = Tello(retry_count=8, retry_timeout=3)
tello.connect()
# 读取电池电量确认连接正常,电量低于10%时无人机也不会响应起飞指令
print(f"当前电池电量:{tello.get_battery()}%")

tello.takeoff()
tello.move_left(100)
tello.rotate_clockwise(90)
tello.move_forward(100)
tello.land()
  • 若以上操作都无效,打开官方Tello APP检查无人机固件更新,升级到最新固件后再测试。

内容的提问来源于stack exchange,提问作者Yash Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 18:36:08