I have robot arm that I referenced twice (left and right). I wanted to add a suffix to each joint so it is unique (e.g joint1_left instead of joint1). However, isaac sim doesn’t allow renaming. Hence the workaround is to use NameOverride attribute as mentioned here NameOverride Attribute — Isaac Sim Documentation
In my omnigraph, the ROS2 Publish Joint State is working correctly, it publishes the overriden name (fromt joint1 to joint1_left). However, the Isaac Joint Name Resolver is not working properly. It doesn’t convert the overriden name back to the original name. Did I do something wrong?
@lee43 I am just another user, but could you elaborate on this a bit? are you trying to rename prim(s) within a USD that is being referenced? and are there any error messages that pertains to ancestral prims? if you could include those error details, that’d help provide some context.
This is the error message I get. Yes, I’m using reference. However, even on the original USD, which I created through imported from URDF, I’m having the same message. Is there a way to ‘dereference’ it, so that I can change the joint name?
assuming you are importing the URDF through Isaac Sim’s URDF importer (File > Import), there is an option at the top where you can specify how to import the model, did you use Create in Stage or Referenced Model?
in either case, if you go through the imported hierarchy and noticed prims icon with either an orange or blue arrow displayed as shown below, you will not be able to move/rename any of its child prims (blue indicates that it’s a payload; orange a reference composition arc. feel free to check out the official overview of the differences):
the way to ‘dereference’ any prim is to ‘flatten’ the USD which will embed the prims into your current stage rather than reference them. you can do that via File > Save Flattened As (if this option is greyed out, make sure you save the pre-existing USD stage):
once you’ve flattened the USD (probably a good idea to save a separate file just in case), you can reopen it and you should see no more references/payloads from the USD stage and will allow you to rename any prims.