Skip to main content

Edge Agent Overview

What the Edge Agent is​

The Haltless Edge Agent is a lightweight service you install on your own hardware, on the same network as your machines. It reads data directly from industrial equipment using native protocols, then streams those readings to Haltless over an outbound HTTPS connection.

The agent is designed to run unattended as a background service. Once configured, it collects on a fixed interval, forwards readings to Haltless, and keeps working through network interruptions without losing data.

It speaks fourteen sources out of the box:

  • Modbus TCP: read registers from PLCs, drives, meters, and sensors
  • Modbus RTU: read Modbus devices on an RS-485 or RS-232 serial line
  • OPC-UA: read node values from an OPC-UA server
  • Siemens S7: read S7-300, S7-400, S7-1200, and S7-1500 PLCs directly
  • EtherNet/IP: read Rockwell / Allen-Bradley ControlLogix, CompactLogix, Micro800, SLC 500, and MicroLogix controllers directly
  • Mitsubishi MELSEC: read Q, L, iQ-R, and iQ-F PLCs over the MC protocol (SLMP)
  • Omron FINS: read CJ, CS, CP, NJ, and NX PLCs over FINS
  • Beckhoff ADS: read TwinCAT PLC variables by name
  • BACnet/IP: read building controllers such as air handlers, chillers, and boilers
  • MQTT: subscribe to topics on a broker your plant already publishes to, plain values or JSON
  • Sparkplug B: read the edge nodes and devices of a Sparkplug B group on a broker
  • AVEVA PI Web API: read the current values an AVEVA PI historian already records
  • CSV files: watch a directory of exported CSV files
  • JSON / JSONL files: watch a directory of exported JSON files

Why use the Edge Agent​

Protocol-native. The agent talks Modbus TCP and RTU, OPC-UA, Siemens S7, EtherNet/IP, Mitsubishi MELSEC, Omron FINS, Beckhoff ADS, and BACnet/IP directly, the protocols already built into most industrial and building equipment, older Siemens and Allen-Bradley PLCs included. Where your data already flows through an MQTT or Sparkplug B broker, it subscribes to the broker instead, and where a PI historian already records it, it reads PI. There are no proprietary sensors or gateway devices to buy, and it runs on hardware you already have.

Outbound-only, firewall-friendly. The agent only ever makes outbound HTTPS connections to Haltless. Nothing needs to connect into your plant network, so there are no inbound firewall holes to open and your machines never have to be exposed to the internet.

Resilient to outages. Readings are held in memory and sent in batches. If Haltless is temporarily unreachable, the agent writes readings to a crash-safe local buffer on disk and keeps collecting. When connectivity returns, it drains the buffer in order, in requests of up to 1,000 readings each and using at most half of each collection cycle so reading your machines carries on, before resuming normal operation, so brief outages don't lose data (bounded by the buffer's configured size cap and retention window).

You stay in control. Data stays on your network until the agent pushes it. You choose the collection frequency, which machines and metrics to read, and how much local buffering to allow.

How it fits into Haltless​

Haltless Edge runs on your plant network. It reads Modbus TCP and RTU, OPC-UA, Siemens S7, EtherNet/IP, Mitsubishi MELSEC, Omron FINS, Beckhoff ADS, BACnet/IP, MQTT, Sparkplug B and AVEVA PI Web API sources and CSV and JSON files each cycle, buffers to disk while offline, and sends the readings in batches over outbound HTTPS only, authenticated with your API key. In the Haltless cloud they are ingested, checked by anomaly detection, and raise alerts and appear on your dashboards.Haltless Edge runs on your plant network. It reads Modbus TCP and RTU, OPC-UA, Siemens S7, EtherNet/IP, Mitsubishi MELSEC, Omron FINS, Beckhoff ADS, BACnet/IP, MQTT, Sparkplug B and AVEVA PI Web API sources and CSV and JSON files each cycle, buffers to disk while offline, and sends the readings in batches over outbound HTTPS only, authenticated with your API key. In the Haltless cloud they are ingested, checked by anomaly detection, and raise alerts and appear on your dashboards.
  1. The agent collects readings from every configured source on each cycle.
  2. It sends them to Haltless as batches over HTTPS, authenticated with an API key.
  3. Haltless normalizes the readings and runs them through anomaly detection.
  4. Anomalies can raise alerts and appear on your dashboards and reports.

Key concepts​

System identifier​

Each source in the agent's configuration is a System: the connection the agent reads, such as a PLC, an OPC-UA server, an MQTT broker, or a folder of exports. Every reading names its System by a System identifier, a short, stable string such as LINE-3-PLC or PUMP-MAIN-FLOOR2. The identifier must match a System on the portal's Systems page exactly. Identifiers are case-sensitive.

A System owns every tag it sends, and the tags are assigned to machines on the portal. One PLC that runs a whole line can therefore feed several machines. A tag the System has not sent before waits, unassigned, until someone assigns it; its readings are stored but not monitored in the meantime. A machine registered on its own gets a System of the same identifier that sends every tag to that machine. See Systems.

Metrics, tags, and units​

Each reading carries a metric_name (such as temperature_celsius or spindle_speed_rpm), a numeric value, and a unit (such as celsius or rpm). A unit is always required. An optional raw_tag carries the original source address or tag name. The reading's tag, the thing that is assigned to a machine, is its raw_tag, or its metric_name when it has none.

Batching​

To stay efficient, the agent accumulates readings and sends them in batches rather than one request per reading. Batch size is configurable, and a single batch can span multiple Systems and metrics.

Heartbeat​

The agent checks in with Haltless every 5 minutes to confirm connectivity and report its status, which administrators can see in the agent fleet view. If your company's account is suspended, Haltless answers with 402 Payment Required and the agent pauses collection, so it never accumulates data that cannot be delivered. It keeps checking in and resumes by itself once the account is reinstated. The heartbeat also says whether a newer agent version is available; the agent logs this as a warning and does not update itself.

Agent or agentless?​

The Edge Agent is the right choice for most industrial environments, because your machines stay behind your firewall and data is buffered locally during outages.

If you'd rather not run local software, you can send readings straight to the Haltless ingestion API yourself. See Direct ingestion for the agentless approach.

Next steps​