No version for distro humble showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro kilted showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro lyrical showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro rolling showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro ardent showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro bouncy showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro crystal showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro eloquent showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro dashing showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro galactic showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro foxy showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro iron showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro lunar showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro jade showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro indigo showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro hydro showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro kinetic showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro melodic showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange

No version for distro noetic showing jazzy. Known supported distros are highlighted in the buttons above.
Package symbol

btick package from btick repo

btick

ROS Distro
jazzy

Package Summary

Version 1.0.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/SherifFathey/btick.git
VCS Type git
VCS Version main
Last Updated 2026-11-01
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

BTick - Lightweight client library for ROS 2 BehaviorTree observation and Nav2 logging

Additional Links

Maintainers

  • Sherif Fathey

Authors

  • Sherif Fathey

BTick

BTick integrates with ROS 2 to provide real-time Behavior Tree monitoring and interactive debugging for BehaviorTree.CPP v4 applications.

Overview & Capabilities

The integration connects BTick to the BehaviorTree.CPP execution and monitoring interfaces to expose tree structure, runtime state transitions, and supported debugging controls.

BTick Demo

Prerequisites & Dependencies

Ensure ROS 2 and the required BehaviorTree.CPP dependencies are installed and available in your environment.

Building the btick Package

Clone the repository into a ROS 2 workspace:

mkdir -p ~/robot_ws/src
cd ~/robot_ws/src
git clone https://github.com/SherifFathey/btick.git

Install dependencies and build the package:

cd ~/robot_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select btick --symlink-install
source install/setup.bash

Package Configuration

CMakeLists.txt

Add btick to your project’s dependencies:

cmake_minimum_required(VERSION 3.8)
project(my_robot_behavior)

find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(behaviortree_cpp REQUIRED)
find_package(btick REQUIRED)

add_executable(my_bt_runner src/my_bt_runner.cpp)

ament_target_dependencies(my_bt_runner
  rclcpp
  behaviortree_cpp
  btick
)

install(TARGETS my_bt_runner
  DESTINATION lib/${PROJECT_NAME}
)

package.xml

Declare the dependencies in package.xml:

<depend>rclcpp</depend>
<depend>behaviortree_cpp</depend>
<depend>btick</depend>

C++ Integration Example

The following steps show how to integrate BTick into an existing BehaviorTree.CPP application.

Step 1: Include the BTick Header

#include <btick/btick.hpp>

Step 2: Attach the BTick Monitor

After creating your behavior tree, instantiate btick::Monitor to enable monitoring and supported debugging features in BTick:

btick::Monitor monitor(node, tree, "MainRobotTree", xml_path);

Constructor arguments:

  • node: The ROS 2 node used for communication.
  • tree: The BT::Tree instance to monitor.
  • "MainRobotTree": The tree name displayed in the BTick interface.
  • xml_path: The XML file path, used to retrieve tree definition details such as port metadata.

Step 3: Enable Optional Logging

To record execution data to a JSON file, optionally create a btick::Logs instance:

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged btick at Robotics Stack Exchange