Topics and Services
The Stonedrum Robotics ROS 2 packages expose standard topics, services, and actions to interface with the dexterous hand. These interfaces adhere to standard ROS message types wherever possible, allowing you to use native tools like ros2 topic echo and rqt.
Topic Reference
/hand/joint_states
- Type:
sensor_msgs/msg/JointState - Publisher:
HandNode - Description: Publishes the current state of the hand. The message contains the
name,position(in radians),velocity(in rad/s), andeffort(in Nm) of all active joints in the hand. This topic is published at the frequency defined by thepublish_rateparameter (default 50Hz).
/hand/joint_commands
- Type:
sensor_msgs/msg/JointState - Subscriber:
HandNode - Description: Receives target joint positions. The
HandNodeparses thenameandpositionarrays and forwards these targets to the underlying hardware. You only need to specify the joints you wish to move; unspecified joints will hold their current position.
/teleop/glove_state
- Type:
std_msgs/msg/String(or a custom TeleoperationFrame message) - Publisher:
TeleoperationNode - Description: Publishes the normalized telemetry generated by the teleoperation input device (e.g., a VR glove or a keyboard). This is primarily used for debugging human-in-the-loop inputs before they are converted to raw joint commands.
Action Reference
/execute_grasp
- Type:
dexterous_hand_interfaces/action/ExecuteGrasp - Server:
GraspActionServer - Description: An action server that accepts a string identifier for a grasp (e.g., "pinch", "cylindrical") and smoothly interpolates the hand's joints to that pose.
Action Goal:
string grasp_name
Action Feedback:
float32 progress_percentage
Action Result:
bool success
string message
By adhering to these standard interfaces, the Stonedrum Robotics SDK seamlessly integrates into complex, multi-node robotic systems. If you have questions about specific message definitions, please contact us at info@stonedrum.co.