We've found sometimes it fails to activate LifecycleNodes automatically. Manual activation is accepted successfully.
We are currently investigating this. Probably will try to replace the activation condition.
# Launch nodes
$ ros2 launch ros2_socketcan socket_can_bridge.launch.xml interface:=vcan0
[INFO] [launch]: All log files can be found below /home/kenji/.ros/log/2021-03-18-14-49-12-183689-KM-DAIV-69318
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [socket_can_receiver_node_exe-1]: process started with pid [69330]
[INFO] [socket_can_sender_node_exe-2]: process started with pid [69332]
[socket_can_receiver_node_exe-1] [INFO 1616046552.306117348] [socket_can_receiver]: interface: vcan0
[socket_can_receiver_node_exe-1] [INFO 1616046552.306181503] [socket_can_receiver]: interval(s): 0.010000
[socket_can_sender_node_exe-2] [INFO 1616046552.306349697] [socket_can_sender]: interface: vcan0
[socket_can_sender_node_exe-2] [INFO 1616046552.306387237] [socket_can_sender]: timeout(s): 0.010000
[socket_can_sender_node_exe-2] [WARN 1616046552.541547370] [rcl_lifecycle]: No transition matching 3 found for current state unconfigured
[ERROR] [launch_ros.actions.lifecycle_node]: Failed to make transition 'TRANSITION_ACTIVATE' for LifecycleNode '/socket_can_sender'
[socket_can_sender_node_exe-2] [ERROR 1616046552.541622919] []: Unable to start transition 3 from current state unconfigured: Transition is not registered., at /tmp/binarydeb/ros-foxy-rcl-lifecycle-1.1.10/src/rcl_lifecycle.c:350
# Check status
$ ros2 lifecycle get /socket_can_sender
inactive [2]
# Check receiver
$ ros2 lifecycle get /socket_can_receiver
active [3]
# Activate manually
$ ros2 lifecycle set /socket_can_sender activate
Transitioning successful
# Check status again
$ ros2 lifecycle get /socket_can_sender
active [3]
We've found sometimes it fails to activate LifecycleNodes automatically. Manual activation is accepted successfully. We are currently investigating this. Probably will try to replace the activation condition.