I was working on a Sawyer robot arm (specifically, two of them plugged into the same router, but I'm just trying to get one started now). The cables got unplugged and then replugged, but the settings had been changed so the arm's weren't functioning properly. I'm a research assistant and the grad students who have been working on the robot before are on vacation, so there's a lot of stuff in the file structure that I'm not quite clear about. (Also networking really isn't my strong suit, hopefully I'll learn something here.)
So far: rebooted the robot ran "source rarm.sh" the contents of which are:
export ROS_MASTER_URI=http://crlSawyerRighty.local:11311
export ROS_IP=192.168.2.2
source ~/ros_ws/devel/setup.bash
ifconfig shows 192.168.2.2 as the IP of the computer, /etc/hosts has 192.168.2.5 CRLSawyerRighty.local. This IP can be pinged successfully.
At this point: rostopic list showed all of the topics associated with the robot, but did not publish data on the subject. Attempting to enable the robot caused a hang and timeout because it couldn't get /robot/state. roswtf was telling me 'connection refused', so I tried rosnode cleanup and rebooting the robot. At this point, rostopic list does not show anything. Attempting to run roscore completes, but says "ROS_MASTER_URI [http://crlSawyerRighty.local:11311] host is not set to this machine" and runs the master on the computer (192.168.2.2). I've gone through various tutorials and support questions and nothing seems to be working. Thanks for any advice.
Originally posted by tkrane on ROS Answers with karma: 16 on 2019-06-21
Post score: 0
Original comments
Comment by tkrane on 2019-06-21:
For the record, I'm working with a Barrett hand on the same system, and rostopic has previously and still works fine with it, and it's functioning correctly.
Comment by imcmahon on 2019-06-22:
From a fully 'source'd terminal on your computer, while attached to the robot, can you please update your question with the output of the following:
$ env | grep ROS
``` <br/>
and <br/>
$ rosnode list -a
This should help us see if there's a disagreement on ROS environment variables between your computer and robot.
**Comment by [imcmahon](https://answers.ros.org/users/499/imcmahon/) on 2019-06-22**:\
Also, you seem to be a pretty advanced ROS user, but the [intera.sh](https://github.com/RethinkRobotics/intera_sdk/blob/master/intera.sh) file was created to simplify the ROS networking experience with the robot. Just modify the top environment variables and execute the script to enter a (hopefully correctly configured) ROS shell
**Comment by [tkrane](https://answers.ros.org/users/43295/tkrane/) on 2019-06-22**:\
env|grep ROS returns nothing but i think thats an installation issue. printenv|grep ROS works and it gives
ROS_ROOT=/opt/ros/kinetic/share/ros
ROS_PACKAGE_PATH=/home/nvidia/ros_ws/src:/opt/ros/kinetic/share
ROS_MASTER_URI=http://crlSawyerRighty.local:11311
ROS_VERSION=1
ROSLISP_PACKAGE_DIRECTORIES=/home/nvidia/ros_ws/devel/share/common-lisp
__ROS_PROMPT=1
ROS_DISTRO=kinetic
ROS_IP=192.168.2.2
ROS_ETC_DIR=/opt/ros/kinetic/etc/ros
and rosnode list -a gives
http://192.168.2.2:33298/ /bhand_node
(with the barrett hand running)