micro-ROS / micro-ROS/system_modes

Provide lifecycle servicing

Open
#27 3 comments 2 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
45
Forks
13
PR merge metrics
No merged PRs in 30d

Description

The mode manager usually knows the **target** state/mode and the **current** state/mode (via mode_inference) of a system or node. Currently we assume, that there is a trivial transition to the target state, e.g, _activate_ to go to active, _deactivate_ to go to inactive.

However, this is not always true, e.g., if actual state is already the target state, or if target state can only be reached with >1 transitions. In order to allow that, mode manager needs to implement some kind of lifecycle service that knows how to get a node from any state to any other.

Contributor guide

Open the contributing guide

Research direction

Start by locating the mode manager and its mode_inference integration, then trace how target and current states are used for transitions. Define the lifecycle service around the requested behavior: it should handle already-reached targets and targets requiring multiple transitions between arbitrary states.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
robotics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.