ros-industrial-attic / swri-ros-pkg

Automatically exported from code.google.com/p/swri-ros-pkg
7 stars 9 forks source link

Control-C break doesn't interrupt motoman->motion_interface or robot_state #4

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Start either motion interface (rosrun motoman motion_interface) or (rosrun 
motoman joint_state)
2. Wait until the node connects to the controller (this assumes the controller 
is up and running as well)
3. Press Control-C in the terminal window to stop execution.

What is the expected output? What do you see instead?

The node should be cleanly killed almost immediately, instead the node never 
dies and an explicit "kill" command is required.

Original issue reported on code.google.com by shaun.ed...@gmail.com on 21 Dec 2011 at 10:48

GoogleCodeExporter commented 9 years ago
This problem results from the inability of socket read calls to be interrupted. 
 The socket select function (wrapped in socket::isReadReady) can be used to 
create and interruptable socket read.

Using roslaunch hides this issue as the launch program eventually calls the 
"kill" command automatically.

Original comment by shaun.ed...@gmail.com on 21 Dec 2011 at 11:01

GoogleCodeExporter commented 9 years ago
r279 adds a check to ros::ok(), which makes robot_state shut down cleanly on 
Ctrl-C.

Original comment by ger...@willowgarage.com on 27 Feb 2012 at 7:54

GoogleCodeExporter commented 9 years ago
Just saw motion_interface not shutdown cleanly.  So something more is needed.

Original comment by ger...@willowgarage.com on 27 Feb 2012 at 8:24

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Jeremy, you might want to tackle this one with the generic client development.

Original comment by shaun.ed...@gmail.com on 2 Nov 2012 at 11:04

GoogleCodeExporter commented 9 years ago
These issues have been corrected or made obsolete with the backporting of the 
fs100 driver to the dx100.  See here: 
https://github.com/ros-industrial/motoman/pull/14

Original comment by shaun.ed...@gmail.com on 6 Sep 2013 at 2:43