Nodelets and bond timeouts
I've been having a problem with the diamondback upgrade - quite often my nodelets on the robot will suddenly exit cleanly with no warning or message. After some debugging, I've tracked this down to the bond heartbeat checks.
I observied it only happens when monitoring over the wireless to the robot, which in our congested building, often has rather lengthy delays. This seems to trigger the bond OnHeartBeatTimeout which prompts everything to shut up shop (would be good to print a message when doing so).
I can disable these via the /bond_disable_heartbeat_timeout or increase the timeouts in bond/msg and that keeps the system running.
Some questions.
- Why does the robot nodelet exit if a remote service client connection has a problem, or is it the source of the problem itself?
- What should I be wary of when disabling these globally via the param?
- Would it be possible to move configuration of the timeouts to $ROS_ROOT/config?