Intel Realsense nodelets running with remote roscore are dying (bond broken)
Hi, I am having a hard time finding a solution to my issue. Here is my setup.
- Computer 1 (master computer): roscore, a subscriber that subscribes to a custom msg.
- Computer 2: "roslaunch realsense2_camera rs_camera.launch", a subscriber that subscribes to a depth topic and publishes our custom msg.
Both computers are running Ubuntu 16.04 with kernel 4.15.0-107-generic.
Both computers are using Kinetic as their ROS version.
And both computers are using realsense SDK version: 2.36.0.
I have set the ROS_MASTER_URI on computer 2 to http://computer1IP:11311, both computers are connected via Ethernet. (following this tutorial)
When I run "roslaunch realsense2_camera rs_camera.launch" on computer 2 this is the error I get:
[ INFO] [1594757854.382965902]: RealSense Node Is Up!
[camera/realsense2_camera-2] process has finished cleanly
log file: /home/<user_name>/.ros/log/e172c1b8-c651-11ea-8aea-00073273924f/camera-realsense2_camera-2*.log
I have tried following the solution here but it does not work for me. It would help out a ton if someone knew how to fix this issue.
Here is the output of env | grep ROS: (If it's helpful)
ROS_ROOT=/opt/ros/kinetic/share/ros
ROS_PACKAGE_PATH=/home/user_name/catkin_ws/src:/opt/ros/kinetic/share
ROS_MASTER_URI=http://computer1IP:11311
ROS_PYTHON_VERSION=2
ROS_VERSION=1
ROSLISP_PACKAGE_DIRECTORIES=/home/user_name/catkin_ws/devel/share/common-lisp
ROS_DISTRO=kinetic
ROS_IP=localhost
ROS_ETC_DIR=/opt/ros/kinetic/etc/ros
EDIT I found a fix that works so far, I don't know if it's a permanent solution but so far it works.
In my .bashrc on computer 2 I used to have this:
export ROS_MASTER_URI=http://computer1IP:11311
export ROS_IP=localhost
I changed it to:
export ROS_MASTER_URI=http://computer1IP:11311
export ROS_MASTER_URI=computer2IP
I'm not fully sure why using computer2IP instead of localhost fixes it, but my roslaunch no longer gives me the error I was having earlier.
I hope this helps someone and if anyone has a more correct way of doing this please let me know.
If you feel this is a duplicate, please link to whatever it is a duplicate of.
I accidentally marked it as a duplicate question and it wouldn't let me reopen it.
I've re-opened it for you.