OM1 ROS2 SDK
v1.0.1-beta.1
What's included
Beta release for the Docker image openmindagi/om1_ros2_sdk, which provides the full ROS2 system for running the Unitree Go2, G1 and Limx Tron SDK.
Features
Support for the LimX Tron robot model, enabling advanced robotics applications with enhanced capabilities.
The Docker image and repository have been renamed back to om1-ros2-sdk for consistency with other OM1 components.
Restructure of the codebase to support multiple robot models with a unified architecture, allowing for easier expansion and maintenance.
Improved configuration management, enabling users to easily switch between different robot models and customize settings.
The Docker image and repository have been renamed to unitree_sdk, reflecting the unified SDK architecture and simplifying deployment workflows.
Smart Auto-Charging System
The robot now supports AprilTag-based visual docking integrated with Nav2 navigation.
When the robot requires charging, it autonomously navigates to the charging station’s vicinity using the Nav2 stack.
Upon reaching the target area, it switches to precision docking mode, using onboard cameras to detect AprilTags mounted near or on the charging dock.
This hybrid approach ensures robust and accurate alignment for seamless autonomous charging.
The CYCLONE_INTERFACE has been renamed to CYCLONEDDS_INTERFACE for consistency with the underlying communication standard.
New Remote Control Feature Added the ability to remotely control the robot, enabling manual operation for testing, navigation overrides, and precision movement in complex environments.
We added monitoring to WatchSensor for audio RTSP.
Reorganized the orchestrator package by splitting core logic, API, and cloud nodes into 'core', HTTP/ROS handlers into 'handlers', and process, map, location, and charging logic into 'managers'. Added new service and utility modules, moved WebSocket clients/servers to 'utils', and updated imports accordingly. This modular structure improves maintainability, separation of concerns, and scalability for future development.
Users can now enable or disable TTS mode directly from the web portal for greater flexibility in communication and operation.
New topics have been added for fetching, enabling, and disabling AI mode, allowing dynamic AI state management via ROS or other interfaces.
Agile mode of the robot is unstable due to the payload on its back. Operate in Classic Mode for optimal stability and performance is recommended.
Added CRSF Protocol Support
Added turbo mode for the xbox controller
Added listening and scouting configuration to zenoh_bridge_config for disabling multicast to prevent receiving messages from other robots
Introduced Pydantic models for location and pose data
New endpoints to add and list map locations, and ensure locations are stored in a dedicated directory.
docker-compose is updated to mount a new 'locations' volume. Also extended the orchestrator API to handle 'add_location' and 'list_locations' actions.
Added MediaMTX watcher: MediaMTX is a zero-dependency media server and proxy used to publish, read, proxy, record, and playback live video and audio streams. It serves as a central "media router," handling multiple streaming protocols like RTSP, WebRTC, RTMP, and HLS.
Real-time SLAM: Simultaneous localization and mapping using SLAM Toolbox
RPLiDAR Integration: Support for RPLiDAR A1/A2/A3 series sensors
Navigation: Integration with Nav2 for autonomous navigation
Robot Control: Direct integration with Unitree Go2 movement commands
Visualization: Pre-configured RViz setup for monitoring
Transform Management: Automatic handling of coordinate frame transforms
Component Overview
Watchdog
Monitors ROS2 topics and sensor health.
Automatically restarts
om1_sensorif any topics or sensors stop publishing data.Ensures system stability during long-running sessions.
om1_sensor
Manages all low-level sensor drivers:
Intel RealSense D435 (depth camera)
RPLidar (LiDAR scanning)
Publishes ROS2 topics for system consumption:
/om/paths— Processed path and localization data/scan— Raw LiDAR scan data
Orchestrator
Provides API endpoints and cloud service integration.
Manages:
SLAM (Simultaneous Localization and Mapping)
Navigation (Nav2)
Map storage and loading
Allows interaction via REST APIs.
Zenoh Bridge
zenoh_bridge acts as a bridge between OM1 and OM1_sensor to publish and subscribe to/from ROS2 topics.
Docker image
The OM1-ros2-sdk is provided as a Docker image for easy setup.
The docker image is also available at Docker Hub.
For more technical details, please refer to the docs.
Last updated
Was this helpful?
