Hello PX4 community,
I’ve created an open-source voice control system for PX4 that uses some interesting architecture patterns:
Technical Stack:
- MCP Server (Model Context Protocol) wrapping MAVSDK-Python commands as discoverable tools
- LangGraph for intelligent tool orchestration and mission planning
- Local LLM (Ollama) for natural language understanding
- Each MAVSDK command (takeoff, goto_location, orbit, land) exposed as an MCP tool
How it works:
- Voice command: “Fly to bridge, orbit it, land there”
- LangGraph + LLM creates tool chain: [takeoff] → [fly_to_coordinates] → [orbit] → [land]
- MCP Server executes each MAVSDK tool with telemetry verification
- Real-time status updates back to user
The beauty is that the MCP server runs independently - you can extend it with new MAVSDK capabilities and the LLM automatically learns to use them.
Youtube Demo : https://www.youtube.com/watch?v=-IVD1Tpn5w0&ab_channel=Bilalİleri
GitHub: GitHub - Bilalileri/EchoPilot---Ollama---PX4---MCP: Speak to your drone! EchoPilot is a voice-controlled agent that leverages Ollama for local LLM power, generating complex PX4 missions via LangGraph. Commands are executed seamlessly using MAVSDK and the Model Context Protocol (MCP).
Looking for feedback on the tool design and potential safety improvements. Has anyone else experimented with MCP for robotics?