Skip to content

Conversation

tylerlum
Copy link

@tylerlum tylerlum commented May 10, 2024

Related to Issue #264. View that for more detail. This is one suggested solution, but it is a breaking change because it changes the default behavior of warmup for certain cases. However, there is certainly a need for this type of change so that warmup works when we have link_poses to use

At a high level, motion_gen.warmup results in breaking cuda graph when using link_poses when planning with plan_batch

@balakumar-s
Copy link
Collaborator

This might also need an argument to specify which links to omit.

Instead if you want to only plan for end-effector, you should load the robot yaml file and then set robot_dict['robot_cfg']['kinematics']['link_names']=None.

Is there a situation where changing the robot_dict will not work?

@tylerlum
Copy link
Author

tylerlum commented May 16, 2024

I see. I believe that should work. Are you suggesting that we don't add the use_link_poses argument, and just always pass in link_poses to all plan_*? And then the user can control if they want to actually use link_poses by modifying robot_dict['robot_cfg']['kinematics']['link_names'] (eg. set it to None or ["palm", "fingertip"] or leave as is)?

I think this suggestion works, but it would be very helpful to have 1 tutorial page and/or getting started example that shows how to use link_poses and shows exactly how link_names is connected to link_poses. If it's not documented, then the dict modifications you describe will be very non-obvious and could result in frustrating "break cuda graph" errors

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants