Announcing synchros2 from the RAI Institute!

We’re excited to announce the release of synchros2 for ROS 2! :tada:

synchros2 is our open source package designed to make synchronization in ROS 2 easier, faster, and more reliable.synchros2 simplifies the challenge of synchronous programming in ROS 2 by providing a clean, modern Python API and flexible synchronization policies. We hope this helps developers and researchers to more easily use ROS 2 through features such as:

  • Blocking in callbacks (subscribers, services, actions, etc) without creating deadlocks
  • Single-node-per-process semantics similar to ROS 1 (optional)
  • Wrapper APIs for subscribers with features like looping through messages in realtime and waiting for the next message.

We recommend starting with the Getting Started Guide:

You can explore the full API and usage docs here:

If you already have a ROS 2 project in the works and are interested in migrating to synchros2, a guide is available for that here: Migrating from rclpy to synchros2 — synchros2 1.0.4 documentation

synchros2 has been released into Humble and is in staging for Jazzy.

A big thank you to everyone who provided feedback, tested early versions, and helped get synchros2 to this milestone! And an extra big thank you to @hidmic, @khughes1, and @jbarry!

As always, contributions and issues are welcome on our repository!

— The RAI Institute

11 Likes