This repository is a forked version by David Lai. Changes made in the source code include:
- bt_topic_sub_node:
- use RosNodeParams.server_timeout as the sleep duration before the executor spins to receive subscription to avoid failure when ticking the node for the first time.
- bt_action_node:
This repository contains useful wrappers to use ROS2 and BehaviorTree.CPP together.
In particular, it provides a standard way to implement:
- Action clients.
- Service Clients.
- Topic Subscribers.
- Topic Publishers.
Our main goals are:
- to minimize the amount of boilerplate.
- to make asynchronous Actions non-blocking.
Note that this library is compatible only with:
- BT.CPP 4.1 or newer.
- ROS2 Humble or newer.
Additionally, check plugins.hpp to see how to learn how to wrap your Nodes into plugins that can be loaded at run-time.
A lot of code is either inspired or copied from Nav2.
For this reason, we retain the same license and copyright.