Hardware Interfaces
Hardware interfaces form the connection layer between AICA Core and physical (or simulated) hardware (robots, sensors, ...). They are responsible for exposing hardware state and accepting control commands generated by controllers. A typical hardware interface provides the following capabilities:
- Reading joint and sensor states from the robot
- Sending position, velocity, effort, or torque commands
- Exposing General Purpose I/Os (GPIOs) and auxiliary interfaces
- Managing initialization, activation, and shutdown
- Ensuring real-time safe data exchange
All AICA hardware interfaces follow the
ros2_control standard, ensuring compatibility and
portability across different robots and deployments.
You can refer to our AICA Core introduction section for a visual representation of where hardware interfaces come into play in the system, and to the Supported Hardware page for an overview of readily available interfaces.
Role in the control stack
Within the AICA control architecture, hardware interfaces sit at the lowest level of the control stack (see here):
- Above them are controllers (e.g., joint trajectory, IK, impedance, GPIO controllers)
- Below them is the actual robot hardware or simulator
At this level, hardware interfaces bridge standardized ROS 2 control interfaces and vendor-specific robot drivers, allowing controllers and higher-level algorithms to operate without knowledge of the underlying hardware.
This clear separation enables control algorithms to remain hardware-agnostic, while hardware-specific logic stays isolated, reusable, and easy to replace. See more information about our controllers here.
Integration with ros2_control
By following the ros2_control framework, AICA hardware interfaces:
- Expose standardized state and command interfaces
- Support real-time safe update loops
- Integrate seamlessly with ROS 2 controllers and controller managers
- Work consistently across simulation and real hardware
As a result, controllers and algorithms developed in AICA Core can be reused across different robots without modification, provided a compliant hardware interface is available.
Supported hardware and extensibility
AICA Core supports hardware interfaces for most major robot manipulator brands and a range of simulators. It is also
compatible with third-party hardware interfaces that conform to the ros2_control standard.
A detailed overview of readily supported platforms is available on the Supported Hardware page.
This allows you to:
- Use existing vendor-provided or community-maintained drivers
- Integrate custom or proprietary hardware
- Switch between simulation and real hardware with minimal changes
The set of included hardware interfaces may vary depending on the license and distribution of AICA software. If the platform you are looking for is not listed on the Supported Hardware page, please contact us to discuss availability or custom integrations.