Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |
Launch files
Messages
Services
Plugins
Recent questions tagged cl_generic_sensor at Robotics Stack Exchange
Package Summary
| Version | 3.0.1 |
| License | Apache-2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/robosoft-ai/SMACC2.git |
| VCS Type | git |
| VCS Version | jazzy |
| Last Updated | 2025-11-25 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Brett Aldrich
Authors
Generic Sensor Client
A SMACC2 client library for subscribing to ROS topics with optional timeout watchdog functionality. Built using a pure component-based architecture following SMACC2 best practices.
Features
-
Component-based architecture - Uses
CpTopicSubscriberandCpMessageTimeoutcomponents - Optional timeout watchdog - Configurable message timeout monitoring
- Type-safe - Template-based for any ROS message type
- Event-driven - Posts SMACC2 events for message reception and timeouts
- Flexible configuration - Configure topic and timeout at construction or runtime
Architecture
The multirole sensor client follows the ClKeyboard pattern where all functionality is implemented through composable components:
ClGenericSensor
├── CpTopicSubscriber (from smacc2 core)
│ ├── Subscribes to ROS topic
│ ├── Posts EvTopicMessage events
│ └── Posts EvTopicInitialMessage events
│
└── CpMessageTimeout (optional)
├── Monitors message reception
├── Posts EvTopicMessageTimeout events
└── Emits onMessageTimeout_ signal
Events Posted
-
EvTopicMessage<TSource, TOrthogonal, TMessageType>- Posted on every message -
EvTopicInitialMessage<TSource, TOrthogonal, TMessageType>- Posted on first message only -
EvTopicMessageTimeout<TSource, TOrthogonal>- Posted when timeout occurs (if configured)
Usage
Basic Usage (No Timeout)
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client for sensor_msgs::LaserScan
class ClLidar : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::LaserScan>
{
public:
ClLidar()
{
this->topicName_ = "/scan";
// No timeout configured - watchdog disabled
}
};
}
Usage with Timeout Watchdog
#include <cl_generic_sensor/cl_generic_sensor.hpp>
namespace my_sm
{
// Create a client with 5-second timeout
class ClGps : public cl_generic_sensor::ClGenericSensor<sensor_msgs::msg::NavSatFix>
{
public:
ClGps()
{
this->topicName_ = "/gps/fix";
this->timeout_ = rclcpp::Duration(5, 0); // 5 second timeout
}
};
}
Constructor-based Configuration
// Direct construction with topic and timeout
ClGenericSensor<std_msgs::msg::String> sensor("/topic_name", rclcpp::Duration(3, 0));
Using in Orthogonals
class OrSensor : public smacc2::Orthogonal<OrSensor>
{
public:
void onInitialize() override
{
auto sensor_client = this->createClient<ClLidar>();
}
};
State Transitions with Events
```cpp
File truncated at 100 lines see the full file
Changelog for package multirole_sensor_client
2.3.16 (2023-07-16)
### Added - Merged branch 'humble' from [robosoft-ai/SMACC2]{.title-ref} repository - Brettpac branch (#518) - Attempted fix for ros buildfarm issue - Further work on buildfarm problem - Co-authored-by: brettpac <<brettpac@pop-os.localdomain>> - Contributors: brettpac, pabloinigoblasco
2.3.6 (2023-03-12)
1.22.1 (2022-11-09)
### Added - Pre-release - Contributors: pabloinigoblasco
0.3.0 (2022-04-04)
0.0.0 (2022-11-09)
### Added - Progress in humble SMACC2 deb generation - Reverted commit dec14a936a877b2ef722a6a32f1bf3df09312542 - Ignored packages not to be released - Feature/master rolling to galactic backport (#236) - Updated mentions of SMACC/ROS to SMACC2/ROS2 - Progress on navigation rolling - Renamed folders, deleted tracing.md, edited README.md - Added smacc2_performance_tools - Performance tests improvements - Format cleanup for sm_respira_1 - Optimized dependencies in move_base_z_planners_common - Renamed event generator library - CI setup and file renaming - Updated launch command to ros2 launch sm_respira_1 sm_respira_1.launch - Added new feature, cb_wait_topic_message - Corrected all linters and formatters - Co-authored-by: Ubuntu 20-04-02-amd64 <<brett@robosoft.ai>>, Denis Štogl <<denis@stogl.de>> - Contributors: Denis Štogl, pabloinigoblasco
0.1.0 (Date: TBD)
- Build-status table
- Detailed install instructions (adjusted from [here](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#readme))
- Default build type set to [Release]{.title-ref} for faster performance and smaller executables
- Updated examples section
- Resolved missing dependency in smacc_msgs and reorganized for better overview
- Fixed build issues
- Fixed bug in smacc2 component
- Cleaned up formatting in various packages
- Optimized dependencies in move_base_z_planners_common
- Corrected build-overview table
- Updated and unified CI configurations
- Manual installation of ros-rolling-ros2trace, now automated in setupTracing.sh
- Reverted changes in commit f603166a4b3ccdfe96c64d9f9fb9d8b49fbf0e61
- Restored all versions to 0.0.0
- Ignored all packages except smacc2 and smacc2_msgs
- Updated changelogs
- Reformatting the whole project
- Enabled all packages to compile
- Added getLogger functionality and refactoring
- Reactivated smacc2 nav clients for rolling via submodules
- Edited tracing.md to reflect new tracing event names
- Performance tests improvements
- Various performance and bug fixes
- Renamed event generator library
- Used tf_geometry_msgs.h in galactic
- Used galactic branches in .repos-file
- Do not execute clang-format on smacc2_sm_reference_library package
- Cleaned up trailing spaces
- Added README tutorial for Dockerfile
- Updated README.md
- Updated tracing/ManualTracing.md
- Added setupTracing.sh for automated installation of ros-rolling-ros2trace
- Location of sh file assumed if user follows README.md under "Getting started"
- Denis Štogl
- Pablo Iñigo Blasco
- pabloinigoblasco
- reelrbtx
- Declan Dury
- brettpac
- David Revay
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| smacc2 | |
| smacc2_msgs |
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| sm_advanced_recovery_1 | |
| sm_pack_ml | |
| sm_three_some |