kth-ros-pkg/yumi

yumi_gripper_node REQUIRED process [yumi/yumi_gripper-10] has died!

Closed this issue · 1 comments

Hi, I'm using KTH-ros-pkg on ROS Noetic, but when running roslaunch yumi_support robot_interface.launch I get the following error message:

    [ INFO] [1634715830.856610333]: Robot state connecting to IP address: 'x?zz?:2054877872'
    free(): invalid size
    ================================================================================
    REQUIRED process [yumi/yumi_gripper-10] has died!
    process has died [pid 19129, exit code -6, cmd /home/belal/ros1_ws/KTH/devel/lib/yumi_hw/yumi_gripper_node __name:=yumi_gripper __log:=/home/belal/.ros/log/76fb1620-3179-11ec-9b3c-8b5e4aa81ae2/yumi-yumi_gripper-10.log].
    log file: /home/belal/.ros/log/76fb1620-3179-11ec-9b3c-8b5e4aa81ae2/yumi-yumi_gripper-10*.log
    Initiating shutdown!
    
    ================================================================================

can you please tell me how to solve this issue? thanks in advance.

Note that I have modified this line control_period_pub.publish(period.toSec());
into:
std_msgs::Float64 msg; msg.data = period.toSec(); control_period_pub.publish(msg); in the yumi_hw_iface_node.cpp, otherwise I was getting an error for publishing a float directly!

The solution was to add return true; to all the bool functions in yumi_hw package, and doing the following change to yumi_hw.cpp:

const urdf::JointConstSharedPtr urdf_joint = urdf_model->getJoint(joint_name);
const urdf::JointConstSharedPtr urdf_joint_sitffness = urdf_model->getJoint(joint_name + std::string("_stiffness"));
// const boost::shared_ptr<const urdf::Joint> urdf_joint = urdf_model->getJoint(joint_name);
// const boost::shared_ptr<const urdf::Joint> urdf_joint_sitffness = urdf_model->getJoint(joint_name + std::string("_stiffness"));