Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged nexus_network_configuration at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Description | A framework for orchestration |
Checkout URI | https://github.com/osrf/nexus.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-07-29 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- john
Authors
Network Config Generator
This package simplifies the Zenoh DDS Bridge setup for multiple NEXUS orchestrators through the generation of Zenoh bridge configurations from the following 2 files:
- NEXUS Network Configuration: This YAML file describes the properties of different machines such as ROS Domain ID, Zenoh bridge TCP connection endpoints etc. Refer to Quick Start for an example
- REDF Configuration: This YAML file describes the ROS Endpoints of the NEXUS orchestrators
First-time setup for deploying a LOCALHOST only environment
- Make sure that CycloneDDS is installed and made the default middleware, and that multicast on loopback interface is enabled for localhost-only communication.
./scripts/set_up_network.sh
- Create a NEXUS Network configuration. An example is provided in the
nexus_poc
package at nexus_network_config.yaml Here we have 1 system orchestrator connected to 3 workcell orchestrators, all on different domain IDs from 14 to 17. You can refer to nexus_network_schema.json for the config schema.
# Mode of Zenoh bridge, specified as either 'client' or 'peer'.
# Use 'client' when there is an available Zenoh router, otherwise
# use 'peer' for a distributed system.
mode: peer
# When true, discovery info is forwarded to the remote plugins/bridges
forward_discovery: false
# When true, activates a REST API used to administer Zenoh Bridge configurations
enable_rest_api: true
system_orchestrators:
- ros_namespace: system_orchestrator # ROS Namespace of the endpoints
# ROS Domain ID
domain_id: 14
# Listening TCP Address of Zenoh bridge
tcp_listen: "localhost:7447"
# HTTP Port for the REST API
rest_api_http_port: 8000
workcell_orchestrators:
- ros_namespace: workcell_1
domain_id: 15
tcp_connect: "localhost:7447"
rest_api_http_port: 8001
- ros_namespace: workcell_2
domain_id: 16
tcp_connect: "localhost:7447"
rest_api_http_port: 8002
- ros_namespace: workcell_3
domain_id: 17
tcp_connect: "localhost:7447"
rest_api_http_port: 8003
- Generate zenoh bridge configurations from NEXUS Network config and REDF config. The
ZENOH_CONFIGS_OUTPUT_DIRECTORY
will be where your zenoh bridge configurations will be saved.
ros2 run nexus_network_configuration nexus_network_configuration -n <PATH_TO_NEXUS_NETWORK_CONFIG> -r <PATH_TO_REDF_CONFIGS> -o <ZENOH_CONFIGS_OUTPUT_DIRECTORY>
Changelog for package nexus_network_configuration
0.1.1 (2023-11-20)
0.1.0 (2023-11-06)
- Provides scripts to generate Zenoh DDS Bridge configurations.
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
nexus_demos |