space-concordia-robotics/robotics-prototype

Make nodes have managed lifecycle

Opened this issue · 4 comments

In Ros2, with the nodes such as they are now, there is no way to kill a node without manually killing the process. To change this, the nodes need to be made LifecycleNodes so they can be shutdown properly. Some documentation is here:
https://index.ros.org/p/lifecycle/github-ros2-demos/

The packages in question for this task : absenc_interface, arm_ik, arm_controller, sil, wheels_controller, gps.

  • How to know you are done this task : You can stop and restart of these nodes after they have been launched

Its currently impossible to run the nodes locally on my laptop. According to Omar, the repo is only runnable on the Jetson. I'm trying my best to code without having to check if any nodes with lifecycles works yet.

The lifecycle nodes are now fully operational,
I just have to make sure that setting a lifecycle node to finalized kills it

shutdown works therefore it kills the node :)