Bridges
Last updated
Last updated
🚧 Roadmap Item - Bridges are under active development. Current functionality includes connection monitoring and basic read/write flows.
Bridges (shown as protocolConverter:
in YAML configuration) connect external devices and systems to the Unified Namespace. They combine connection health monitoring with bidirectional data flows, making them ideal for industrial device connectivity.
Connection Monitoring: Continuous health checks via nmap, ping, or custom probes
Location Hierarchy: Automatic hierarchical path construction from agent and bridge locations (supports ISA-95, KKS, or custom naming)
Bidirectional Data Flow: Separate read and write pipelines for full device interaction
Variable Templating: Go template support for flexible configuration
State Management: Advanced finite state machine for operational visibility
Choose Bridges for:
Connecting to field devices (PLCs, HMIs, sensors, actuators)
Industrial protocol communication (OPC UA, Modbus, S7, Ethernet/IP)
Systems requiring connection health monitoring
Publishing data to the Unified Namespace with automatic location context
Use for:
Point-to-point data transformation without UNS integration
Custom processing that doesn't require device connectivity patterns
High-throughput scenarios where monitoring overhead isn't needed
Use Benthos/Bridges for data pipelines with verified industrial protocols (OPC UA, Modbus, S7, Ethernet/IP), production throughput requirements, or when you need enterprise reliability and structured configurations that scale across teams. The Management Console provides GUI configuration with input validation 🚧, making Benthos accessible to OT teams while maintaining structured, maintainable configs. Use Node-RED for rapid prototyping with visual programming, complex site-specific business logic requiring full JavaScript, protocols not yet available in Benthos-UMH, or when building custom applications and dashboards beyond data movement. Many deployments use both: Benthos for high-volume standard protocols, Node-RED for specialized integration and custom applications.
All industrial protocol bridges follow the same pattern - only the input configuration changes:
Industrial Protocols:
IT Protocols:
MQTT, Kafka, HTTP/REST, SQL databases, File systems
Bridges support both reading from and writing to devices using separate pipelines:
Pattern:
Read pipeline: Device → tag_processor → UNS output
Write pipeline: UNS input → command mapping → Device output
UMH Core currently supports network connectivity monitoring via nmap:
The nmap health check verifies that the target device is reachable on the specified port, ensuring the bridge can establish connections before attempting data operations.
Use Go template syntax for flexible configuration:
🚧 Roadmap Item: The current
tag_processor
implementation follows the benthos-umh pattern with tag names in payloads. With the next UMH Core release,tag_processor
will be updated to align with the new data model where tag names are only in topics (not in payloads) and metadata is not included in message payloads.
Results in: umh.v1.acme.plant1.line4.sensor1._raw.temperature
Results in: umh.v1.acme.plant1.line4.sensor1._temperature.temperature_in_c
Bridges exclusively use UNS input/output for UNS integration:
For reading device data:
For writing to devices:
UMH Core supports 50+ industrial protocols via . For complete, up-to-date configuration examples:
- Industry standard automation protocol
- Serial and TCP Modbus devices
- Direct PLC communication
- Allen-Bradley and CIP devices
- Sensor connectivity
Note: Always reference the for the most current protocol configurations and features.
Bridges use finite state machines to track operational status. For complete state definitions, transitions, and monitoring details, see .
Bridges work seamlessly with UMH's :
Bridges support evolution from simple raw data to structured data contracts. See for complete tag_processor syntax.
Raw data uses the standard .
For payload format details, see .
This approach abstracts away Kafka/Redpanda complexity and aligns with UMH Core's embedded architecture philosophy. See for complete configuration options.
UMH Classic Users: See for complete migration instructions including _historian
→ _raw
data contract changes and configuration updates.
- Alternative for custom processing
🚧 - Structure bridge data with models
- Complete YAML syntax
- Bridge state management details
- Real-world sensor connectivity example
- Bridge architecture evolution
- Complete UNS output reference