Robotics StackExchange | Archived questions

How can I have different terminals for different nodes using roslaunch?

Hello to all,

I know that there other similar questions like that but nothing worked for me.

So lets' start with the configuration.

I have rPi3, running Raspbian Jessie and ROS Kinetic.

In my launch file, I start 2 nodes.

First I discovered that the launch-prefix is different in my case. So instead of using xterm I needed lxterminal, which is OK.

When I tried a file like the following:

<launch>
    <node name="hardware_interface_1" pkg="innoclimber_base" type="hardware_interface_node.py" args="boardA" output="screen" launch-prefix="lxterminal -e">
        <rosparam file="$(find innoclimber_base)/config/arduino_parameters.yaml" command="load" />
    </node>
    <node name="hardware_interface_2" pkg="innoclimber_base" type="hardware_interface_node.py" args="boardB" output="screen" launch-prefix="lxterminal -e">
        <rosparam file="$(find innoclimber_base)/config/arduino_parameters.yaml" command="load" />
    </node>
</launch>

I was able to see the 2 windows to pop-up blank and then immediately close and the program die.

I tried some flags in like hold, so the command became launch-prefix="lxterminal -e -hold" which I could hold the terminals opened but again blank and my program again died.

Has anybody has this kind of experience? Maybe it has to do with python or...not

Asked by angelos.p on 2017-07-24 07:28:36 UTC

Comments

What other answers have you tried that didn't work? Please include links to them so we know what doesn't work.

Asked by jayess on 2017-07-24 10:58:52 UTC

It may be a little late but I found your question and I was able to make something similar using terminator with launch-prefix="terminator -x python"

Asked by Accacio on 2018-07-17 04:34:10 UTC

Answers