Work in progress: this documentation is still being written and reviewed. Check details against the source code.

Operator GUI

Task editing, pose storage, execution controls, chat, and robot visualization. The ROS bridge connects the Qt interface to topics, actions, and services.

Read the guide · All subsystems · Symbol index

Start here

  • open_task_form — Locate the editor selected for a task type and see how accepted edits return to the queue.

  • MTCMainWindow._execute — Follow queue validation, preview selection, and document submission from the main window.

  • ROS2Bridge.execute_task — Trace the GUI request across the ROS action boundary and back through feedback and result signals.

  • VisualizationPanel.preview_pose — See how an edited joint pose updates the viewer without submitting a robot-motion command.

Modules

Module

Responsibility

Entries

GUI startup

Start the operator GUI and manage the Qt application’s lifetime.

1

Operator window

Coordinate task editing, saved runs, pose management, chat, and execution controls.

57

Task editor forms

Edit task dictionaries through a modal form selected by task_type.

68

Task queue display

Show editable task rows, selection, and execution progress.

35

ROS and GUI bridge

Translate ROS messages, action results, and service responses into Qt signals.

25

Pose browser and registry

Load, browse, and update the GUI’s shared pose registry.

16

Pose editing dialogs

Edit joint poses and choose where to save them.

13

Pose registry files

Read and atomically replace YAML registries of six-joint poses.

2

Camera display

Display camera images and marker detections in the operator GUI.

4

Robot and trajectory viewer

Display the robot, task previews, and configured obstacles in an embedded 3D viewer.

34

Embedded robot viewer

Render the robot model and obstacle preview inside the operator GUI. These JavaScript functions change the display; they do not send robot commands or update the MoveIt planning scene.

13

Chat interface

Present messages, tool calls, execution outcomes, and Plan/Run controls.

23

Chat agent connection

Connect the Qt chat interface to RobotAgent on a background asyncio thread.

15

Chat agent modes

Select the prompts, local tools, and MCP filters for the GUI’s Plan and Run modes.

4

GUI appearance

Apply the shared colors, fonts, icons, and widget styles.

6

Operator GUI launch

Launch wrapper for the mtc_gui_client executable. Beamline/robot configuration comes from BEAMBOT_BEAMLINE_CONFIG in the process environment, with no declared launch arguments.

1