XDS110 Universal Debugger - MCP Server
Generic Debugging Interface for ANY Texas Instruments CCS Project
🚀 Zero-configuration debugging for ANY CCS project! Auto-discovers 1000+ variables from MAP files, no hardcoding required.
🎯 Overview
A universal debugging solution that automatically discovers and monitors variables from ANY Texas Instruments Code Composer Studio project. Using MAP file parsing and TI's Debug Server Scripting (DSS), it provides generic access to all project symbols without any manual configuration.
✨ Key Features
Zero Configuration - Just point at your CCS project directory
Auto-Discovery - Parses MAP files to find ALL variables (1000+)
Pattern Search - Find variables using regex patterns
Real-Time Monitoring - Watch any variable change in real-time
MCP Protocol - Integrates with LLMs as debugging co-pilots
Universal Support - Works with C2000, MSP430, ARM-based TI MCUs
🔧 Verified Hardware
TI XDS110 Debug Probe (and compatible)
TMS320F280039C (C2000 series)
MSP430 series (with DSS support)
TI ARM Cortex-M devices
Any CCS-supported target with MAP file generation
Architecture Overview
OpenOCD Multi-Client Proxy
Traditional debugging allows only one tool to connect to hardware. This solution uses OpenOCD's multi-client capabilities:
OpenOCD connects to XDS110 using native driver support
Multiple GDB clients can connect to OpenOCD simultaneously
MCP server acts as intelligent GDB client for LLM interaction
Code Composer Studio can still connect when needed (via session handoff)
Quick Start
Prerequisites
Python 3.8+
OpenOCD with XDS110 driver support
XDS110 debug probe with firmware 2.3.0.11+
TI target hardware (F280039C verified)
Installation
Hardware Verification
Start MCP Server
MCP Tools Available to LLMs
Tool | Description | Parameters | Example Use |
| Read current values of motor control variables |
,
| Monitor motor state, position, currents |
| Continuous monitoring with change detection |
,
,
| Detect anomalies during motor operation |
| Direct memory writes to structures |
,
,
| Modify debug_bypass parameters |
| Conditional breakpoints with custom logic |
,
,
| Stop when motor state changes |
| AI-powered motor control analysis |
| Diagnose humming, faults, tuning issues |
| Trigger calibration sequences |
| Run commands 64-67 for motor setup |
Example LLM Interactions
Project Structure
Development Status
Completed (From Legacy ti_debugger)
Hardware Connection: XDS110 + F280039C proven working
Memory Access: Direct read/write to debug_bypass structure (0x0000d3c0)
Variable Reading: Comprehensive motor control variable access
Motor Control: PMSM motor control with DRV8323RH driver
Calibration: Automated calibration sequences (commands 64-67)
Domain Knowledge: Motor control, FOC principles, fault patterns
In Progress
MCP Server Implementation: Converting ti_debugger logic to MCP framework
OpenOCD Integration: Multi-client GDB proxy setup
Tool Development: MCP tools for variable monitoring, memory access
LLM Integration: Domain knowledge integration for intelligent analysis
Planned
Session Management: CCS handoff and conflict resolution
Advanced Analysis: Pattern recognition and fault diagnosis
Performance Optimization: Sub-100ms variable read latency
Documentation: Comprehensive guides and API reference
Testing: Hardware integration and reliability tests
Use Cases
1. Motor Humming Diagnosis
Problem: PMSM motor hums during bypass alignment instead of spinning smoothly. Solution: LLM analyzes bypass alignment variables, identifies missing current control initialization, and suggests memory writes to fix the issue.
2. Real-Time Debugging Assistant
Problem: Complex motor control sequences with dozens of variables to monitor. Solution: LLM continuously monitors variables, detects anomalies, and provides contextual alerts with domain expertise.
3. Interactive Parameter Tuning
Problem: PID controller tuning requires iterative testing and analysis. Solution: LLM suggests parameter changes based on motor behavior description, applies changes via memory writes, and monitors results.
4. Automated Fault Analysis
Problem: Intermittent overcurrent faults that are difficult to debug manually. Solution: LLM sets intelligent breakpoints, monitors fault conditions, and analyzes patterns to identify root causes.
Technical Specifications
Performance Requirements
Variable Read Latency: < 100ms per variable
Monitoring Frequency: Up to 10Hz for critical variables
Memory Footprint: < 50MB RAM usage
Startup Time: < 5 seconds to ready state
Connection Recovery: Auto-reconnect within 1 second
Hardware Requirements
Debug Probe: XDS110 with firmware 2.3.0.11+
Target MCU: TMS320F280039C (F28xx series support planned)
Connection: USB 2.0+ for XDS110 probe
Host OS: Linux (tested), Windows/macOS (planned)
Software Requirements
Python: 3.8+ with asyncio support
OpenOCD: Latest version with XDS110 driver
MCP SDK: Python Model Context Protocol SDK
Optional: Code Composer Studio for traditional debugging
Contributing
We welcome contributions to this embedded systems debugging MCP server:
High-Priority Areas
Additional TI MCU support (F28xx series, C2000 family)
Other debug probe support (J-Link, ST-Link)
Windows/macOS compatibility
Advanced motor control algorithms
Performance optimizations
Getting Started
Fork the repository
Set up development environment:
pip install -r requirements-dev.txt
Run tests:
pytest tests/
Submit pull request with comprehensive testing
Development Guidelines
Follow PEP 8 style guidelines
Add tests for new functionality
Update documentation for user-facing changes
Verify hardware compatibility before submitting
Resources & References
MCP Protocol
OpenOCD & Hardware
TI Documentation
License
MIT License - see LICENSE file for details.
Acknowledgments
Texas Instruments: For XDS110 debug probe and comprehensive documentation
OpenOCD Project: For multi-client debugging architecture
Model Context Protocol Team: For the MCP framework enabling LLM tool integration
Embedded Community: For sharing knowledge and debugging techniques
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables Large Language Models to act as co-debuggers for Texas Instruments embedded systems by providing real-time variable monitoring, memory manipulation, and motor control analysis through OpenOCD proxy architecture. Supports debugging TI microcontrollers with XDS110 debug probes while working alongside Code Composer Studio.
Related MCP Servers
- -securityFlicense-qualityA TypeScript-based server that provides a memory system for Large Language Models (LLMs), allowing users to interact with multiple LLM providers while maintaining conversation history and offering tools for managing providers and model configurations.Last updated -27
- -securityFlicense-qualityFacilitates enhanced interaction with large language models (LLMs) by providing intelligent context management, tool integration, and multi-provider AI model coordination for efficient AI-driven workflows.Last updated -
- -securityAlicense-qualityBridges Large Language Models with Language Server Protocol interfaces, allowing LLMs to access LSP's hover information, completions, diagnostics, and code actions for improved code suggestions.Last updated -71MIT License
- AsecurityAlicenseAqualityUnleashes LLM-powered agents to autonomously execute and debug web apps directly in your code editor, with features like webapp navigation, network traffic capture, and console error collection.Last updated -21,186Apache 2.0