Skip to main content

Device Connectivity

EmberNet connects to a wide range of industrial devices using native protocol adapters. This document covers supported protocols, device configuration, and best practices for connecting equipment to the platform.

Supported Protocols

OPC UA (Unified Architecture)

OPC UA is the primary protocol for SCADA and industrial automation systems:

  • Discovery — Automatic discovery of OPC UA servers on the local network
  • Browse — Browse server address space and select tags for monitoring
  • Subscription — Event-driven data change notifications for efficient data collection
  • Security — Full support for OPC UA security modes and policies
  • Historical Access — Read historical data from OPC UA historians

Common Use Cases: PLCs, SCADA systems, DCS, HMI integration

MQTT

Lightweight publish/subscribe messaging for IoT and edge devices:

  • Broker Integration — Connect to external MQTT brokers or use the built-in broker
  • Topic Mapping — Map MQTT topics and payloads to EmberNet metrics
  • TLS Support — Encrypted MQTT connections (MQTTS)
  • QoS Levels — Support for QoS 0, 1, and 2
  • Sparkplug B — Native Sparkplug B payload decoding

Common Use Cases: IoT sensors, gateways, custom edge applications

Modbus TCP/RTU

Industry-standard protocol for PLCs and RTUs:

  • Modbus TCP — Ethernet-based communication
  • Modbus RTU — Serial communication (RS-232/RS-485)
  • Register Mapping — Configure coils, discrete inputs, input registers, and holding registers
  • Data Types — Support for integer, float, string, and bit-level data types
  • Multi-Device — Poll multiple Modbus devices from a single connection

Common Use Cases: PLCs, RTUs, power meters, motor drives, VFDs

SNMP

Network device monitoring:

  • SNMP v2c/v3 — Support for community-based and user-based security
  • MIB Support — Load and parse custom MIB files
  • Trap Receiver — Receive and process SNMP traps
  • Bulk Operations — Efficient bulk polling with GETBULK
  • Auto-Discovery — Discover SNMP-enabled devices on the network

Common Use Cases: Network switches, UPS systems, environmental sensors, managed PDUs

BACnet

Building automation protocol:

  • BACnet/IP — Network-based communication
  • Object Discovery — Automatic discovery of BACnet objects
  • COV Subscriptions — Change-of-value subscriptions for efficient data collection
  • Priority Array — Write to BACnet objects with priority

Common Use Cases: HVAC systems, lighting controls, access control, fire systems

Device Management

Adding Devices

  1. Navigate to DevicesAdd Device
  2. Select the connection protocol
  3. Enter connection details (IP address, port, credentials)
  4. Browse or manually define the data points to collect
  5. Configure polling interval and data mapping
  6. Test the connection
  7. Save and activate

Device Groups

Organize devices into logical groups for easier management:

  • Group by location (Building A, Floor 2, etc.)
  • Group by type (Chillers, Pumps, Compressors, etc.)
  • Group by tenant or business unit
  • Apply configurations and alerts at the group level

Device Status

Each device has a connectivity status indicator:

StatusDescription
🟢 OnlineDevice is connected and transmitting data
🟡 DegradedDevice is connected but some data points are unavailable
🔴 OfflineDevice is unreachable
DisabledDevice monitoring is paused

Data Mapping

Tag Configuration

Map device data points to EmberNet metrics:

FieldDescription
SourceProtocol-specific address (OPC UA node, Modbus register, SNMP OID)
NameHuman-readable metric name
UnitEngineering unit (°F, PSI, kW, etc.)
Data TypeNumeric, boolean, string, or enumeration
ScalingOptional linear scaling (slope and offset)
TagsMetadata tags for filtering and grouping

Data Quality

EmberNet tracks data quality for each metric:

  • Good — Valid reading received from device
  • Uncertain — Reading received but quality is questionable
  • Bad — No valid reading available (device error, timeout, etc.)

Best Practices

  1. Use static IP addresses for industrial devices to prevent connectivity issues
  2. Enable TLS/encryption wherever supported (OPC UA, MQTT, SNMP v3)
  3. Set appropriate polling intervals — faster isn't always better; balance granularity with device load
  4. Use subscriptions over polling when supported (OPC UA, MQTT, BACnet COV)
  5. Tag consistently — Use a consistent naming convention for device tags
  6. Test connections before activating data collection

Next Steps