Public vs Internal Paths¶
This page explains the differences between the public (open-deploy-ws) and internal (fa-deploy-ws) entry points.
Quick Comparison¶
Aspect |
Public Path |
Internal Path |
|---|---|---|
Workspace |
|
|
Access |
Anyone (public GitHub) |
FiveAges team only |
Robots |
Dobot, ARX, Galbot, HighTorque, quadruped |
FA W2/W2R/S2/S2R, dual-arm CCS |
Real Hardware |
ARX Lift 2S (full-body), Acone (dual-arm), HighTorque Panthera HT |
All FA robots |
Submodules |
Public only |
Public + private |
OCS2 |
GitHub Release |
Full source (default) |
Purpose |
Learning, OSS development, real robot deployment |
Production deployment |
Real Hardware on Public Path
ARX Lift 2S (方舟无限) is the full-body mobile manipulator (arms + chassis). Acone / AC One is dual-arm. HighTorque Panthera HT (高擎) is a dual-arm manipulator. Use the branch READMEs: ARX Lift 2S, HighTorque Panthera HT.
open-deploy-ws (Public)¶
Repository: https://github.com/fiveages-sim/open-deploy-ws
Features¶
All submodules are publicly accessible
Supports multiple robots: Dobot CR5, ARX (Acone dual-arm, Lift 2S full-body), Galbot, HighTorque Panthera HT
Real hardware: ARX Lift 2S and HighTorque Panthera HT via their
open-deploy-wsbranches (arx-lift2s,panthera-ht)OCS2 available as a GitHub Release
.deb(ros-jazzy-ocs2; not from apt / packages.ros.org)Lean branches:
dobot-cr5,arx-lift2s,panthera-htGood for learning, experimentation, contributing, and real robot deployment
Initialization¶
git clone https://github.com/fiveages-sim/open-deploy-ws.git
cd open-deploy-ws
./init_repo.sh
The init script will:
Configure submodule visibility (only public modules)
Prompt per core module: GitHub Release
.deb(d) or source (s)Initialize selected submodules
Visibility Configuration¶
The workspace uses submodules_visibility.conf to control which nested submodules are public or private. The file is pipe-separated (parent_dir|relative_path|visibility); blank lines and # comments are ignored. It is not an INI file with [public] / [private] sections.
# Format: parent_dir|relative_path|public or private
src/robot-descriptions|common|public
src/robot-descriptions|manipulator/Dobot|public
src/robot-descriptions|manipulator/Tianji|private
src/arms_ros2_control|controller/ocs2_wbc_controller|private
Lean Branches¶
For minimal builds focusing on a single robot:
# Dobot CR5 only
git checkout dobot-cr5
# ARX Lift 2S (full-body). Acone (dual-arm) is co-debug in this branch, not a separate platform.
git checkout arx-lift2s
# HighTorque Panthera HT
git checkout panthera-ht
fa-deploy-ws (Internal)¶
Access Required
This workspace requires private repository access. Contact your team lead if you need access.
Features¶
Internal workspace for FiveAges wheeled-arm humanoids (W2, W2R, S2, S2R) and dual-arm CCS
Description remotes live as private gitlinks under robot_descriptions
humanoid/FiveAges/— not a separaterobot-descriptions-fiveagesumbrellaFull OCS2 + WBC source when that workspace’s README says so
Source of truth
The fa-deploy-ws README is not public. Flags, robot IDs, and on-robot YAML are documented only in that README after you have access. Public-side pattern: fa-deploy-ws Setup.
Initialization¶
git clone <internal-url>/fa-deploy-ws.git
cd fa-deploy-ws
./init_repo.sh
Same script name as open-deploy-ws. Extra flags, robot IDs, and on-robot YAML live in the private README — copy them from there.
Public end-effector selection is launch type / left_type / right_type (and robot_profile), not a gripper:= argument. See robot_common_launch.
Choosing Your Path¶
Use the Public Path If:¶
You’re new to the ecosystem
You’re developing with publicly available robots
You’re contributing to open source packages
You don’t have FiveAges private repo access
Use the Internal Path If:¶
You’re deploying to FA wheeled-arm humanoids (W2/S2 series)
You need WBC whole-body control
You have authorized access to private repositories
Transitioning Between Paths¶
Public → Internal¶
Request access to private repositories
Clone
fa-deploy-wsfresh (don’t try to convert open-deploy-ws)Follow that repository’s README
Internal Users on Public Hardware¶
If you have internal access but want to work with public robots, use open-deploy-ws for a public-only checkout.
Network Configuration¶
Both workspaces can communicate with real robots over the network. Key configuration points:
Setting |
Purpose |
|---|---|
ROS Domain ID |
Isolates ROS 2 traffic between robots/users |
Zenoh configuration |
Required for cross-network communication |
Network interface |
Must match the robot’s network segment |
Domain Isolation
Always verify your Domain ID matches the target robot’s configuration. Mismatched IDs result in no communication without obvious errors.