Skip to main content
After configuring the workspace, start the lifecycle nodes that provide blockchain connectivity. Source both the ROS 2 distro and the workspace overlay before launching.
source /opt/ros/humble/setup.bash
source install/setup.bash

# Launch core services with default parameters
ros2 launch peaq_ros2_core core.launch.py
The launch file spins up core_node and events_node with lifecycle management enabled. Key launch arguments:
ParameterDefaultDescription
networkagungpeaq network to target (peaq for mainnet)
confirmation_modeFASTTransaction confirmation strategy (FAST, FINAL)
log_levelINFOLogging level across nodes
config_yamlpeaq_ros2_examples/config/peaq_robot.yamlPath to configuration file
Override them inline:
ros2 launch peaq_ros2_core core.launch.py \
  network:=peaq \
  confirmation_mode:=FINAL \
  log_level:=DEBUG \
  config_yaml:=/work/configs/robot.yaml

Lifecycle Management

The nodes start in the unconfigured state. Use standard lifecycle commands to configure and activate them:
ros2 lifecycle set /peaq_core_node configure
ros2 lifecycle set /peaq_core_node activate

ros2 lifecycle get /peaq_core_node
Repeat the lifecycle commands for /peaq_events_node if you need to pause or resume event streaming independently. Nodes publish status logs to /tmp/core_node.log and /tmp/events_node.log by default.

Storage Bridge

Launch the storage bridge when you want IPFS-backed storage flows (managed pinning optional):
ros2 launch peaq_ros2_core storage_bridge.launch.py \
  config_yaml:=/work/peaq_ros2_examples/config/peaq_robot.yaml
The bridge consumes the same configuration file, handles retry logic, and exposes ROS 2 interfaces documented in Verifiable Storage. For a full demo, continue with the example launches.