Field commissioning

For on-site engineers who unpack a workspace, bring up the robot, and run teleop or a browser view.

1. Deploy from a field zip (deploy-ws)

Public lean branches document a zip path: unzip, then ./release.sh --install, then ./quick_start.sh. Descriptions stay as source; controllers and hardware interfaces come from .deb.

  1. Go to Real Hardware — safety, robot table, which branch to use.

  2. ARX Lift 2S — field zip, then ./quick_start.sh (split body / full body).

  3. HighTorque Panthera HT — field zip (~/ht-deploy-ws example), ./release.sh --install, ./quick_start.sh.

Git clone + ./init_repo.sh is the development path on the same pages. Extra flags and robot IDs for fa-deploy-ws are only in that workspace’s README after access: fa-deploy-ws Setup.

2. Deploy fa-py-libraries (zip or git)

On-site Python tools (interface, Viser, VR) come from fa-py-libraries.

  • Git: git clone then ./init.sh all (Python 3.12 env).

  • Field zip: the fa-py-libraries README documents ./release.sh (--package-no-git is the smaller zip). After unzip: ./init.sh install (and the optional XRoboToolkit ./init.sh lines only if you use that VR backend).

Then launch with ./run.sh or a direct subcommand from that README.

3. Start VR teleop

  1. VR Teleop — Pico Enterprise vs consumer, WebXR (./run.sh vr) vs XRoboToolkit (./run.sh vr-xrt).

  2. Same commands are listed on fa-py-libraries.

The robot stack (deploy-ws ./quick_start.sh or the launch on the how-to) must already be running. Headset SKU notes stay on the VR page.

4. Start Viser (browser view)

  1. Bring up the robot so /robot_description and /joint_states are published.

  2. From fa-py-libraries: ./run.sh viser — ros2-viser, fa-py-libraries.

Viser is a browser 3D view. The ros2-viser README also documents optional FSM and gripper panels (enable_fsm_panel / enable_gripper_panel, default on). There is no separate “phone app” or host/port flag in this docs set; open the Viser page the library prints, including from another device on the same network if that URL is reachable.