Description
I'm removing the namespacing from my robot system so I can have a single repository and capability that generalizes to all robots in the fleet. This has turned into quite the challenge, but I'm broadly done with it except something worth digging into.
This is where the namespace for the MCU ROS 2 code
self.configure_mcu = LaunchFile.Process(
name='configure_mcu',
cmd=[
['export ROS_DOMAIN_ID=0;'],
[LaunchFile.Variable("FindExecutable(name='ros2')"),
' service call platform/mcu/configure',
' clearpath_platform_msgs/srv/ConfigureMcu',
' \"{{domain_id: {0},'.format(self.clearpath_config.system.domain_id),
' robot_namespace: \\\'{0}\\\'}}\"'.format(self.namespace)]
]
)
When I try calling this, no matter the contents, it hangs indefinitely and never gives a result. I was about to email you guys about how to make this work but before I did I tried rebooting and that made it take effect.
So, my question is: is it expect behavior that this doesn't work and hangs forever without a response to the service call - then takes effect on the next reboot? Some logging or notification about that would be wonderful. I don't even mind the reboot, that makes sense to me, but the lack of a response + hanging makes me think the MCU didn't get the service call at all.