Roadmap
This document outlines the proposed development roadmap for ros2_medkit. The plan is subject to change based on community feedback and project priorities.
For the latest status, see the GitHub Milestones.
Strategy
Developer-first, then system-wide.
The project follows a phased approach that prioritizes developer experience:
Start with Apps (ROS 2 nodes) — The level closest to developers. Provide tooling that makes their daily work easier: discovering nodes, reading data, checking faults.
Expand to full system — Once app-level features are solid, extend coverage to Components, Areas, and system-wide operations.
API coverage first, quality later — The initial goal is to cover the entire standard API surface using available ROS 2 capabilities. This enables early integration with real projects and compliance validation. Code hardening and production-ready implementations will follow in later phases.
Milestones
MS1: Full Discovery & Data Access
Goal: Provide a complete view of the ROS 2 system and enable basic data operations.
Developers can discover all running nodes, explore the entity hierarchy, and read/write diagnostic data. This milestone establishes the foundation for all subsequent features.
Standard API coverage:
Discovery (11 endpoints) — version info, entity collections, hierarchy navigation
Data (5 endpoints) — data categories, groups, read/write operations
MS2: App Observability
Goal: Enable developers to monitor application health and diagnose issues.
With observability features, developers can check fault codes, browse logs, and monitor the lifecycle state of their nodes — essential for debugging and troubleshooting.
Standard API coverage:
Faults (4 endpoints) — list, inspect, and clear diagnostic faults
Logs (5 endpoints) — browse and configure application logs
Lifecycle (6 endpoints) — status, start, restart, shutdown operations
MS3: Configuration & Control
Goal: Allow developers to configure and control running applications.
This milestone brings configuration management (backed by ROS 2 parameters) and operation execution, giving developers runtime control over their nodes.
Standard API coverage:
Configuration (5 endpoints) — read/write configuration values
Operations (7 endpoints) — define, execute, and monitor operations
Modes (3 endpoints) — entity operating modes
MS4: Automation & Subscriptions
Goal: Enable automated workflows and reactive data collection.
Developers can set up scripts for automated diagnostics, subscribe to data changes, and define triggers for event-driven workflows.
Standard API coverage:
Scripts (8 endpoints) — upload, execute, and manage diagnostic scripts
Subscriptions (8 endpoints) — cyclic data subscriptions and triggers
Datasets (4 endpoints) — dynamic data lists for subscription
MS5: Fleet & Advanced Features
Goal: Complete SOVD API coverage with fleet-oriented and advanced features.
The final milestone adds capabilities for fleet management, bulk data transfer, software updates, and authentication — completing the standard specification coverage.
Standard API coverage:
Bulk Data (5 endpoints) — large data transfers
Communication Logs (5 endpoints) — protocol-level logging
Clear Data (5 endpoints) — cache and learned data management
Updates (4 endpoints) — software update management
Auth (2 endpoints) — authorization and token management
Future Directions
After achieving full standard API coverage, the project will focus on:
- Code Hardening
Replace initial implementations with production-ready code. Remove workarounds and refactor into smaller, well-tested packages.
- Additional Diagnostic Protocols
Extend support to other diagnostic standards relevant to robotics and embedded systems.
- Transport Protocols
Add support for alternative transport mechanisms beyond HTTP/REST.
We welcome community input on prioritization. Feel free to open an issue or join the discussion on GitHub!