events_node converts SDK callbacks into ROS topics so you can react to confirmations, failures, or custom pallet events without polling.
Topics
| Topic | Type | Description |
|---|---|---|
peaq/tx_status | peaq_ros2_interfaces/msg/TxStatus | Transaction lifecycle updates (PENDING, IN_BLOCK, FINALIZED, errors) |
peaq/events | peaq_ros2_interfaces/msg/Event | Raw blockchain events emitted by pallets (identity, storage, access, etc.) |
Launch Events Node
Events node starts automatically withcore.launch.py. To run it on its own:
Monitor Transactions
Subscribe to Events
Integrate with Autonomy Stacks
- Feed
peaq/tx_statusinto behavior trees to wait for blockchain confirmation before executing moves. - Use
peaq/eventsto trigger ROS actions (e.g., start storage ingestion once a DID is acknowledged). - Attach event subscribers to logging pipelines for compliance and analytics.
Troubleshooting
- If events stop flowing, check lifecycle state:
ros2 lifecycle get /peaq_events_node. - Review
/tmp/events_node.logfor connection or authentication issues. - Ensure
PEAQ_ROBOT_EVENTS_ENABLED=trueis set when relying on environment variables.

