How to run without a machine name from launch file?
I have a group of robots. I start the programs from a "master" computer. In that computer I set up the machine names and then from a main launch file I decide with programs to run in which robot/machine, everything works.
<machine name="robot_1" address="..." user=".." env-loader="..." />
Now, I am debugging one of the programs independently, so there is no need to assign machine names. Usually I am calling several launch files, and in the launch files I run nodes like this:
<node machine="$(arg machine_name)" name="node_name" pkg="pkg_name" type="node_name" >
... setup ...
</node>
If I do not set up the machine name beforehand, ROS trows an error. So, is there a way to run in "this machine" without assigning a machine name? I mean, without having to change the launch files or running the configuration script to assign a machine name.
The program I am want to debug is not in the same package as the configuration file so with this I would not have to make changes in the launch files every time I want to debug.
Not sure if that is what you want... The machine tag has a
default
-attribute.Also it would be nice if you'd post the error message which ROS throws, because it's hard to understand what exactly your problem is.