1
$\begingroup$

I've been trying to run robot_state_publisher and joint_state_publisher on a remote TX1 running Ubuntu 16.04 and ROS Kinetic. When running the node from a local launch file (manually ssh into the remote machine and run launch file), everything runs fine. However, when I try to run a launch file from my local machine (launches nodes from remote machine using the < machine > tag), I get this error in my terminal:

[192.168.1.237-0]: [robot_state_publisher-28] process has died [pid 26798, exit code 255, cmd /opt/ros/kinetic/lib/robot_state_publisher/state_publisher __name:=robot_state_publisher log:=/home/nvidia/.ros/log/038bfbd8-7afb-11e8-b9f2-ac220b57ae89/robot_state_publisher-28.log].

log file: /home/nvidia/.ros/log/038bfbd8-7afb-11e8-b9f2-ac220b57ae89/robot_state_publisher-28*.log [192.168.1.237-0]: [joint_state_publisher-27] process has died [pid 26780, exit code 1, cmd /opt/ros/kinetic/lib/joint_state_publisher/joint_state_publisher __name:=joint_state_publisher log:=/home/nvidia/.ros/log/038bfbd8-7afb-11e8-b9f2-ac220b57ae89/joint_state_publisher-27.log].

log file: /home/nvidia/.ros/log/038bfbd8-7afb-11e8-b9f2-ac220b57ae89/joint_state_publisher-27*.log

How can I fix this? Here's my launch file:

<launch>

    <!-- ROS parameters -->
    <!-- remote machine (wheatley) -->


    <group>
        <machine name="wheatley" address="192.168.1.237" env-loader="/home/nvidia/catkin_ws/devel/env.sh" user="nvidia" password="nvidia" default="true" />
        <include file="freenect.launch"/>
                    <arg name="depth_registration" value="true" />
                    <arg name="publish_tf" value="false" />
        <include file="mpu_9250.launch" />

        <arg name="model" default="wheatley.urdf"/>

        <param name="robot_description" command="$(find xacro)/xacro --inorder $(arg model)"/>


        <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" />
                <param name="use_gui" value="false" />
        <node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher" />
            <param name="use_gui" value="false" />


            <!-- IMU frame: just over the RGB camera -->
            <!--node pkg="tf" type="static_transform_publisher" name="rgb_to_imu_tf" args="0 0.0 0 0.0 0.0 0.0 /sensor_link /imu_link 50" /-->

            <arg name="pi/2" value="1.5707963267948966" />
            <arg name="optical_rotate" value="0 0 0 0 0 0" />
            <node pkg="tf" type="static_transform_publisher" name="optical_rotation" args="$(arg optical_rotate) /sensor_link /camera_link 50" /> 

        <include file="rtabmap.launch">
            <arg name="rtabmap_args" value="--delete_db_on_start"/>
        </include>
    </group>

</launch>

Here's the error traceback on the robot:

Traceback (most recent call last):
  File "/home/nvidia/catkin_ws/src/joint_state_publisher/joint_state_publisher/joint_state_publisher", line 474, in <module>
    jsp = JointStatePublisher()
  File "/home/nvidia/catkin_ws/src/joint_state_publisher/joint_state_publisher/joint_state_publisher", line 149, in __init__
    robot = xml.dom.minidom.parseString(description)
  File "/usr/lib/python2.7/xml/dom/minidom.py", line 1928, in parseString
    return expatbuilder.parseString(string)
  File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 940, in parseString
    return builder.parseString(string)
  File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 223, in parseString
    parser.Parse(string, True)
TypeError: Parse() argument 1 must be string or read-only buffer, not None

**EDIT: ** Here's the error from robot-state-publisher:

[ERROR] [1530379066.805335879]: Could not find parameter robot_description on parameter server

$\endgroup$

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.