Skip to main content

Documentation Index

Fetch the complete documentation index at: https://inorbitinc.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

This section specifies the public surface of the inorbit-connector package: what you are expected to override when implementing a connector, and what you can call at runtime.

Intended usage

An InOrbit connector is an application that:
  • Connects to your robot (or fleet manager) and to InOrbit via the InOrbit Edge SDK.
  • Runs a periodic execution loop to publish telemetry (pose, odometry, key-values, system stats).
  • Optionally handles commands coming from InOrbit.
You typically:
  • Implement a single-robot connector by subclassing inorbit_connector.connector.Connector.
  • Implement a fleet connector by subclassing inorbit_connector.connector.FleetConnector.
At runtime, you call:
  • start() to spawn the connector thread and begin the async lifecycle.
  • join() to block the main thread until shutdown.
  • stop() to request shutdown.
During the lifecycle, the framework calls your overrides:
  • _connect() once at startup (before sessions are initialized).
  • _execution_loop() repeatedly at approximately config.update_freq Hz.
  • _disconnect() once at shutdown.
  • A command handler (_inorbit_command_handler() for single-robot; _inorbit_robot_command_handler() for fleet) when commands arrive.
For map handling, publish_pose() / publish_robot_pose() automatically trigger map publication when the frame_id changes. If a map is not configured, the connector can fetch it by overriding fetch_map() / fetch_robot_map(). For narrative guides, see:

API surface (callable + overridable)

The table below lists package-defined symbols meant for direct use (call) or extension (override). Each row links to a longer specification page.
KindSymbolPurposeDetails
OverrideFleetConnector._connect()Connect to external services (fleet manager, robot backends) before sessions initialize.Details
OverrideFleetConnector._execution_loop()Periodic loop; publish telemetry for each robot.Details
OverrideFleetConnector._disconnect()Shutdown external services and release resources.Details
OverrideFleetConnector._inorbit_robot_command_handler()Handle commands for a specific robot_id.Details
Override (optional)FleetConnector.fetch_robot_map()Fetch a missing map (bytes + metadata) when publishing pose refers to an unknown frame_id.Details
Override (optional)FleetConnector._is_fleet_robot_online()Provide robot online status; used by Edge SDK callback.Details
CallFleetConnector.start() / join() / stop()Run and control the connector lifecycle.Details
CallFleetConnector.update_fleet() / FleetConnector.robot_idsUpdate fleet configuration (typically during _connect()) and access robot IDs.Details
CallFleetConnector.publish_robot_pose()Publish pose; triggers map publish when frame_id changes.Details
CallFleetConnector.publish_robot_map()Publish map metadata/image from configured maps (or after fetch).Details
CallFleetConnector.publish_robot_odometry()Publish odometry.Details
CallFleetConnector.publish_robot_key_values()Publish key-value telemetry.Details
CallFleetConnector.publish_robot_system_stats()Publish system stats telemetry.Details
Call (advanced)FleetConnector._get_robot_session()Access the underlying Edge SDK RobotSession for a specific robot.Details
OverrideConnector._connect() / _execution_loop() / _disconnect()Same lifecycle hooks as fleet, for a single robot.Details
OverrideConnector._inorbit_command_handler()Handle commands for the single robot.Details
Override (optional)Connector.fetch_map()Fetch a missing map for the current robot when pose references an unknown frame_id.Details
Override (optional)Connector._is_robot_online()Provide online status for the current robot.Details
CallConnector.publish_pose() / publish_map()Publish pose/map for the current robot (map handling included).Details
CallConnector.publish_odometry() / publish_key_values() / publish_system_stats()Publish telemetry for the current robot.Details
Call (advanced)Connector._get_session()Access the underlying Edge SDK RobotSession for the current robot.Details
TypeConnectorConfigBase configuration model for connectors.Details
TypeRobotConfigPer-robot configuration (robot_id + cameras).Details
TypeMapConfig / MapConfigTempMap configuration (file-backed vs in-memory bytes) used by map publishing/fetching.Details
TypeLoggingConfig / LogLevelsLogging configuration and log-level enum.Details
Callread_yaml()Load YAML configuration data (with deprecated robot_id selection support).Details
Type / CallCommandResultCode / CommandFailureStandard command result code enum and structured failure exception.Details
Callparse_custom_command_args()Parse custom-command args (RunScript action payload) into (script_name, params).Details
TypeCommandModel / ExcludeUnsetMixinPydantic-based command argument validation utilities.Details
Callsetup_logger()Configure logging from LoggingConfig.Details
TypeConditionalColoredFormatterOptional colorlog-backed formatter used by the default logging config.Details

Pages