mspm0g-contest-skill  by 2262727886-stack

Dual-core embedded control for electronic design contests

Created 3 months ago
265 stars

Top 96.3% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

This project offers a full-stack development solution for electronic design contests ("电赛") using a dual-core TI MSPM0G3507 (Cortex-M0+) and K230 (RISC-V) architecture. It addresses integration challenges of chassis control, IMU, vision, and communication peripherals, providing a validated codebase for common contest tasks. Aimed at students and engineers, it accelerates development and mitigates pitfalls, notably via AI-assisted code generation.

How It Works

The system features a dual-core setup: MSPM0G3507 handles real-time control (motors via TB6612FNG, encoders, IMU, servos), while the K230 (MicroPython) manages vision processing (GC2093 camera, color block recognition) and communicates via UART. A cascaded PID control loop (speed PI, position P, heading PD) ensures precise motion. The implementation is bare-metal, driven by hardware timers, and includes Bluetooth tuning and OLED status display.

Quick Start & Requirements

Clone the repository: git clone https://github.com/2262727886-stack/mspm0g-contest-skill.git. Development requires TI's CCS Theia IDE, MSPM0 SDK (v2.10.00.04), and XDS110 drivers. The project recommends using the integrated Claude Code Skill for AI-driven code generation based on specific hardware connections, simplifying setup. Official TI tool downloads: CCS Theia, MSPM0 SDK.

Highlighted Details

  • AI Code Generation: Utilizes Claude Code Skill for automated driver code generation, mapping requirements to hardware pins and APIs.
  • Dual-Core Integration: Combines TI MSPM0G (control) and K230 (vision) for specialized tasks.
  • Advanced PID Control: Features cascaded PID for speed, position, and heading, with pre-tuned parameters and a dedicated Python tuning tool.
  • Full Contest Feature Set: Covers differential drive, IMU attitude, color-based vision tracking, Bluetooth tuning, and servo control.
  • Integrated PID Tuner: Python GUI application supports simulation, hardware connection, real-time plotting, and LLM-assisted PID parameter optimization.

Maintenance & Community

Community engagement is encouraged via GitHub Issues and Claude Code. Acknowledgments are given to key technology providers. Specific community channels are not detailed.

Licensing & Compatibility

Released under the permissive MIT License, allowing broad use, modification, and distribution, including in commercial applications.

Limitations & Caveats

This is not a universal template; specific peripherals are needed per contest problem. The firmware is bare-metal (nortos), not RTOS-based. Vision is limited to color block recognition, excluding SLAM or obstacle avoidance. Be aware of an "API Safety Blacklist" for the MSPM0 SDK and 43 known K230 MicroPython issues. A hardware conflict exists between UART0 and I2C1 on shared pins (PA10/PA11).

Health Check
Last Commit

1 month ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
0 stars in the last 30 days

Explore Similar Projects

Starred by Patrick von Platen Patrick von Platen(Author of Hugging Face Diffusers; Research Engineer at Mistral), Elie Bursztein Elie Bursztein(Cybersecurity Lead at Google DeepMind), and
7 more.

executorch by pytorch

0%
5k
On-device AI framework for PyTorch inference and training
Created 4 years ago
Updated 12 hours ago
Feedback? Help us improve.