You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A ROS2 hardware interface plugin library for humanoid robots, built on top of ros2_control. It provides production-ready, real-time-safe hardware interface implementations for multiple robot platforms, along with shared utilities that make adding new robots straightforward.
Supported Robots
Robot
Vendor
Communication
Plugin Name
G1
Unitree
DDS (unitree_sdk2)
unitree/G1HardwareInterface
X2
Agibot
ROS2 Topic (aimdk_msgs)
agibot/X2HardwareInterface
PM01
EngineAI
ROS2 Topic (interface_protocol)
engineai/PM01HardwareInterface
Features
Real-time safe — zero heap allocation in read(), write(), and SDK callbacks
Lock-free data exchange — SPSC triple-buffer (DataBuffer<T>) between the SDK thread and the ros2_control thread
Safe startup — three-layer protection ensures commands are never sent before the first valid state is received
Configurable decimation — reduce CPU load by processing state at a fraction of the SDK publish rate
Performance monitoring — latency warnings for read(), write(), state callbacks, and command send jitter; silent during normal operation