Skip to content

Latest commit

Β 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

generic_arm_interfaces

Robot-agnostic ROS 2 service definitions (gripper command, pose saving), factored out into their own package so they can be shared without creating a dependency between the packages that use them.

πŸ“¦ Services

srv/GripperCommand.srv

string command       # "open" | "close" | "move"
float32 position      # only used with command:="move", range [0.0, 1.0]
string gripper_type   # "robotiq" | "softhand" | "rg2" | "franka_hand" | "auto" (empty = auto)
---
bool success
string message

srv/SavePose.srv

int8 save_mode         # 0 = absolute, 1 = camera-relative, 2 = ArUco marker-relative
string task_name
string reference_frame # marker frame id, only used with save_mode 2
---
bool success
string message

🧩 Standalone use

This package only depends on standard ROS 2 interface packages (builtin_interfaces, std_msgs) β€” no other in-workspace dependency. It can be cloned and built on its own; see generic_arm_controller's README for the vcs import step that pulls this repo in when building generic_arm_controller outside the main workspace.

πŸ”— Why this is a separate repo

Package Relation Depends on generic_arm_controller?
generic_arm_controller Implements the service servers (/gripper/command, /save_pose) β€”
llm_app Calls the services as a client (service_dispatch.py, skill_impl.py, chatlive.py) No β€” only depends on this package

generic_arm_controller is its own submodule; llm_app lives in the main ros2_arise_vulcanexus_V2 workspace and has no build/code dependency on generic_arm_controller itself. Putting the shared .srv definitions here β€” instead of inside generic_arm_controller β€” lets llm_app depend on just the message contract, not the whole controller.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages