Skip to main content

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
note

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.