From 62f4ef56885cc5c9e95f4fd22148bd8a2c57fbd3 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Mon, 26 Oct 2026 16:17:12 +0900 Subject: [PATCH] website: Use `openarm-can-calibration-in-cell` for OpenArm Cell The arm in OpenArm Cell can run the zero-position calibration only when the lifter is at the top. `openarm-can-calibration-in-cell` in openarm_can raises the lifter to its top mechanical limit and then runs the same calibration as `openarm-can-zero-position-calibration`, but the docs only described `openarm-can-zero-position-calibration`. - Motor configuration: Add "Zero Position Calibration in OpenArm Cell" for `openarm-can-calibration-in-cell` - Tutorial: Use `openarm-can-calibration-in-cell` for OpenArm Cell and keep `openarm-can-zero-position-calibration` for OpenArm 2.0 without the Cell in "Zero position setup". Check that `can2` for the lifter is up for OpenArm Cell - FAQ: Link the jig entry to the new section - Redirect the removed jig calibration workflow page to the new section Co-Authored-By: Claude Opus 5.5 --- website/docs/faq/index.md | 3 +-- .../docs/setup/openarm-setup/4-motor-config.mdx | 17 +++++++++++++++++ website/docs/tutorial/setup.mdx | 16 ++++++++++++++-- website/docusaurus.config.ts | 2 +- 4 files changed, 33 insertions(+), 5 deletions(-) diff --git a/website/docs/faq/index.md b/website/docs/faq/index.md index 4d7f7080..2b1dabb4 100644 --- a/website/docs/faq/index.md +++ b/website/docs/faq/index.md @@ -105,10 +105,9 @@ Check the following in order. ## Should I use the zero-position calibration jig with OpenArm Cell? -We recommend the [zero-position calibration with the mechanical limits](../setup/openarm-setup/4-motor-config.mdx#step-2-zero-position-calibration) instead of the jig. +We recommend the [zero-position calibration with the mechanical limits in OpenArm Cell](../setup/openarm-setup/4-motor-config.mdx#zero-position-calibration-in-openarm-cell) instead of the jig. The jig aligns the arm to OpenArm Cell, so assembly errors of the Cell shift the zero position. The calibration with the mechanical limits uses the mechanical limit of each joint, so the assembly errors of the Cell don't affect it. -You can run it with the arm mounted in OpenArm Cell. ## OpenArm Cell shuts off during zero-position calibration. diff --git a/website/docs/setup/openarm-setup/4-motor-config.mdx b/website/docs/setup/openarm-setup/4-motor-config.mdx index d5c239bc..db79115b 100644 --- a/website/docs/setup/openarm-setup/4-motor-config.mdx +++ b/website/docs/setup/openarm-setup/4-motor-config.mdx @@ -98,6 +98,23 @@ openarm-can-zero-position-calibration --canport can3 --arm-side left_arm /> +### Zero Position Calibration in OpenArm Cell + +If the arm is mounted in [OpenArm Cell](../../hardware/openarm-cell/general.mdx), use `openarm-can-calibration-in-cell` instead. +The arm can run the calibration only when the lifter of OpenArm Cell is at the top. +This command raises the lifter to its top mechanical limit, asks you to confirm it, and then runs the same calibration as `openarm-can-zero-position-calibration`. + +```bash +# Right arm (can0) +openarm-can-calibration-in-cell --arm-side right_arm + +# Left arm (can1) +openarm-can-calibration-in-cell --arm-side left_arm +``` + +The lifter is connected to `can2` by default. Use `--lifter-canport` to change it. +If OpenArm Cell shuts off during the calibration, see [the FAQ](../../faq/index.md#openarm-cell-shuts-off-during-zero-position-calibration). + ## Step 3: Verify Motor Communication Run the monitor command to check motor status. Replace `1,2,3...` with your motor IDs. diff --git a/website/docs/tutorial/setup.mdx b/website/docs/tutorial/setup.mdx index 2a5b5c07..8d57474e 100644 --- a/website/docs/tutorial/setup.mdx +++ b/website/docs/tutorial/setup.mdx @@ -126,12 +126,25 @@ ip link show ``` `can0` and `can1` should appear in the UP state. +If you use OpenArm Cell, `can2` for the lifter should also appear in the UP state. :::warning The arm moves automatically during the calibration. Clear the workspace and be ready to emergency stop. ::: -Then run the following commands to set the zero position for each arm: +Then run the following commands to set the zero position for each arm. + +If you use OpenArm Cell, run `openarm-can-calibration-in-cell`. +It raises the lifter on `can2` to the top before the calibration. + +```bash +openarm-can-calibration-in-cell --arm-side right_arm +openarm-can-calibration-in-cell --arm-side left_arm +``` + +If OpenArm Cell shuts off during the calibration, see [the FAQ](../faq/index.md#openarm-cell-shuts-off-during-zero-position-calibration). + +If you use OpenArm 2.0 without the Cell, run `openarm-can-zero-position-calibration`: ```bash openarm-can-zero-position-calibration --canport can0 --arm-side right_arm @@ -139,7 +152,6 @@ openarm-can-zero-position-calibration --canport can1 --arm-side left_arm ``` See [Zero Position Calibration](../setup/openarm-setup/4-motor-config.mdx#step-2-zero-position-calibration) for details. -If OpenArm Cell shuts off during the calibration, see [the FAQ](../faq/index.md#openarm-cell-shuts-off-during-zero-position-calibration). ## Camera setup diff --git a/website/docusaurus.config.ts b/website/docusaurus.config.ts index 0e5d094e..3ce79765 100644 --- a/website/docusaurus.config.ts +++ b/website/docusaurus.config.ts @@ -137,7 +137,7 @@ const config: Config = { { from: '/api-reference/setup/motor-firmware-update', to: '/setup/openarm-setup/motor-firmware-update' }, { from: '/tutorial/data-collection', to: '/tutorial/data-collection-vr' }, // The OpenArm Cell jig is replaced by the calibration with the mechanical limits - { from: '/hardware/openarm-cell/calibration-workflow', to: '/setup/openarm-setup/motor-config' } + { from: '/hardware/openarm-cell/calibration-workflow', to: '/setup/openarm-setup/motor-config#zero-position-calibration-in-openarm-cell' } ], createRedirects(existingPath: string) { const removedInV2 = [