Skip to content

Integrations

One interface for importers, one for connectors. Every brand is one of them.

An importer reads a file offline and needs no connection. A connector reads a live source, read-only by type. The core of Archipelago depends on neither; it depends on the facts they produce.

SourceKindWhat it readsWhat it needsStatusWhat it cannot see
BACnet/IPConnectorDevices, objects, present values, Trend LogsNetwork reach to the controllersPlanned
Phase 3
Logic inside the controller
Modbus TCP and RTUConnectorRegisters, per a map you provideNetwork or serial reach, a register mapPlanned
Phase 4
Anything not in the map
Niagara station backup (.bog, .dist)ImporterDevices, points, links, alarm and history configuration, BACnet addressesThe file. No station connection.Planned
Phase 2
Passwords (redacted), what a wiresheet means
Niagara station (live)ConnectorHistories, alarm records, live valuesAn optional signed module, or a documented station servicePlanned
Phase 4, pending legal review
Nothing it did not read
Metasys .cafImporterBACnet-exposed objects, names, units, statesThe filePlanned
Phase 4
Program logic
Distech .gfxImporterObject tree, writable flags, statesThe filePlanned
Phase 4
Program logic
Metasys SCT exportImporterEngines, controllers, pointsThe filePlanned
Phase 4
Sub-controller device instances
Equipment schedule (CSV, XLSX)ImporterTags, areas served, design valuesThe sheetPlanned
Phase 4
Anything not in the sheet

Why importers and connectors are separate

Importers: file in, facts out, offline

An importer never opens a socket, never reads a second file, and runs in an isolated worker with memory and time limits. A station backup importer needs no station. That is what lets a contractor get value from a backup on a laptop with nothing connected, and it is the same hardened, offline path a hosted trial would use.

Connectors: live source in, observations out, read-only

A connector declares what it can do: discover, read, subscribe, pull histories, pull alarms. Writing is a separate interface that no early connector implements; the descriptor says write: false and the interface shows no write control. Every reading carries its source, so the model records it as observed with the connector as provenance.

How a model built offline goes live without a vendor

A station backup's BACnet proxy extensions hold the device instance, object type and object instance for every proxied point. The importer emits those as binding hints. The BACnet/IP connector can then read the controllers directly, with no station software in the loop. A controller application file holds the same object list. A Modbus register map is itself a set of bindings. Niagara-only facts (station histories, alarm records, non-BACnet drivers) are the part only a Niagara connector can resolve, which is why it is one connector and not the foundation.

About the Niagara connector

Pathways under evaluation, in order of preference: the station's own BACnet server export (standard, vendor-neutral), the documented oBIX driver, the open-source nHaystack module, any documented station API, and only then a signed module of our own. Publication of a module under this project's name waits for legal review of the vendor's developer terms. The core, the website and the BACnet/IP connector do not depend on that timing. What any connector may and may not do.

Product names are trademarks of their owners. Archipelago is not affiliated with or endorsed by any of them. Disclaimer wording pending counsel review.