Repository navigation
Conversation
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 28, 2026 06:51
76400b5 to
ef91899
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 28, 2026 07:35
ef91899 to
37bf37e
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 28, 2026 08:42
37bf37e to
7075d62
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 29, 2026 06:57
7075d62 to
f0333ef
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 29, 2026 15:52
f0333ef to
73304b3
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 30, 2026 14:48
73304b3 to
c4bea31
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 30, 2026 18:11
c4bea31 to
6a66874
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 30, 2026 18:20
6a66874 to
9a6fe67
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 31, 2026 19:07
9a6fe67 to
7cbb1c9
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 31, 2026 21:14
7cbb1c9 to
942231b
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 31, 2026 22:25
942231b to
d0602fd
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
October 31, 2026 23:18
d0602fd to
84e1e2a
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 1, 2026 15:05
84e1e2a to
694d09c
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 00:47
694d09c to
769ed69
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 05:19
769ed69 to
b5e2df7
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 06:23
b5e2df7 to
91b2908
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 07:10
91b2908 to
46ae0f2
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 08:00
46ae0f2 to
5237901
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 08:44
5237901 to
c8eac06
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 09:09
c8eac06 to
8787a26
Compare
stevenaya
force-pushed
the
feature/v2-camera-mounts
branch
from
November 2, 2026 09:37
8787a26 to
9ba8203
Compare
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
V1 and V2 use separate model generators. This update moves both to shared topology-driven assembly, adds the V2 body-camera assembly, and makes control interfaces follow the selected preset. This draft tracks the complete model and the split PRs below; completed items are marked as merged.
Changes
Discover optional component Xacro interfaces through the package-level loader, with YAML generation as the default; keep common macros independent of component implementations.
Move transforms, link/joint output, reference frames, validation and topology-driven component generation into
assets/common/, including oblique-axis reflection.Name ordinary component links and joints as
preset.prefix + local name. Remove topology prefixes, duplicate override aliases and V1 prefix CLI compatibility; preserve controlled joint names. Reference frames use the instance prefix, and mounting joints use<root_link>_mount_joint. Resolve ZED names once in its adapter.Configure empty arm-tip folding through topology and generate ROS2 control interfaces from the enabled preset components.
Move body assets into
assets/body/v1.0/andassets/body/v2.0/. Resolve body root names from topology and mounting transforms from preset references.Drive V1 assembly and placement from presets, removing
parent/xyz/rpyand*_arm_base_xyz/rpyoverrides. Use the complete parallel-gripper component, withlink7 → hand → fingers/TCP. Center link2/link4/link6 origins while preserving physical placement and motor coordinates.Add accessory support, the ZED Mini mount and the default bimanual camera assembly. Use the official
zed_description0.2.0 package in export and test CI. Rename the support instance prefix fromopenarm_body_zed_mount_toopenarm_body_zed_support_.Add a 9,500-triangle ZED support visual, with selected fasteners removed and the shells and metal parts simplified separately.
Add ZED-mount collision geometry: a support box ending at Z=40 mm and a closed 5,314-triangle shell with flush camera/screw openings and a convex lower section up to Z=41 mm. Enable multiple collisions per link and regenerate the V2 example URDF.
Update example URDFs, launch configuration and usage instructions. Replace model-parameter snapshots with small configuration fixtures, interface checks and a shared preset-expansion suite.
Preserve prismatic travel limits under reflection and apply folded gripper placement to direct base children. Existing regression tests cover asymmetric travel and serial finger chains.
Require leaf tips for collapse and validate standalone gripper topology through the component macro entry.
Reflect pinch-gripper joint axes component by component and verify oblique travel at both configured endpoints.
Split PRs
The test cleanup in #110 is merged. Review continues with #111, including the direct-child folding guard, followed by the mounting-transform draft #112. IDs below identify the split plan; the PR column tracks submissions.
fix/v2-link4-cable-coverfix/v2-link4-mesh-reductionfix/v2-open-cover-modelfeat/v2-gripper-camerafix/v1-visual-materialsrefactor/shared-xacro-primitivesfix/shared-joint-reflectionfix/v2-visual-normalsfix/v2-collision-meshesrefactor/shared-kinematic-componentsrefactor/shared-body-emitterrefactor/pinch-gripper-macrorefactor/test-contractsrefactor/topology-component-generationfix/component-mount-reflectionfeat/component-xacro-interfacesrefactor/arm-tip-collapse-configrefactor/shared-ros2-controlrefactor/v2-body-assetsfeat/v2-body-camera-assemblyrefactor/v1-preset-assemblyfix/v1-center-joint-originsValidation
check_urdfacross the mounting-transform change, accounting for fixed mounting-joint renames.Cell follow-up
feat/v2-cell-descriptionThe Cell branch adds CAD-derived visuals with a white tabletop sheet, a black metal plate and yellow light-curtain housings, a 0–0.3 m lifter,
openarm_cell_frame names and 17 collision primitives: 12 boxes and five triangular prisms. The floor encloses the tabletop beams, side ramps reach the rear posts, and the lifter box maintains 0.5 mm clearance from the guide envelope. The light-curtain end caps, infrared strips and brackets remain black. The estimated lifter mass is 2.82498 kg. Its extrusion uses 2.465533 kg/m, derived from the weighed pedestal after deducting the plate, brackets, rear brace and fasteners. The HFS6-3060 rear brace is estimated at 0.328101 kg from the original STEP, including its hollow section and machined cutouts. The other two lifter parts retain their steel-density estimates. COM and inertia use three component boxes combined with the parallel-axis theorem. Its 37 existing tests pass.Review the Cell-only changes.
Follow-up model work