Background Tasks

The Background Tasks system provides a framework for running continuous, long-running processes that operate independently of the main control loop. These tasks typically handle sensor data collection, state monitoring, and other background operations. Key components:
  • BackgroundOrchestrator: Manages the lifecycle of all background tasks, including startup and graceful shutdown.
  • Plugins: Background tasks are loaded dynamically from the backgrounds/plugins directory.
  • Each background task runs in its own thread, with thread pooling for efficient resource utilization.
Available background tasks include:
  • GPS: Handles GPS data processing
  • ODOM: Manages odometry data
  • RF Mapper: Implements RF signal mapping functionality
  • RPLIDAR: Interfaces with RPLIDAR sensors
  • RTK: Real-Time Kinematic positioning
  • Unitree Go2 State: Manages state for Unitree Go2 robots
Background tasks are configured through the main runtime configuration and can be extended by adding new plugin modules.