Extensions Overview#

RCS is designed to be modular. Core functionality is kept minimal, while specific hardware support and additional features are provided through extensions.

What is an Extension?#

An extension is a separate Python package that integrates with RCS. Extensions can provide:

  • Hardware Support: Drivers for specific robots (e.g., FR3, xArm7) or sensors (e.g., RealSense).

  • Simulation Assets: MJCF/URDF files for new robots.

  • Additional Functionality: Integrations with other libraries (e.g., Robotics Library).

Installing Extensions#

Extensions are typically installed via pip.

pip install -ve extensions/rcs_fr3

Available Extensions#

RCS comes with several supported extensions:

  • rcs_fr3: Support for the Franka Research 3 robot.

  • rcs_panda: Support for the Franka Emika Panda robot.

  • rcs_xarm7: Support for the xArm7 robot.

  • rcs_ur5e: Support for the UR5e robot.

  • rcs_so101: Support for the SO101 robot.

  • rcs_realsense: Support for Intel RealSense cameras.

  • rcs_usb_cam: Support for generic USB webcams.

  • rcs_tacto: Integration with the Tacto tactile sensor simulator.

  • rcs_robotics_library: Integration with the Robotics Library (RL).

Creating Extensions#

You can create your own extensions to add support for new hardware or features.