Quick Start
Run the A-750 teleop stack in mock mode:
Open the Meshcat URL printed in the terminal, usually
http://localhost:7000, to view the robot.
Real Hardware
The A-750 blueprint uses the mock adapter by default. Start by connecting the arm to your computer with a USB cable. On Linux, the device will likely appear as/dev/ttyACM0. You can also check /dev/serial/ for stable symlinks to connected serial devices.
Pro tip: run this in a separate terminal while plugging in the arm to verify that the OS detects it normally:
dialout group:
DEVICE_PATH when launching the blueprint:
Robot Model
The robot model and hardware config are defined indimos/robot/manipulators/a750/config.py.
The runnable keyboard teleop stack is composed in
dimos/robot/manipulators/a750/blueprints/teleop.py.
The runtime model and
a750_description package root are resolved lazily through
a Git-backed robot description source handle pinned to an immutable commit. For
Pinocchio FK/IK, dimOS removes the two finger joint subtrees from the upstream
URDF and caches the resulting six-DOF arm model. Keyboard teleop does not load
the model directly.
Gripper
The blueprint configures a parallel-jaw gripper:
The adapter reads and commands gripper position in meters using the
a750_control Python binding.
Hardware Adapter
The adapter is registered asa750 in dimos/hardware/manipulators/a750/adapter.py.
It supports:
The
a750_control package starts a separate thread with real-time priority for its hardware control loop. That loop sends commands and reads back joint state at 1 kHz. The dimOS read_joint_positions, read_joint_velocities, and read_joint_efforts calls return the most recent data cached by that loop rather than synchronously querying the robot, so returned joint data may be up to 1 ms stale. The USB connection also adds roughly 1 ms of latency.
The adapter requires the optional manipulation dependency:
a750_control is not installed, connect() records an error and returns False.
Control Path
Thekeyboard-teleop-a750 blueprint is defined in
dimos/robot/manipulators/a750/blueprints/teleop.py.
a750_control binding runs its hardware control loop at 1 kHz once the adapter is enabled.
Keyboard Controls
The A-750 teleop command uses the same keyboard controls as the other manipulator teleop blueprints:Known Limitations
- Joint limits are currently approximate:
[-pi, pi]for each arm joint, with max velocitypi rad/sin the dimOS adapter. - EEF twist commands are integrated and solved by the dimOS coordinator task, not by a native Cartesian mode in the hardware adapter.
- Force/torque data is not exposed yet.
- Real hardware mode depends on the external
a750_controlpackage and a reachable serial device.
