You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Resetting and starting of nodes is rather a part of the activation process, so it shouldn't be done/checked all the time in the update loop. Changing this would lead to clearer code and behavior, but it has some strong drawbacks:
Needs error management inside HW interface. ros2_control supports that (see this PR), but then also all the controllers get deactivated – and they have to manually activated again.
The first point clearly disturbs the prototyping and makes it much harder is someone doesn't understand all the internal mechanisms from ros2_control.
There is currently not possibility to automatically re-activate hardware and controllers which probably is desired scenario is many applications to handle bus errors better, e.g., bus errors caused by use of non-realtime kernel.
Resetting and starting of nodes is rather a part of the activation process, so it shouldn't be done/checked all the time in the update loop. Changing this would lead to clearer code and behavior, but it has some strong drawbacks:
ros2_canopen/canopen_ros2_control/src/canopen_system.cpp
Lines 270 to 280 in 1ac8251
P.S. I will also extend this in the future with possible solutions when different options are tested in real-world scenarios.
The text was updated successfully, but these errors were encountered: