Remote Roslaunch Output to Local Monitor
Is there a way to get the output from remote processes launched on a different machine to display on the console in which it was launched?
I am launching my remote processes like so:
<launch>
<node machine="remote_robot" name="robot_node" type="robot_node" pkg="robot_node" output="screen" />
</launch>
I have seen the previous post here. Which basically said that the only options are rxconsole for proper ros outputs (which my wrapper is not able to use). It also spoke about remote X11 session, which is interesting however I was unable to find any more information after digging into the thread history.
Asked by kmaroney on 2012-03-21 12:39:30 UTC
Answers
If there aren't too many args to the launch, you can write a ros node that simply uses system process calls (eg, using python's subprocess module) to execute the roslaunch command as you would from the command line.
Since you can pass
Asked by phil0stine on 2012-03-21 12:46:23 UTC
Comments
This is an interesting idea. I can see from quickly reading through the documentation that the subprocess module can run just as you would from command line as you said, however I didn't see that you have the ability to run commands on remote machines? Are there packages that have done this?
Asked by kmaroney on 2012-03-21 13:19:50 UTC
I use this method to run launch files remotely, but just realized that you're right, this won't work (easily) for getting the log data back to the local monitor, sorry bout that.
Asked by phil0stine on 2012-03-21 13:45:13 UTC
Check out https://github.com/ctu-vras/scoped_roslaunch - in this package we have enabled transmission and printing of stdout, too.
Asked by peci1 on 2021-09-09 14:42:53 UTC
Comments