Updated roadmap with more 1.2.0 ideas
This commit is contained in:
113
docs/ROADMAP.md
113
docs/ROADMAP.md
@@ -175,12 +175,121 @@ This is the kind of code students would write if they had years of experience. N
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Version 1.2.0 - Package Ecosystem 🔥
|
## Version 1.2.0 - Package Ecosystem & Enhanced Templates 🔥
|
||||||
|
|
||||||
**Theme:** Transforming Weevil from project generator to ecosystem platform. Teams can extend projects with community-shared components.
|
**Theme:** Transforming Weevil from project generator to ecosystem platform. Teams can extend projects with community-shared components and additional professional templates.
|
||||||
|
|
||||||
**Status:** Planning - Expected Q2 2026
|
**Status:** Planning - Expected Q2 2026
|
||||||
|
|
||||||
|
### Template Metadata & Improved Display ⚠️
|
||||||
|
|
||||||
|
**Feature:** Template discovery with rich metadata and formatted display
|
||||||
|
|
||||||
|
**Description:** Enhance template system with metadata files for better discoverability:
|
||||||
|
|
||||||
|
**Template Metadata (`template.toml`):**
|
||||||
|
```toml
|
||||||
|
[template]
|
||||||
|
name = "localization"
|
||||||
|
description = "Grid-based robot localization with sensor fusion"
|
||||||
|
file_count = 21
|
||||||
|
test_count = 3
|
||||||
|
perfect_for = "Advanced autonomous navigation"
|
||||||
|
|
||||||
|
[includes]
|
||||||
|
items = [
|
||||||
|
"12x12 field grid system",
|
||||||
|
"Multi-sensor fusion (encoders + IMU + vision)",
|
||||||
|
"Fault-tolerant positioning"
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
**Improved `--list-templates` Output:**
|
||||||
|
```
|
||||||
|
Available templates:
|
||||||
|
|
||||||
|
basic (default)
|
||||||
|
Minimal FTC project structure
|
||||||
|
Files: ~10 | Tests: 1
|
||||||
|
Perfect for: Teams starting from scratch
|
||||||
|
|
||||||
|
testing
|
||||||
|
Professional testing showcase with examples
|
||||||
|
Files: ~30 | Tests: 45
|
||||||
|
Perfect for: Learning best practices
|
||||||
|
Includes:
|
||||||
|
• 3 complete subsystems
|
||||||
|
• Hardware abstraction layer
|
||||||
|
• 45 passing tests
|
||||||
|
|
||||||
|
localization
|
||||||
|
Grid-based robot localization with sensor fusion
|
||||||
|
Files: ~21 | Tests: 3
|
||||||
|
Perfect for: Advanced autonomous navigation
|
||||||
|
Includes:
|
||||||
|
• 12x12 field grid system
|
||||||
|
• Multi-sensor fusion
|
||||||
|
• Fault-tolerant positioning
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
weevil new <project-name> # Uses basic
|
||||||
|
weevil new <project-name> --template testing # Uses testing
|
||||||
|
```
|
||||||
|
|
||||||
|
**Status:** ⚠️ Planned for v1.2.0
|
||||||
|
|
||||||
|
**Priority:** MEDIUM-HIGH - Improves template discoverability
|
||||||
|
|
||||||
|
**Effort:** 1-2 days (metadata format + CLI formatting)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Localization Template ⚠️
|
||||||
|
|
||||||
|
**Feature:** Grid-based localization template for advanced autonomous
|
||||||
|
|
||||||
|
**Description:** Professional robot localization system with sensor fusion and fault tolerance:
|
||||||
|
|
||||||
|
**What's Included:**
|
||||||
|
- **Grid System** - 12ft x 12ft field divided into 12x12 grid (12" cells)
|
||||||
|
- **Sensor Fusion** - Combine odometry (encoders), IMU (gyro), and vision (AprilTags)
|
||||||
|
- **Fault Tolerance** - Graceful degradation when sensors fail
|
||||||
|
- **Lookup Tables** - Pre-computed navigation strategies
|
||||||
|
- **21 Files** - 7 localization classes, 3 hardware interfaces, 3 mocks, 3 tests, 2 docs
|
||||||
|
- **3 Comprehensive Tests** - Grid math, sensor fusion, fault tolerance
|
||||||
|
|
||||||
|
**Core Components:**
|
||||||
|
- `GridCell.java` - Cell in 12x12 grid (0-11, 0-11)
|
||||||
|
- `Pose2D.java` - Position (x, y) + heading with angle normalization
|
||||||
|
- `FieldGrid.java` - Field coordinate system and conversions
|
||||||
|
- `RobotLocalizer.java` - Multi-sensor fusion engine
|
||||||
|
- `OdometryTracker.java` - Dead reckoning from wheel encoders
|
||||||
|
- `ImuLocalizer.java` - Heading tracking from gyroscope
|
||||||
|
- `VisionLocalizer.java` - Position from AprilTags
|
||||||
|
|
||||||
|
**Sensor Fusion Priority:**
|
||||||
|
1. Vision (AprilTags) → ±2" accuracy, 100% confidence
|
||||||
|
2. IMU + Odometry → ±4" accuracy, 70% confidence
|
||||||
|
3. Odometry only → ±12" accuracy, 40% confidence
|
||||||
|
|
||||||
|
**Rationale:** Teaches professional robotics concepts (Kalman-filter-style sensor fusion, fault tolerance, grid-based navigation). No other FTC tool has this. Positions Nexus Workshops as teaching advanced autonomous programming.
|
||||||
|
|
||||||
|
**Usage:**
|
||||||
|
```bash
|
||||||
|
weevil new my-robot --template localization
|
||||||
|
cd my-robot
|
||||||
|
./gradlew test # 3 tests pass
|
||||||
|
# Modify for your robot's sensors and autonomous strategy
|
||||||
|
```
|
||||||
|
|
||||||
|
**Status:** ⚠️ Template complete, ready to integrate in v1.2.0
|
||||||
|
|
||||||
|
**Priority:** HIGH - Unique differentiator, advanced autonomous capability
|
||||||
|
|
||||||
|
**Effort:** Template already created, integration 1 day
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
### `weevil add` - Component Package Manager ⚠️ **THE NEXT BIG THING**
|
### `weevil add` - Component Package Manager ⚠️ **THE NEXT BIG THING**
|
||||||
|
|
||||||
**Feature:** Package manager for sharing and reusing FTC robot code components
|
**Feature:** Package manager for sharing and reusing FTC robot code components
|
||||||
|
|||||||
Reference in New Issue
Block a user