Skip to content
x12315Public

About

面向 RoboMaster 队伍的全开源、新手友好开发套件。

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

RM Relay

面向 RoboMaster 队伍的全开源、新手友好开发套件,覆盖嵌入式与 Linux 应用开发,逐步 适配 RM 常见开发板、PC 和边缘计算板卡。

Important

项目仍在建设。目前可用的是 STM32 嵌入式开发基线;快速体验服务器、IDE 一键配置、 战队部署方案和 Linux 应用开发环境尚未交付。路线图表达建设方向,不代表已经支持。

RM 队伍的成员和工程经验随赛季快速流动。一套环境如果只能由少数人安装、升级和排错, 很容易在交接后失效。RM Relay 将重复出现的工具链配置、项目入口和验证方法整理成可复现 的公共基础设施,让新人能开始使用,也让队伍有能力继续维护。

项目原则

  • 全开源与现代生态: 以现代软件工程方法组织机器人开发领域成熟的开源工具,摆脱对 封闭 IDE 和专有开发套件的依赖,为 RMer 提供开箱即用、同时留有探索空间的开发套件。
  • 广泛的兼容性与支持面: 覆盖 Windows、macOS 和 Linux,支持 x86、Arm 等架构。 通过本地容器、远程构建和宿主工具等方式,开发 PC 应用,以及编译、烧录和调试嵌入式 设备。
  • 低使用门槛: 为 VS Code 等 IDE 提供一键配置,并支持云端编译。熟悉 Docker 的 用户也可以在本地获得同一套构建环境。
  • 最小自研与长期维护: 项目自身同样优先复用成熟的开源组件,以少量代码完成必要 整合,降低社区贡献和长期维护成本。同时控制自部署的复杂度,让缺少专职运维人员的战队 也能在队内完成服务的搭建和维护。

这些原则为何适合 RM 场景,见 为什么 RM 队伍需要共同维护开发基础设施。

当前能力

当前仓库提供 C++20/STM32 开发镜像、可复制的跨平台 CMake 项目模板,以及一份在 host 测试和 MCU 固件中复用相同控制逻辑的 PI 示例。镜像覆盖 linux/amd64 与 linux/arm64,真实主机验证目前以 Apple Silicon macOS 为主。

STM32F407 和 RoboMaster C 已能完成交叉编译;RoboMaster C 的 ROM DFU 已在 macOS 完成只读枚举,OpenOCD/GDB 配置尚待使用 SWD 实板完成烧录和源码调试闭环。支持状态以 支持矩阵为准,不能从工具存在推导硬件已经验证。

RoboMaster C 是首个支持的 board profile,不是项目结构中心。开发镜像只提供工具链, 不包含机器人应用 runtime 或 IDE;编辑器可以消费 CMake Presets 和调试配置,但不是 构建的唯一真相源。

使用方式

快速体验(规划中)

面向没有本地开发环境的初学者。公共服务器将允许用户通过网络体验编译和基础验证,计划 由 @x12315 部署与维护,不承诺生产级可用性。完成试用后, 推荐联系战队维护者部署长期使用的内部服务。

本地 Docker(当前可用)

适合已有基本 Docker 使用经验的开发者。工具链在本机容器中运行,源码和构建产物保留在 工作区;USB、烧录与调试按宿主平台接入。

战队部署(规划中)

面向战队运维人员,在战队服务器上托管镜像与远程编译能力,为成员提供稳定入口。部署 文档尚未交付;当前维护者可以先参考 镜像构建与验证。

本地 Docker 快速开始

以下命令需要 Docker 与 Buildx,从仓库根目录执行。它们会构建本机架构镜像,在本地 build/ 目录运行测试并生成固件,不会写入开发板 Flash。

docker version
docker buildx version
docker buildx bake \
  --file container-images/embedded-development/docker-bake.hcl \
  mcu-dev --load
sh validation/project-contracts/verify-repository-layout.sh
sh validation/project-contracts/verify-project-builds.sh

验证包含模板和 PI 示例的 native Clang、native GCC、ASan/UBSan 测试,以及 STM32F407/RoboMaster C 交叉编译。进一步操作见:

维护项目或参与建设时,阅读仓库资产边界、 项目路线、社区工作与贡献指南。

发起与许可证

RM Relay 由首都师范大学 PIE 战队发起,是非官方开源社区项目,与 DJI 或 RoboMaster 官方不存在隶属或背书关系。

项目采用 Apache License 2.0。首个开发基线稳定后,我们将在 RoboMaster 社区征集试用队伍和贡献者。

About

面向 RoboMaster 队伍的全开源、新手友好开发套件。

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages