micro-ROS / micro-ROS/system_modes
Error in node state when switching modes
- Dominant language
- C++
- Stars
- 45
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
Hello!
I've been working with system_modes for a few days and I'm having an error when changing my system mode.
I have several modes, which are default, alert, compromised and halt, and in this particular example when I change the mode from alert to compromised there are nodes that do not change their status from active to inactive. I leave you images of the monitor so that you can see the result together with the yaml configuration of both modes.
```
ALERT:
image_1_to_2: inactive
imu_1_to_2: active
odom_1_to_2: active
pc2_1_to_2: active
scan_1_to_2: active
tf_1_to_2: active
tf_static_1_to_2: active
twist_2_to_1: active
COMPROMISED:
image_1_to_2: inactive
imu_1_to_2: active
odom_1_to_2: active
pc2_1_to_2: inactive
scan_1_to_2: inactive
tf_1_to_2: active
tf_static_1_to_2: active
twist_2_to_1: inactive
```
System in alert mode:

System in compromised mode:

I also show you how I have configured the modes of some of the nodes, although I am not using that parameter
```
pc2_1_to_2:
ros__parameters:
type: node
modes:
__DEFAULT__:
ros__parameters:
use_sim_time: false
scan_1_to_2:
ros__parameters:
type: node
modes:
__DEFAULT__:
ros__parameters:
use_sim_time: false
```
I do not have any type of rule configured, although I suppose that for this simple case of changing node states it would not be necessary.
Any idea what is happening?
Contributor guide
Research direction
The report provides no source file or test; begin with the ALERT and COMPROMISED YAML and the listed node-state screenshots, then reproduce the alert-to-compromised transition in the described ROS 2 setup. Trace why pc2_1_to_2, scan_1_to_2, and twist_2_to_1 remain active, and verify that every node reaches the state declared for COMPROMISED.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- robotics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100