BehaviorTree.CPP: 2022 recap

Hi everyone,

this was a very exciting year for the library BehaviorTree.CPP and I would like to summarize here some of the most exciting news about the library with you!

Release of Versions 4.x

I had the opportunity to attend ROSCon in person for the first time, in Japan (a country I love!), where I presented the new major version of BT.CPP. You can find the video here: BT.CPP 4 at ROSCon 2022 video

Alternatively, you can watch a similar (may be less entertaining) introduction here: Behavior Trees.CPP 4.0 - Davide Faconti (BTs in robotics, seminar #4) - YouTube

I hope this new version will help users implementing simpler and more expressive behaviors; your feedback is greatly appreciated :smile: .

Groot 2

Groot was rewritten from scratch and it is in very active development!
This new implementation introduces a new multi-file workflow that will make the creation of complex behavior easier and more modular.
The editor is feature complete and I plan to release the real-time monitor and debugging interface in the next few months; I am particularly excited about the real-time interface, that will introduce new concepts such as blackboard visualization and interactive debugging with breakpoints, mocking and fault injection.

The Beta 3 was released yesterday, and it can be downloaded here: Groot | BehaviorTree.CPP

If you use BT.CPP and Groot professionally, you may want to get in touch
(, to find out more about the new features and the roadmap/timeline of the project.

Learning material

Shout out to Sharad Maheshwari @thehummingbird for his series of videos about BT.CPP.
Link of the first video of the series: Behavior Trees in Robotics (Part 1 - Concept) - YouTube

Also (even if I haven’t the opportunity to have a look at it yet), you might be interested to Open Class - Behavior Trees for ROS2