Introduction
Hello! I’m Elton Satiyev from Azerbaijan. I’m happy to announce that I’ve been selected as a Google Summer of Code (GSoC) 2025 contributor with ArduPilot, mentored by @rmackay9 and @khanasif786. In this blog, I’ll introduce my project: an AI Chat WebTool designed to control ArduPilot vehicles through natural language commands.
Project Overview & Motivation
Drone technology has advanced significantly, yet intuitive control mechanisms accessible to non-technical users remain limited. My project addresses this gap by creating an AI-powered WebTool that enables pilots to interact naturally with their drones, converting spoken or written instructions into MAVLink commands. Inspired by the existing MAVProxy AI chat module, my aim is to make drone piloting simpler, more accessible, and entirely browser-based, requiring no installations.
Goals and Objectives
AI Chat WebTool aims to:
-
Connect directly to drones via Mission Planner or QGroundControl (QGC).
-
Interpret both verbal and written natural language commands.
-
Support essential flight operations including arming, takeoff, directional movements, and flight mode adjustments.
Current Progress
Significant progress has already been achieved:
-
Developed a user interface.
-
Successfully implemented MAVLink commands for drone operations including arming, takeoff, directional navigation, altitude adjustments, and rotation.
-
Demonstrated voice control alongside text inputs, providing flexible interaction.
-
Achieved seamless WebSocket integration with Mission Planner, allowing real-time drone control.
Challenges
Currently, a significant challenge is integrating the WebTool directly with QGroundControl, as QGC lacks native WebSocket support. This issue presently necessitates an intermediary layer.
Next Steps
My immediate future tasks include:
-
Continuing to expand the functionality and robustness of my WebTool, adding support for additional drone operations and refining the integration with Mission Planner.
-
Exploring and implementing a middleware-free solution for direct integration with QGroundControl.
Conclusion
This project significantly simplifies drone piloting, providing an intuitive, natural interface accessible to all users, especially those without technical expertise. I’m excited about further progress and warmly welcome feedback or suggestions from the ArduPilot community.