-
Notifications
You must be signed in to change notification settings - Fork 3
Code Generation in User Projects
Projects using Taproot do not import the code in this repo directly. Instead, the provided library
code is preprocessed by lbuild
, a code templating tool.
User projects include the taproot
repository as a git "submodule" -- a git repo within a git repo.
They then define a project.xml
which configures Taproot with chosen hardware parameters and
requirements. From within the same directory, running lbuild build
will re-generate all requested
code.
Edits to generated code should be avoided: they will be overwritten the next time lbuild
is run.
Prefer contributing changes to the upstream Taproot project, or forking the library and pointing
your submodule at this new fork. As a last resort, code edits can be made, but will increase
maintenance overhead.
The template project provides an example of this configuration in practice.
Looking for something else or would like to contribute to the wiki?
This wiki is a readonly mirror of our GitLab wiki. We use mermaid diagrams in this wiki, which are not supported in GitHub. We recommend referring to the GitLab wiki for the best experience or if you would like to contribute.
Architecture Design
- Directory Structure
- Build Targets Overview
- Drivers Architecture
- Command Subsystem Framework
- Generated Documentation
Using Taproot
Software Tools
- Docker Overview
- Debugging Safety Information
- Debugging With ST-Link
- Debugging With J-Link
- Git Tutorial
- How to Chip Erase the MCB
RoboMaster Tools
Software Profiling
System Setup Guides
- Windows Setup
- Debian Linux Setup
- Fedora Linux Setup
- macOS Setup
- Docker Container Setup
- (deprecated) Windows WSL Setup
Control System Design Notes
Miscellaneous and Brainstorming
Submit edits to this wiki via the taproot-wiki-review repo.