Connector
The Connector page: the Communication column, its tree with the Drivers folder (the drivers added to the station, with their lines, brokers, folders, devices and tags) and the Servers folder (the OPC UA server, the Modbus server and the MQTT broker), the New… menu that walks that tree, the two identities every tag carries, and the permissions and locks that govern editing.
The Connector is where a field device becomes data the rest of the application can read. It is the rail page named Connector, and it opens for any role that holds View connector. The page pairs the Communication column on the left, a tree of everything the Connector talks to, with a detail panel on the right that edits the selected node in place; as the page's own description says, "Select a node to edit it inline. Changes save automatically."
The Communication column
The column is headed Communication and holds, from top to bottom: a search box with four state chips, the tree, and a footer with the column's commands. The tree has two roots of one kind, the Drivers folder and the Servers folder, and both are open when the page opens.
The Drivers folder
The first root holds the drivers added to the station, listed flat and alphabetically, with or without anything under them. The folder's row reads Drivers, then how many devices the drivers under it hold ("3 devices"), then a health dot rolled up from those drivers. Selecting it opens the catalog of every driver this station carries, the added ones first under On this station and the others grouped by the equipment they reach, where a driver is added and removed; both verbs are described on The drivers list and a driver's page.
| Situation | What stands under Drivers |
|---|---|
| A new station | No driver. The column opens with the Drivers folder selected, so the catalog is the first thing on screen. |
| A station updated from an earlier version | The drivers it already used: every one holding a device, a serial line, a broker or a folder. |
| A driver added (Add driver on its catalog row, or New… > Add driver) | The driver, with nothing under it, marked in the catalog under On this station (the Drivers folder stays on screen): its row reads "0 devices" ("0 lines · 0 devices" for Modbus RTU, "0 brokers · 0 devices" for MQTT). |
| The last device, serial line, broker or folder of a driver deleted | The driver stays, back at "0 devices". |
| A driver removed (Remove driver on its catalog row, on its bar or on its right-click menu) | Nothing: the driver leaves the tree and its catalog row goes back to its category. Removing deletes nothing, so it is refused while the driver holds a device, a serial line, a broker or a folder, and a driver that holds one is always added. |
| A driver this package does not carry, named by a saved device | The driver and its devices, for as long as one of them exists. |
The Servers folder
The second root holds what the station opens on the network, which other systems and devices connect to: the OPC UA server, which publishes the devices and their tags to OPC UA clients, the Modbus server, which PLCs, HMIs and building systems read the station's tags and Logic variables from, and the MQTT broker, which takes the messages the devices of the network publish. The three rows are always there, in that order. Remote access, which opens the station's own dashboards in a browser on another device, is not here: it has a page of its own on the rail, Remote access. None is a driver and none has children; each reads its own state ("Turned off" on every new station) beside a dot, green while it listens and red when it is on but cannot be reached, and no dot rolls up into the Drivers folder or the status bar. Selecting one opens its panel; all three are described under Servers. The folder's own row carries no count and no dot, and selecting it opens no panel, only the line "Select a server to see its state and settings."
Search and the state chips
| Control | What it does |
|---|---|
| Search box ("Search drivers, lines, devices, tags") | Narrows the tree to the rows whose name contains the text, case-insensitively. A hit on a driver, serial line, broker or folder keeps everything under it, and so does a hit on the name of a root: "Drivers" keeps every added driver, "Servers" all three of its rows. A serial line also matches on its physical tuple (port, baud, format, timeout), a broker on its address, and a server on its name. Matching branches expand as you type. |
| All | No state narrowing. |
| OK | Devices, lines and brokers that are enabled and Online, or with nothing to judge yet, a device whose host is not entered yet and its enabled tags included; tags that are enabled and currently reading a measurement within their limits; a server that is on and has not failed to start. |
| Issues | Devices, lines and brokers that are enabled but Offline or Partly online; tags that are enabled but have no value (unless the device's health leaves them out because their first value since the device connected has not come yet), a stand-in, a value outside their limits or a reading that went silent, on a device the station is reading; a server that is on but could not start (the Modbus server also when another program holds its port). |
| Off | Disabled devices, lines, brokers and tags, and every tag of a disabled device. A device under a disabled serial line or broker counts as Off, and so do its tags. A server turned off counts as Off. |
A chip and the search text combine. The selected node always stays visible, so the panel never edits a row you cannot see. A driver with nothing under it or only an empty folder, and the Drivers folder while it holds no driver, show only under All, or when the search matches their own name.
The tree
The shapes, decided per driver:
- Every driver except Modbus RTU and MQTT: Driver > Folder (up to two levels) > Device > Tag. Folders come first, in name order, then the devices filed at the driver's own level.
- Modbus RTU: Driver > Line > Device > Tag. Devices hang off the physical line they share and take no folder.
- Generic serial and TCP: both side by side. Its serial lines come first, each as Driver > Line > Device > Tag, then its folders and its network devices as under any other driver.
- SCPI instruments: the same, its serial lines first, then its folders and the devices reached over TCP or VISA.
- Omron: the same, its serial lines first, then its folders and the PLCs reached over the network.
- MQTT: Driver > Broker > Device > Tag. Devices hang off the broker whose connection they share and take no folder.
Under the Drivers folder the drivers list flat, alphabetically, with no category groups. The tags of a device list in name order too, whatever the case of their letters, in the tree and within each type group of the device's tag grid; a tag added or renamed takes its place at once. A driver stands in the tree from the moment it is added until it is removed, whatever is under it. Each row summarizes what is below it:
| Row | Shows |
|---|---|
| Driver | Name, "3 devices" (Modbus RTU, and Generic serial and TCP, SCPI instruments or Omron once it has a line: "1 line · 2 devices"; MQTT: "1 broker · 2 devices"), health dot. |
| Serial line | Name, an error marker when the port failed, state text and device count ("Online · 2 devices"), health dot. |
| Broker | Name, an error marker when the broker cannot be reached, state text and device count ("Online · 2 devices"), health dot. See MQTT. |
| Folder | Name, "2 devices" or "empty", health dot rolled up from every device inside, subfolders included. |
| Device | Name, an error marker carrying the last error as its tooltip, then "4 tags", or "Waiting for certificate approval", or "Host not entered yet" ("NI-DAQmx device not entered yet" on an NI-DAQmx device, "Folder not entered yet" on a File device, "Server not entered yet" on a Database device, "DevEUI not entered yet" or "Station EUI not entered yet" on a LoRaWAN device), or "Driver not included in this package.", then the health dot. |
| Tag | A glyph for the data type (numeric, Boolean, date, text), the name, an error marker when the last read failed, and a live dot: amber when the value is a stand-in, the Limits stage raised a fault or the reading went silent, green while the tag has a value, grey otherwise, and grey whatever it last showed on a tag the station does not read: one that is disabled, or whose device is disabled, sits under a disabled line or has no host entered yet. |
The dot colors and the texts are explained on Enabling and health. Right-clicking a row selects it and opens a menu that mirrors the command bar for that node; a row with nothing the role may do opens no menu. The splitter between the column and the panel drags to resize.
The footer: New…, Expand all, Collapse all
| Command | What it does | Greyed when (situation) | Not drawn when (role) |
|---|---|---|---|
| New… | Opens the column's menu, the same whatever row is selected: Add driver, then one entry per added driver that walks the tree down to a device's New tag (see The New… menu). | A run holds the station or the runtime is stopped (the tooltip carries the reason), or a discovery scan or a Matter pairing is under way ("Finish the scan or the pairing under way before adding anything."). | Without Configure connector. |
| Expand all / Collapse all | Opens or closes every branch, the two roots and the driver groups included. Collapse all leaves the column at its two roots, Drivers and Servers. | Never: the Servers folder always has its three rows to open. | Never. |
The New… menu
The menu reads the tree, never the selection. It opens with Add driver, then, after a separator, one entry per added driver, in the tree's order. A driver's entry lists first what can be created under the driver, then, after a separator, the driver's own rows, each one again a submenu of what it takes and what it holds, down to a device and its New tag. No item names where it lands: the path that reached it says so.
| Entry | What it lists | What its items do |
|---|---|---|
| Add driver | The drivers this package carries that are not added yet, by name, under the name of their category in the order of the Drivers catalog. | Adds the driver as the catalog's Add driver does: the screen goes to the Drivers folder, whose catalog marks the driver's row, with the driver under the folder in the tree. When every driver is added the entry stays, greyed: "Every driver this station carries is already added." |
| A driver | In this order, what the driver takes: New device (every driver whose devices hang straight under it, so not Modbus RTU, MQTT or Matter), New serial line (Modbus RTU, Generic serial and TCP, SCPI instruments, Omron), New broker (MQTT), Pair device (Matter) and New folder (every driver whose devices take folders, so not Modbus RTU or MQTT); then its serial lines, brokers, folders and devices, as the tree draws them. | Each does what the same verb on the driver's page does. Pair device opens the pairing form on Matter's page, and stays greyed with "Add the network the device will join first." while no network on the Networks card is usable. |
| A serial line or a broker | New device, then its devices. | Creates a device on that line or that broker. |
| A folder | New device (under Matter it opens the pairing form, and the paired device is filed in that folder) and New subfolder (on a first-level folder only), then its subfolders and its devices. | Creates the device, or the subfolder, inside that folder. |
| A device | New tag. | Adds a tag to the device, as its Add tag does: the screen goes to the device's page, with the tag marked in its Tags grid. |
No creation opens what it made: the screen goes to the page of its parent (the Drivers folder, the driver, the line, the broker, the folder or the device), the tree selects that parent and opens it, and the new row is marked in the parent's table and scrolled into view. The mark stays until you pick something else; the row's Open, or its row in the tree, opens the item. Under a driver this package does not carry, every item but New tag stays greyed with "Driver not included in this package." The menu creates no server, since the Servers folder holds the three rows the station has, and lists no tag. Each name stands on one line and a long list scrolls. A submenu stays open while the pointer crosses other rows on its way to it: it folds, or gives way to another, only once the pointer has rested about a third of a second elsewhere, and a click switches at once. Moving a device that already exists into a folder is a command on the device, described on Device folders.
The detail panel
With nothing selected the panel reads "Select a driver, serial line, device or tag in the tree to inspect and edit it. Changes save automatically." The Drivers folder opens the catalog, the Servers folder reads "Select a server to see its state and settings.", and every other node opens the panel documented on its own page below.
Edits autosave: a text or number field saves when you leave it (or press Enter), a switch or a checkbox when you flip it, a combo when you pick. Rapid edits on one device coalesce into a single save about half a second after the last one. A save the station refuses is rolled back to what the database holds and the reason lands in the action feed at the bottom of the window; an edit that leaves the device unusable (a blank name) is not saved, and the panel says what is missing. While the page is open, the values in the tree and the panels refresh once a second.
Wire key and address: the two identities of a tag
Every tag carries two names, and the difference decides what a change costs.
The wire key is <Driver>.<Device>:<Tag>, for example ModbusTcp.Furnace:Temperature. It is what the Connector polls and the embedded OPC UA server publishes, what a Process channel binds to, and the name external OPC UA clients see. The device part is the driver kind plus the device name with every character that is not a letter or digit replaced by an underscore. The wire key ignores folders: filing a device somewhere else changes nothing on the wire.
The address is Connector.<Driver>.<Folders…>.<Device>.<Tag>, for example Connector.Simulated.Air.CompressedAir.HeaderPressure. It is the path the tree shows, with each segment sanitized the same way (a leading digit gets an underscore in front), and it is what Logic expressions, scripts, alarm conditions and dashboard bindings type. Renaming a device or a tag, filing a device into a folder, and renaming or removing a folder are all address changes, and the app rewrites every consumer of the old address in the same operation; the name fields preview how many references follow before you commit. The Logic address space reads the same addresses.
Device names only need to be unique inside their driver, case-insensitively: a Modbus TCP device and an OPC UA device may both be called Furnace, because their wire identities are ModbusTcp.Furnace and OpcUa.Furnace. Two enabled devices under one driver whose names normalize to the same technical segment (Line A and Line-A) collide, and both are withheld from polling rather than one winning; their rows read no value until one is renamed or disabled. A technical device identity is limited to 128 characters. Under one driver a folder and a device at the same level may not sanitize to the same segment either, because one address cannot be both a branch to expand and a point to read.
There is no separate import or export of the Connector tree: the configuration travels with the application's backups.
Engineering boundaries
The Connector never stops being a live read surface, but its configuration is refused in two situations, and the page says which:
- A Process run holds the station. A banner titled "Engineering locked" explains that a Unit operation is active and configuration stays read-only until every Unit finishes, while run controls and other operator actions remain available. Every mutating verb stays drawn and greyed with the reason "Configuration is locked while a Unit is running."
- The runtime is stopped. A banner titled "Runtime stopped" says that acquisition, Logic and recording are paused and that every change is refused until the runtime is restarted, with the configuration and the recorded runs intact. The same verbs grey with the reason "Runtime stopped", and the tree's values become gaps as communication stops.
Reading, searching, selecting, the Open row actions and Copy value on a tag remain available in both situations.
Permissions
Three Connector bits, listed in full on Permissions, decide what the page draws:
| Permission | What it opens |
|---|---|
| View connector | The page, the tree, every panel read-only. Editors are held inert with a note on top: "Changing the Connector requires the “Configure connector” permission." Verbs the role can never use are not drawn at all: New…, Add driver and Remove driver, Add and Pair, Enable and Disable, Reconnect, Copy device, the Delete cluster, the row action clusters beyond Open, Add tag, Discover tags, the mass-edit ticks, the write field and the Replace apparatus. Refresh, Open and Copy value stay. |
| Calibrate tags | Everything View gives, plus the Calibration stage of a tag: its checkbox, its two fields and its two-point assistant. Nothing else becomes editable; see Calibration. |
| Configure connector | The whole page: adding and removing drivers, creating, changing, enabling, disabling and deleting serial lines, brokers, folders, devices and tags, discovery, pairing, writes and reference replacement, the OPC UA server with its configuration and client access, the Modbus server with its register map, and the MQTT broker with its sign-in. |
Every command reads the permission again when it runs, so a verb that was drawn for a role that has since changed is refused with the same message rather than executed.
In this area
| Page | Covers |
|---|---|
| The drivers list and a driver's page | The Drivers folder's catalog of every driver the station carries, a driver's page with its device table and verbs, and the "Driver not included in this package" state. |
| Servers | The OPC UA server, the Modbus server and the MQTT broker: turning each on and off, the OPC UA server's configuration and client access, the Modbus server's port, clients and register map, and the MQTT broker's port, clients and sign-in. |
| Serial lines | The serial line of Modbus RTU, of the generic serial and TCP driver, of the SCPI driver and of the Omron driver: its physical tuple, timing, states, the unit scan and the devices filed under it. |
| Device folders | Creating, renaming, removing and moving devices between folders, and how a folder composes the address. |
| Devices | The device page: header and verbs, the Device and Connection cards per driver, credentials and certificates, the tags grid with mass edit, copies and collisions. |
| Tags | The tag page card by card: General, Source per driver, Conversion, Live value and Used by. |
| The value pipeline | The typed conversion from a raw reading to the engineering value, and what a missing reading shows. |
| Calibration | The Calibration stage, the two-point assistant step by step, and what Calibrate tags allows on its own. |
| Discovery | Letting a driver scan for devices or points, reviewing the candidates, adding them, and pairing a Matter device. |
| Enabling and health | What takes part in acquisition at each level, the dots, the chips, the status bar, Last error, Reconnect and Refresh. |
The drivers themselves, one page per protocol with its connection fields, addressing, types, discovery and write behavior, are grouped under Drivers.