SCADA / HMI

Version 2026.20

News

Every release, what changed in it, and what that means for a gateway already running in a plant. These are the notes that ship with each version. There is no second, friendlier account kept somewhere else to go stale.

Follow releases in a feed reader: Atom feed. No email needed.

01

Raylux 2026.20

· Download this release

Film50 s, with sound. The tool calls and readings are real, from a running Nexus on a simulated demo plant; the answer is the assistant's reply, set out as cause, evidence and first check.

Raylux 2026.20 introduces Raylux Iris, which lets the AI assistant you already use look at your plant and help you understand what is going on. It also makes operator writes safer, makes Python in bindings work end to end, adds a batch of screen components and settings, and speeds up the Allen-Bradley driver. We recommend it for every gateway.

Raylux Iris

  • Ask your plant what's wrong. The gateway now has a built-in MCP server, so an AI assistant that speaks MCP can read live tag values, active alarms, the alarm journal, history, devices and projects, and explain in plain English what it thinks is happening and why.
  • Iris is read-only. Nothing an AI assistant can do through Iris writes a tag, acknowledges an alarm or changes configuration. Read-only Iris is included at no extra cost.
  • It is off until you turn it on. An administrator enables it in the configuration console under Security › Iris MCP and issues an access key for each assistant. Each key acts with a role you choose and is checked on every call, so an assistant sees only what that role allows. Keys are shown once, refused over plain HTTP, and every call is recorded in the audit log under the key's name.
  • What an assistant reads is sent to the AI service it uses, which may be a cloud service. Issue keys only to assistants you trust with that plant's data.
  • New: a Tag access setting for the whole gateway, under Nexus Settings › Tag access. Open lets tags be read and written without signing in; Restricted requires a signed-in user or an access key. The change applies immediately and is recorded in the audit log.
  • Groundwork for AI features inside Raylux. The configuration console has a new Security › Iris AI page for connecting an AI model provider, with spending budgets, rate limits and a record of every conversation. Everything on it is off by default. These features are licensed separately; trials include them, and pricing will follow.

Safer operator writes

  • A write from a screen always goes to the right tag with the right value. One write policy now covers every control, values are checked before they are sent, and controls that cannot write safely say so instead of guessing.
  • Screens tell operators the truth about their connection. Connection state, signing out, unknown symbols and the alarm table were all tightened up.
  • The binding dialog and graph editor no longer lose or mix up a binding when you edit them.
  • Momentary buttons can hold-to-jog, with a heartbeat so the output drops if the connection does.
  • Button confirmations are configurable, with a confirmation popover by default.

Python in bindings

  • Python works everywhere in bindings: script transforms, script bindings and the Run Script action, evaluated on the gateway.
  • A format with an unquoted % now multiplies by 100 on the gateway too, so a value shows the same in every place.

Screens and components

  • Alarm counts by folder: show how many alarms are active or unacknowledged under a folder, and their highest priority.
  • The alarm table can filter by source, and Ack All works per device.
  • Pages can scale proportionally while text keeps a fixed size.
  • Trend pens can use view parameters in their tag path.
  • Popups can set their title when opened, and popups have sensible defaults.
  • Toggles have a checkbox appearance.
  • SVG text honours font weight.
  • Side and top docks slide in and out, and can push the page or cover it.
  • The Moving Analog Indicator has square track ends by default, and its pointer sits on the bar.
  • Number text inputs format their value when not being edited.

Studio

  • The Project Browser shows views inherited from a parent project. Open one read-only, override it with a confirmation, or revert the override.
  • The designer canvas looks like the runtime: parent-project styles, embedded views of inherited screens, containers, trends, alarm tables, reports and flex repeaters now draw as they do for operators.
  • Selecting the view no longer jumps back to the last component.

Drivers and gateway

  • The Allen-Bradley driver makes about three times fewer reads for the same tags, backs off when a poll overruns, and reports poll diagnostics.
  • Tag groups keep their scan timing when several groups share a rate.
  • The memory warning no longer flickers on a gateway that has just started.
  • Projects can be deleted through the gateway API; a project that another project inherits from is protected.

Licence agreement

  • The installers now carry version 1.3 of the licence agreement. It describes how licence keys are activated, the daily licence check, and the seven-day notice if a key is withdrawn, which earlier installers did not yet say. It also adds terms for Raylux Iris: AI output is advice to be reviewed by a qualified person, never a safety layer, and plant data goes only to the AI services you choose. The full text is at rayluxscada.com/eula.

Does this affect me?

  • Everyone upgrading from 2026.19: install as usual. Projects, tags, history, alarms and users are kept.
  • You don't want AI anywhere near your plant: nothing changes. Iris and the AI features are off until an administrator turns them on.
  • You use Allen-Bradley devices: polling is lighter on the PLC. Values and scan rates are unchanged.
  • Your screens write to tags: writes that were already valid behave as before. A write that was ambiguous or out of range is now refused with a message instead of being sent.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over an earlier release keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Install over an earlier package to upgrade; your data in /var/lib/raylux is kept. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. The packages are not signed yet.

Downloads

  • RayluxSetup-2026.20-x64.exe: the whole system for Windows (gateway, designer and plant-floor client). Start here if you are not sure.
  • Raylux-2026.20-x64.msi: the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-2026.20-x64.exe: the designer, for an engineer's workstation.
  • Raylux-Lens-Setup-2026.20-x64.exe: the plant-floor client, for operator stations.
  • raylux-nexus_2026.20_amd64.deb: the gateway for Debian and Ubuntu: sudo apt install ./raylux-nexus_2026.20_amd64.deb
  • raylux-nexus-2026.20-1.x86_64.rpm: the gateway for Fedora and RHEL: sudo dnf install ./raylux-nexus-2026.20-1.x86_64.rpm
02

Raylux 2026.19

Raylux 2026.19 is the first release since 2026.12. It adds licence keys, keeps a history of every project change that you can browse, compare and roll back, lets you copy and move more of a project as JSON, makes named queries much faster, and fixes the problems we found walking the getting-started tutorial click for click. We recommend it for every gateway.

Licensing

  • Licences are now activated with a licence key. Each gateway gets one key (RLX-XXXX-XXXX-XXXX). In the configuration console, under License, you enter the key and either activate online or download a request file that carries it. Your existing licence keeps working; nothing needs to be reissued.
  • Online activation and the activation page open with the Raylux licence store. Until the store opens, the Activate online button and the activation page on rayluxscada.com are not available yet. To license a gateway in the meantime, contact us and we will license it for you.
  • A gateway licensed with a licence key checks its licence once a day when it can reach the internet, whether it was activated online or with a request file. It contacts the Raylux licence server and sends the licence key, licence ID, a hardware fingerprint, the computer name and the Raylux version. It sends no plant data. A gateway that cannot reach the internet is never affected: it keeps running exactly as before. Blocking the connection at your firewall is fine.
  • A licence can be moved to another computer. Unactivate it on the old gateway first; the configuration console gives you a receipt file if that gateway is offline.
  • If Raylux ever withdraws a licence key, for example after a refund, the gateway shows a banner with a seven-day countdown that says why and who to contact, before anything stops.
  • The configuration console warns before an upgrade the licence does not cover. The License card shows "Covers: every release through 2026", and once the year has passed it tells you that a newer year's release would run unlicensed until the licence is extended.

Project history (source control)

  • The gateway now keeps a history of its projects. Every project save is recorded, and you can commit changes with a message. It lives in the gateway's data folder; there is nothing to install or set up.
  • The configuration console has a Source Control page. Browse the history, see exactly what changed in each screen or file, restore a single file to an earlier version, undo a commit, and create or switch branches. Every one of these shows you what it will change and asks before doing it.
  • Studio has a Source Control panel showing what has changed since the last commit, with a diff for each file and a Commit button.
  • Committing needs the new Source Control permission, which Administrators and Developers have by default. A commit is always recorded under the name of the person signed in.
  • Files edited by hand outside Raylux are shown, never committed.

Projects

  • More of a project can be copied and moved as JSON. In Studio's Project Browser, named queries, pipelines, reports, event and project scripts, and style classes now have Copy JSON, Export to file, Paste JSON and Import from file, alongside screens and tags. An import that clashes with an existing name asks whether to overwrite or skip.
  • Named queries are much faster on large projects. A query polled by an open screen no longer re-reads the whole project each time.
  • Fixed a rare problem during a project save, where a request arriving at the same moment could briefly see no screens, or a mix of old and new files.

Designer and screens

  • The Tag Editor no longer clears a tag's alarms when you save an unrelated change.
  • The Tag Editor no longer switches a tag's public read access off every time you save; "gateway default" now stays that way.
  • The Tag Editor fits on a 1080p screen; its pages scroll instead of pushing Save off the bottom.
  • Toggles and buttons no longer ask for an electronic signature on tags that do not require one.
  • Operators are asked to sign in when a screen's tags need it, instead of seeing dashes with no way to sign in.
  • Opening a project's address opens its first screen, instead of "No screens found".
  • A tag's initial value is kept after a gateway restart.
  • The first-run New Project form in the Hub offers its starting templates.
  • Tank scale labels are no longer cut off.

Security

  • The gateway's own HTTPS certificate now names the computer it runs on, so modern clients accept it once it is trusted. The gateway also records the certificate's fingerprint in its log at start-up, and Studio's trust prompt tells you where to check it.

Lens and installers

  • Lens returns to its Hub after Ctrl+Shift+H. The window previously closed and Lens kept running with nothing on screen.
  • The Windows installers carry the Raylux artwork, and Raylux has its own icon in Apps & Features.

Does this affect me?

  • Everyone upgrading from 2026.12 — install as usual. Projects, tags, history, alarms and users are kept. The first start creates the project history in the data folder.
  • You want the improved HTTPS certificate on an existing gateway — the gateway keeps its current certificate on upgrade. To get the new one, stop the gateway, delete certs/nexus.crt and certs/nexus.key from its data folder and start it again; Studio asks once to trust the new fingerprint.
  • Your gateways sit behind a firewall — the daily licence check is an outbound HTTPS connection to rayluxscada.com. Allowing it is optional; blocking it changes nothing.
  • Existing licences — keep working unchanged, and a licence installed without a key never contacts the licence server. Licence keys apply to licences issued from now on.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over an earlier release keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Install over an earlier package to upgrade; your data in /var/lib/raylux is kept. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. The packages are not signed yet.

Downloads

  • RayluxSetup-2026.19-x64.exe — the whole system for Windows: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-2026.19-x64.msi — the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-2026.19-x64.exe — the designer, for an engineer's workstation.
  • Raylux-Lens-Setup-2026.19-x64.exe — the plant-floor client, for operator stations.
  • raylux-nexus_2026.19_amd64.deb — the gateway for Debian and Ubuntu: sudo apt install ./raylux-nexus_2026.19_amd64.deb
  • raylux-nexus-2026.19-1.x86_64.rpm — the gateway for Fedora and RHEL: sudo dnf install ./raylux-nexus-2026.19-1.x86_64.rpm
03

Raylux 2026.12

Raylux now numbers its releases by year: this is 2026.12, the release after 1.0.10. It also stores each project as a folder of files instead of one large file, lets operators adjust trend charts while they watch them, adds confirmation prompts and enable conditions to buttons, and explains clearly on screen when a gateway has stopped because its licence ran out. We recommend it for every gateway.

Versions and licensing

  • Releases are now numbered by year. 2026.12 is the twelfth release of 2026; the first release of next year will be 2027.1. The year is the part that matters for your licence.
  • A licence covers every release of the year it was bought. A licence bought in 2026 covers 2026.12 and every later 2026 release. Moving to 2027 releases is an upgrade.
  • The previous year keeps getting fixes. Once the first 2027 release is out, 2026 continues to receive bug and security fixes (numbered 2026.13, 2026.14 and so on), but no new features. Earlier years receive nothing further.
  • The licence agreement is updated to version 1.2 to describe the new numbering and the fix policy. Nothing else in it changed.

Projects

  • Each project is now stored as a folder of files. Screens, scripts, named queries and styles each live in their own file under a projects folder next to the gateway's configuration, which makes projects far easier to back up, compare and keep under version control.
  • The change happens automatically on upgrade. The first time 2026.12 starts, it moves your existing projects into the new layout and keeps your previous configuration file alongside as a backup. Nothing needs to be exported or re-imported.
  • Saving is all-or-nothing. If the gateway is interrupted in the middle of saving a project, the next start completes or discards that save, so a project is never left half-written.
  • Two screens whose names differ only in capital letters are refused (for example "Home" and "home"), because Windows cannot store them as separate files.

Screens

  • Operators can adjust trend charts while viewing them. Hide or show a pen, move it to another axis, remove it, override an axis range, or change the time window. The changes last only for that operator's session and never alter the project. A designer can switch this off per chart.
  • Buttons can be enabled or disabled by a condition. Bind a button's Enabled setting to a tag or expression; while it is off, or while its value cannot be trusted, the button greys out and writes nothing.
  • Buttons can ask for confirmation. Give a button a confirmation message and the operator must confirm before anything is written.
  • Text fields can be set to numbers-only without having to set a minimum or maximum. A non-numeric entry is refused and nothing is written.
  • Equipment symbols can hide their caption, giving the space back to the drawing, for screens that place a separate label beside the symbol.
  • Reusable screen pieces on a scaled page are sized correctly. They were previously scaled twice.
  • Trend charts respond correctly to touch on scaled screens.
  • A multi-state label with no data no longer reads as "Stopped".

Devices and history

  • Changing a device tag takes effect straight away. Editing or re-importing a device tag's address re-connects it to the device live, without restarting the gateway.
  • History records a first value as soon as a tag starts recording, and can record a value at a set maximum interval even when it does not change, so a quiet tag still shows a continuous line on a trend.

Configuration console and designer

  • The configuration console shows each tag's plausibility limits (the range and rate checks that mark a reading as suspect), read-only, next to the tag.
  • The configuration console shows the Raylux version in its top bar once you are signed in. It is never shown to visitors who are not signed in.
  • Every setting a component offers appears in the designer's property panel, including ones that have not been set yet.
  • The designer's start-up screen shows the edition year.
  • Browser tab icons no longer sit on a solid square. They adapt to light and dark browser themes.

Licence expiry

  • A gateway whose licence has run out now says so plainly on screen. Operators see that the gateway has stopped and why, instead of screens that simply show no data. You can add a support contact (a name, phone number or email) for them to call; it appears on that notice.
  • You cannot get locked out. The configuration console still admits you on an expired gateway, so a licence can always be added.

Does this affect me?

  • Everyone upgrading from 1.0.x — install as usual. Your projects are converted automatically and your previous configuration is kept as a backup file. Tags, history, alarms and users are unchanged.
  • Going back to a 1.0 release after upgrading — a 1.0 release refuses to start on the converted configuration, rather than risk damaging it. To go back, restore the backup file the upgrade keeps (raylux_project.json.v2.bak) along with the older version.
  • You moved the gateway's data folder on Windows to a long path — keep the full path of the data folder short (the default C:\ProgramData\Raylux is fine). A very long path can prevent the project conversion on first start; the gateway then stops with a clear message and leaves your configuration untouched.
  • You use licences — licences issued from now on name a year. Installing a licence issued under the new scheme needs 2026.12 or later.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over an earlier release keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Install over an earlier package to upgrade; your data in /var/lib/raylux is kept. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. The packages are not signed yet.

Downloads

  • RayluxSetup-2026.12-x64.exe — the whole system for Windows: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-2026.12-x64.msi — the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-2026.12-x64.exe — the designer, for an engineer's workstation.
  • Raylux-Lens-Setup-2026.12-x64.exe — the plant-floor client, for operator stations.
  • raylux-nexus_2026.12_amd64.deb — the gateway for Debian and Ubuntu: sudo apt install ./raylux-nexus_2026.12_amd64.deb
  • raylux-nexus-2026.12-1.x86_64.rpm — the gateway for Fedora and RHEL: sudo dnf install ./raylux-nexus-2026.12-1.x86_64.rpm
04

Raylux 1.0.10

This release lets one project share its screens, popups and styles with others, makes reusable screen pieces work fully when placed inside other screens, enforces limits on numeric entry fields, and fixes a tag import that could leave every live value bad until the gateway restarted. We recommend it for every gateway, and especially for anyone who imports tags into a running system.

Tags

  • Re-importing tags no longer knocks live values offline. Importing a tag file with "overwrite existing" selected — or re-adding a tag that already existed — reset every affected tag to a bad value of zero, and it stayed that way until the gateway was restarted. An overwrite now updates the tags in place: live readings carry on, and only the tags whose settings actually changed are affected.
  • A changed start value or data type takes effect straight away. When an overwrite changes a memory tag's configured start value, the new value is applied; when the start value is unchanged, whatever an operator last wrote is kept. When a tag's data type changes, it switches to the new type instead of holding its old value.

Projects

  • A project can inherit from a parent project. Screens, popups, style classes, the project stylesheet, shared page settings and images defined in the parent are available in every child project, and a child can override any of them by defining its own with the same name. Edit a shared popup once in the parent and every plant project using it picks up the change. Pages and navigation stay in each project.
  • What is not inherited yet: tags and scripts stay per-project, and inheritance is one level deep — a parent cannot itself have a parent. For now the parent is set in the project definition; a designer control for it will follow.

Screens

  • Reusable screen pieces pass their settings all the way down. A reusable view placed inside another reusable view, a popup or a repeater now receives the settings its host passes it, so a motor or valve symbol placed several levels deep shows the right equipment's values. Settings written as a structured value are read correctly too; previously they were dropped and the piece showed no data.
  • Clicks and other events work inside reusable screen pieces. Labels, images and containers inside an embedded view now respond to their own click actions. Clicking something inside the piece no longer also triggers the click action of the view it sits in.
  • Numeric entry fields enforce their limits. A value outside the field's minimum or maximum is refused when the operator commits it, and it is rounded to the field's configured decimal places. If a limit is bound to a tag that cannot be read, the entry is refused rather than allowed through, so a missing limit can never let an out-of-range value reach the controller.

Does this affect me?

  • You import tag files into a running gateway — yes, install this release. An overwrite import no longer interrupts live values.
  • You build screens from reusable pieces or popups that take settings — yes. Nested pieces now show the right values and respond to clicks.
  • You write setpoints from numeric entry fields — yes. Configured limits are now enforced when a value is entered.
  • Everything else is unchanged. Your projects, tags, history, alarms and users are kept when you install over an earlier 1.0 release, and nothing needs to be reconfigured. A project without a parent behaves exactly as before.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over an earlier 1.0 release keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Install over an earlier package to upgrade; your data in /var/lib/raylux is kept. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. The packages are not signed yet.

Downloads

  • RayluxSetup-1.0.10-x64.exe — the whole system for Windows: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-1.0.10-x64.msi — the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-1.0.10-x64.exe — the designer, for an engineer's workstation.
  • Raylux-Lens-Setup-1.0.10-x64.exe — the plant-floor client, for operator stations.
  • raylux-nexus_1.0.10_amd64.deb — the gateway for Debian and Ubuntu: sudo apt install ./raylux-nexus_1.0.10_amd64.deb
  • raylux-nexus-1.0.10-1.x86_64.rpm — the gateway for Fedora and RHEL: sudo dnf install ./raylux-nexus-1.0.10-1.x86_64.rpm
05

Raylux 1.0.9

This release fixes operator screens that stopped showing some of their values once a page carried a large number of live tags, and makes a newly uploaded image appear on open screens without reloading the browser. We recommend it for every gateway serving busy screens.

Screens

  • Busy screens show every value again. A single browser tab could follow at most 256 tags. On a large page — a process overview with its side panels, say — anything past that limit showed a dash while the tag itself was reading perfectly well. The limit is now 5,000 per tab and can be changed in the gateway configuration without a restart.
  • A screen asks for each tag once. When several parts of a page show the same tag, the screen now follows it once and shares the value, which cuts traffic between the browser and the gateway on dense pages.
  • If the gateway ever does refuse a tag, you see it. The affected value is marked with the usual binding-error indicator instead of a silent dash, so it can no longer pass for a reading.
  • A newly uploaded image appears on open screens straight away. Previously, uploading a logo or picture while a screen was open left a placeholder in its place until the browser was reloaded, even after refreshing the project. Replacing an image with a new version under the same name now shows the new version too.

Does this affect me?

  • Your screens have many live values on one page, or several side panels — yes, install this release. If a value on a busy page has ever shown a dash while the tag read fine elsewhere, this is why.
  • You add or change images in a project while operators are watching — yes. They will see the change without reloading.
  • Everything else is unchanged. Your projects, tags, history, alarms and users are kept when you install over an earlier 1.0 release, and nothing needs to be reconfigured.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over an earlier 1.0 release keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Install over an earlier package to upgrade; your data in /var/lib/raylux is kept. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. The packages are not signed yet.

Downloads

  • RayluxSetup-1.0.9-x64.exe — the whole system for Windows: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-1.0.9-x64.msi — the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-1.0.9-x64.exe — the designer, for an engineer's workstation.
  • Raylux-Lens-Setup-1.0.9-x64.exe — the plant-floor client, for operator stations.
  • raylux-nexus_1.0.9_amd64.deb — the gateway for Debian and Ubuntu: sudo apt install ./raylux-nexus_1.0.9_amd64.deb
  • raylux-nexus-1.0.9-1.x86_64.rpm — the gateway for Fedora and RHEL: sudo dnf install ./raylux-nexus-1.0.9-1.x86_64.rpm
06

Raylux 1.0.8

This release fixes how the gateway reports a PLC it cannot read, speeds up Allen-Bradley communication, and adds new screen components: vector drawings, images, a moving analog indicator and a project stylesheet. We recommend it for every gateway, and especially for any gateway that talks to a PLC.

Device communication

  • A value the gateway could not read is now shown as bad, not as a live zero. Before this release, when a read failed — a timeout, an error reply from the PLC, a dropped connection — the gateway could publish the tag as a good reading of 0 or off, with a fresh timestamp. This affected every polled driver: Allen-Bradley, Modbus (including AutomationDirect CLICK), Siemens S7, Omron, BACnet and DNP3. A failed read now marks the tag bad and keeps its last good value, so operator screens show the tag as bad instead of a believable zero, and the stale-data check fires if the device stops answering.
  • Tags recover cleanly. When the device answers again, the tag returns to good straight away, even if the value has barely changed.
  • Allen-Bradley reads are much faster and put less load on the controller. The gateway now combines reads into fewer requests and reads related members of a structure together. On a busy ControlLogix, reading 31 tags went from 31 requests and about 430 ms per poll to 17 requests and about 14 ms, with identical values.
  • Two tags that point at the same Allen-Bradley address both update. Previously the second one could stop updating permanently.
  • A read that times out no longer blocks the next poll on Allen-Bradley.

Screens

  • Values that use a transform now display correctly. A lookup table or calculation on a tag binding was being applied twice, so lookups could show a fallback and calculated values could be wrong. It is now applied once. If a transform cannot be applied, the value is marked instead of being shown as if it were correct.
  • Open screens no longer resubscribe to every tag repeatedly, which cuts the traffic between the browser and the gateway.
  • Reusable views can build tag paths from their parameters, including inside expressions.
  • New: vector drawings. Draw vessels, piping and equipment as scalable graphics, with any color or visibility bound to a tag.
  • New: images. Show a logo or picture from your project's files.
  • New: moving analog indicator. A level or range bar with the process value, setpoint, normal band and alarm limits. Out-of-range values and bad data are shown distinctly, never as a normal reading.
  • New: project stylesheet. Add your own CSS to a project — animations, hover effects, project-wide colors. Changes appear on open screens without restarting anything.
  • Borders on buttons and containers now follow the border color, width and style you set.

Designer and configuration

  • Images and vector drawings are in the designer's component palette.
  • Tag providers can be created and removed from the configuration interface, without a restart.
  • Projects saved by older versions open and save normally, and restoring an older backup keeps each project's screen navigation.
  • Importing many tags at once is faster.

Does this affect me?

  • You read data from any PLC or device — yes, install this release. Screens can no longer show a failed read as a live value.
  • You use value transforms (lookups, calculations) on screen bindings — yes. Check any screen where a looked-up or calculated value looked wrong; it should now be right.
  • You use Allen-Bradley controllers — yes. You will see faster updates and less controller load, with nothing to change.
  • Your projects, tags, history, alarms and users are kept when you install over an earlier 1.0 release. Nothing needs to be reconfigured.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over an earlier 1.0 release keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Install over an earlier package to upgrade; your data in /var/lib/raylux is kept. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. The packages are not signed yet.

Downloads

  • RayluxSetup-1.0.8-x64.exe — the whole system for Windows: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-1.0.8-x64.msi — the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-1.0.8-x64.exe — the designer, for an engineer's workstation.
  • Raylux-Lens-Setup-1.0.8-x64.exe — the plant-floor client, for operator stations.
  • raylux-nexus_1.0.8_amd64.deb — the gateway for Debian and Ubuntu: sudo apt install ./raylux-nexus_1.0.8_amd64.deb
  • raylux-nexus-1.0.8-1.x86_64.rpm — the gateway for Fedora and RHEL: sudo dnf install ./raylux-nexus-1.0.8-1.x86_64.rpm
07

Raylux 1.0.3 — Linux packages for Debian/Ubuntu and Fedora/RHEL

The gateway now installs on Linux from a package, on both Debian/Ubuntu and Fedora/RHEL. Nothing changes on Windows; this release carries the new version number so all downloads match.

Linux

  • New: an .rpm for Fedora and RHEL. Install it with sudo dnf install ./raylux-nexus-1.0.3-1.x86_64.rpm and the gateway is set up as a service, started, and ready for first-time setup in the browser on port 8080. It works with SELinux enforcing, with nothing to configure.
  • The Debian/Ubuntu .deb is now a download, rather than something you had to ask for. Install it with sudo apt install ./raylux-nexus_1.0.3_amd64.deb.
  • Both packages refuse to install on a system too old to run them. Ubuntu 22.04, Debian 12 and RHEL 9 now get a clear message from the package manager instead of a gateway that installs and then fails to start.
  • Upgrading keeps a stopped gateway stopped. Install a newer package over an older one: a running gateway restarts on the new version, and one you stopped on purpose is left alone.
  • Uninstalling never deletes your data. Projects, history, alarms, users and certificates stay in /var/lib/raylux, even after a full removal.

Does this affect me?

  • Windows — no. Nothing has changed for Windows installs; you do not need to update from 1.0.1.
  • Linux — yes. The packages are now public downloads, and the .rpm is new. If you run an earlier Debian/Ubuntu package we sent you, remove it first with sudo apt remove raylux-nexus (your data is kept), then install 1.0.3. From 1.0.3 on, installing a newer package over an older one is the normal way to upgrade.

Installing

  • Windows: Windows Server 2019 or later, or Windows 10 or 11, 64-bit. The gateway installs as a Windows service and starts on boot. Installing over 1.0.1 keeps your projects, tags, history and users. These downloads are not code-signed yet, so Windows will warn you the first time you run one.
  • Linux: x86-64. Ubuntu 24.04 or later, Debian 13 or later, Fedora 39 or later, or RHEL, Rocky or Alma 10 or later. Studio and Lens are Windows-only; the gateway serves operator screens to any browser. If firewalld is running, open ports 8080 and 8443. The packages are not signed yet.

Downloads

  • RayluxSetup-1.0.3-x64.exe — the whole system for Windows: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-1.0.3-x64.msi — the gateway on its own for Windows, for scripted or unattended installs.
  • Raylux-Studio-Setup-1.0.3-x64.exe — the designer, for an engineer's workstation. Also available from any running gateway.
  • Raylux-Lens-Setup-1.0.3-x64.exe — the plant-floor client for a panel or workstation.
  • raylux-nexus_1.0.3_amd64.deb — the gateway for Ubuntu and Debian.
  • raylux-nexus-1.0.3-1.x86_64.rpm — the gateway for Fedora, RHEL, Rocky and Alma.
08

Raylux 1.0.1

Licensing changes. If you are running 1.0.0, replace it with this — the 1.0.0 download was built before these changes and does not include them.

Licensing

  • Unlicensed gateways now stop. A gateway with no valid licence and no running trial previously kept working in a reduced form — 500 tags, three devices, three screens. That was enough to run a small plant indefinitely without a licence. It now does not run.
  • The seven-day grace period is unchanged. A lapsed licence still gets a full week with everything working before anything stops.
  • Lapsed-licence warnings are now red, and show the number of days left, instead of a quieter notice that was easy to walk past.
  • Recovery never needs a licence. You can always sign in to the configuration console on a stopped gateway and install a licence or restart the trial. A gateway cannot lock you out.

Does this affect me?

  • Current licence — no. You will not notice this update.
  • Lapsed licence — not yet. Your seven days are unchanged; this only changes what happens after they run out.
  • Two-hour trial — no change. Restart the trial or install a licence when it ends, as before.

Installing

  • Windows Server 2019 or later, or Windows 10 or 11, 64-bit.
  • Installing over 1.0.0 keeps your projects, tags, history and users.
  • The gateway installs as a Windows service and starts on boot.
  • These downloads are not code-signed yet, so Windows will warn you the first time you run one.

Downloads

  • RayluxSetup-1.0.1-x64.exe — the whole system: gateway, designer and plant-floor client. Start here if you are not sure.
  • Raylux-1.0.1-x64.msi — the gateway on its own, for scripted or unattended installs.
  • Raylux-Studio-Setup-1.0.1-x64.exe — the designer, for an engineer's workstation. Also available from any running gateway.
  • Raylux-Lens-Setup-1.0.1-x64.exe — the plant-floor client for a panel or workstation.
09

Raylux 1.0.0

Raylux leaves pre-release. The gateway, the designer, the web runtime and the plant-floor client ship as one versioned product for the first time.

The trial

Start it from the gateway console and Raylux is completely unlocked for two hours — every driver, every module, unlimited tags, devices, users and operator screens. Nothing is withheld.

When the two hours are up it stops. There is no reduced free tier underneath: the gateway stops polling, stops serving screens and stops recording, and keeps running only enough to let you restart the trial or install a licence. Restart the two hours as often as you like.

What is in the box

  • Drivers: Allen-Bradley EtherNet/IP, Siemens S7, Modbus TCP and RTU, AutomationDirect CLICK, Omron FINS, DNP3, BACnet/IP, and OPC UA as both client and server.
  • No driver is sold separately, and there is no OPC server to license alongside it.
  • Alarms, the alarm journal, the audit trail, scripting and user-defined types are in the base gateway.
  • Studio is free for every engineer, on as many machines as you like.

Installing

  • Windows Server 2019 or later, or Windows 10 or 11, 64-bit.
  • The gateway also ships as a Debian and Ubuntu package for 64-bit Intel and ARM64.
  • These downloads are not code-signed, so Windows will warn the first time you run one.
10

Raylux 0.31.5 — alarms, role-gated pages, and trend polish

· Pre-release

A batch of fixes found while building and running a real fan-control HMI on a live plant.

Alarms

  • Discrete alarm modes — equal, not-equal and bit-state — alongside the existing limits.
  • Per-limit delays before an alarm becomes active or clears, so a brief excursion does not raise one.
  • Active alarms and the alarm journal are readable by an anonymous panel, under one clear policy.
  • A pending lower-severity alarm is cancelled when a higher limit trips, instead of both arriving.

Screens

  • Role-gated pages — require a capability, and choose whether an unauthorised operator sees the page hidden or is refused, with an idle timeout.
  • The active tab on a tab container can be bound.
  • Trends gained named vertical axes, per-pen aggregation, any duration as a preset, and axis widths measured from the ticks actually drawn.
  • The project-update notice is now a slim bar in the page flow rather than something that covers content, and the page login prompt uses the plant-floor palette.
  • A steady memory tag is no longer shown as stale.
11

Raylux 0.31.4 — long-press, HMI trends, and per-tag history

· Pre-release

Everything here came out of building a real fan-control HMI on Raylux, and each item was fixed in the product rather than worked around in the screen.

Screens

  • Long-press is a real event on any component, with a configurable hold time, driven so that a touch hold works on a plant-floor panel.
  • A button with no tag no longer attempts a write, so navigation and keypad buttons stop producing a "write failed" message.
  • A bound label that resolves to nothing renders empty, not as the design-time placeholder text.
  • Trend charts are HMI content: proper plant-floor colours by default, and the toolbar, title, presets and step-style pens all honoured.

Gateway

  • Trends need no login. History is readable by an anonymous screen under the same rule that already governs tag reads.
  • Per-tag history is a real setting — switch it on for a tag, choose its connection, applied live. Switching it on with no usable connection is refused with an explanation rather than silently doing nothing.
  • Memory tags survive a restart again. Each provider gets its own store, with a one-time migration that confirms every copy before removing anything.
12

Raylux 0.31.3 — Studio follows licence changes live

· Pre-release

Studio picks up a licence change without being restarted.

No restart to see a licence change

Studio built its workspace list once at start, so activating a licence or restarting the trial did not show or hide the affected workspaces until Studio was relaunched. The gateway is a running plant's gateway and never needed a restart for this; the engineering workstation should not either.

  • The gateway announces every licence change — a state change, a trial restart, or an activation that changes what you are entitled to.
  • Studio re-reads its entitlements and rebuilds its workspace list: a newly entitled workspace appears, an unentitled one disappears. If you are inside a workspace that loses its entitlement, Studio moves you to another one and says so.
  • The licence banner in the gateway interface re-reads at the same moment, so the trial countdown and status are current.

Known limitations at this release

  • Trial expiry is noticed lazily — the change to Expired happens on the first licence check after the two hours, so a gated workspace can linger until something consults the licence. Activation and restart are immediate.
13

Raylux 0.31.2 — device passwords join the credential store

· Pre-release

Closes the gap 0.31.1 shipped with.

Device credentials

0.31.1 moved six credential fields into the protected store but left one known gap: a device password edited through the gateway interface was still written in clear text.

  • A device password saved through the interface now goes to the credential store, reusing the entry migration created rather than duplicating it.
  • Reading one back returns a mask. Before this, it returned whatever was stored — including clear text on a hand-edited configuration.
  • A rotated password reaches the live device without a restart, and switching a device to another protocol erases its stored entry.
  • A credential on an unencrypted connection is no longer dropped — it is sent, with a warning that it travels unencrypted.

Fixes

  • Studio's Add Connection dialog accepts host:port and pasted addresses. It joined the address verbatim, so the form the manual itself recommends failed with a doubled port number. A failed check now keeps what you typed so you can correct it.

Known limitations at this release

  • Polling drivers do not use a device password; only OPC UA connections read it. Saving one on another driver is now refused rather than stored where it does nothing.
14

Raylux 0.31.1 — credentials leave the configuration file

· Pre-release

Six credential fields no longer sit in clear text in the gateway's configuration.

Credentials move to a protected store

Mail passwords, messaging tokens, single-sign-on secrets, database passwords and device passwords now live in a separate, owner-only file, with the configuration holding only a reference.

  • Migration runs on first start, keeps a backup of the previous configuration, and stores every credential before rewriting the configuration, so an interruption cannot lose one. A plain value left by hand-editing stays legal permanently.
  • Rotating a password later never puts it back in the configuration.
  • Reading a credential back returns a mask, never the value.
  • If a credential cannot be found — a configuration restored onto a different gateway — the gateway names the affected features at start-up and keeps running rather than refusing to start.

Fixes that matter to users

  • Test writes from the designer were broken for every control authored with a binding — buttons, toggles, sliders and text inputs. Nothing was written and nothing was logged.
  • A bound text input in the running HMI wrote to the wrong tag, treating its own contents as the tag path.
  • Every alarm-notification channel is now configurable without restarting the gateway. Mail had no configuration page at all; it has one now.

Upgrade notes

  • The credential store is deliberately outside the backup. Restoring a backup onto a different gateway brings the references but not the secrets; the gateway names what needs re-entering. Restoring onto the same gateway resolves normally.
15

Raylux 0.31.0 — four drivers, an OPC UA server, and 21 CFR Part 11

· Pre-release

A large release: four new protocol drivers, OPC UA server support, electronic signatures, and the Edge product tier.

Four new drivers

DNP3 (with sequence-of-events timestamps and unsolicited data), BACnet/IP, Siemens S7 over ISO-on-TCP, and Omron FINS over TCP and UDP. All five drivers the gateway can run are now creatable from the gateway interface.

The gateway is now an OPC UA server

Raylux has been an OPC UA client for a long time. It now serves as well, with application certificates, client-certificate quarantine, and a configuration check that refuses a setup no client could connect to.

21 CFR Part 11 electronic signatures

Electronic signatures over a tamper-evident audit trail. Requiring a signature is an enforced tag policy, not advisory, and screen controls opt in individually. This is the compliance feature regulated industries ask for first.

Raylux Edge

Two licensed products on one signed field: Edge Panel, a local HMI for a single panel, and Edge I/O, field data collection with no visualisation. They behave oppositely, so the licence carries them as two distinct kinds and deliberately refuses an ambiguous "edge" rather than guessing.

Studio

  • Visual version control and component-level screen comparison, against the live project.
  • Copy and paste as JSON for tags, types, tag groups, screens and components, plus file-level export and import.
  • Tag group assignment when a tag is created, and starter groups for fast, slow and historised tags.

Alarm notification

Not finished at this release, but the design-time half landed, and two real faults were found only by actually sending:

  • Every secure configuration used the wrong connection method, so the shipped default port could not reach any of the common mail providers.
  • Attachments were encoded twice, so every scheduled PDF report would have arrived unopenable.

Configurations that parsed and resolved but would have reached nobody are now either warned about or refused.

Also fixed

  • The OPC UA server bypassed the electronic-signature requirement entirely.
  • Saving a device through the gateway interface dropped most of its settings.
  • The gateway failed to start on Windows in a particular start-up ordering.
16

Raylux 0.30.3 — a faster write path

· Pre-release

Performance work on the gateway, and fixes in the designer and the plant-floor client.

Performance

  • The gateway's write path is about 44% faster — 66,900 to 96,200 values per second, measured.
  • Tag updates now reach only the screens actually subscribed to them, instead of every connected client on every change. The cost of delivering a change no longer grows with how many operator screens are open.

Fixes

  • A screen with no recognised layout is now reported as a problem rather than silently passing validation — which is how a malformed screen could hide a broken binding.
  • Switching workspace no longer leaves the previous workspace's panels on screen.
  • An unrecognised display mode on a plant-floor panel now presents full-screen instead of falling back to a desktop window — the one fallback a commissioned panel must never take.
17

Raylux 0.30.2 — designer and runtime agree

· Pre-release

A fix batch across the designer, the plant-floor client and the gateway.

Designer

  • The designer stops drifting from the runtime. Eight display components now draw through the same code the HMI runtime ships, resolving six differences between what you designed and what your operators saw — including a tank drawn 40% full for a value the gateway had not supplied.
  • Two components now work with themed colours. Their shading was built in a way that produced invalid colours for any project following a customer colour standard.

Plant-floor client

  • Saved connections from a pre-rename install are migrated instead of silently lost.
  • A panel powered on while the gateway is still starting no longer needs a restart — it re-checks every 15 seconds.
  • The installer is about 37 MB smaller.

Gateway and Studio

  • Pulling a project from the gateway now takes the server's copy or says why it will not. Previously a recovered crash snapshot could shadow a stale project while every pull reported success.
  • Creating tags under the reserved diagnostics provider is refused, as renaming and deleting already were.
  • Turning module accent colours off repaints immediately.
18

Raylux 0.30.1 — backup and restore is download and upload

· Pre-release

Restoring a gateway configuration is a file upload now, and backups download as a recognisable file.

Restore takes a file

Restore used to be a paste box. An operator holding a backup had to open it in an editor, select all of it and paste — for a document that replaces the entire gateway configuration, with no way to tell a clipped paste from a complete one until afterwards.

Backup and Restore now takes the file itself: choose it, or drag it onto the page. Before you confirm, the gateway shows what the file actually contains — projects, providers, devices — so the wrong file is caught while it is still a file, not after a failed restore you already believed in.

A file that is not a gateway backup is refused by its contents, not its name.

Backups download as .rnbk

The contents are unchanged, so anything scripting the backup endpoint is unaffected. The extension is what the restore picker filters on, and what makes a backup recognisable in a Downloads folder six months later. Backups you already have still restore.

A configuration backup does not contain user accounts

The screen used to say user passwords were preserved from the running system. That was true of an older configuration format. On any current gateway, users and roles live beside the configuration rather than inside it, so a configuration backup has never contained them.

Nothing changed about the behaviour — what changed is that the product now says so, and no longer shows a "Users: 0" row that reads as a fact about your gateway. For a complete backup, copy the data directory.

Fixed

  • The Download Backup button did nothing at all in some browsers, with no error anywhere.
19

Raylux 0.30.0 — CLICK PLUS driver, Linux and ARM64

· Pre-release

Two new capabilities: a new PLC family, and Linux, including the Raspberry Pi.

AutomationDirect CLICK and CLICK PLUS

CLICK PLUS speaks Modbus TCP, so it never needed a protocol driver of its own. What it needed was a translation from the names an engineer actually authors in the CLICK software onto Modbus addresses. Two driver types do that, for network and serial.

The address table is vendor-confirmed. AutomationDirect publishes no CLICK-to-Modbus map — the manual tells you to read it out of the programming software. That export was taken and validated against all 12,340 addressable rows with no mismatches.

Worth knowing if you author CLICK tags:

  • Leave word order set to little-endian, the default for these drivers. CLICK orders 32-bit values low word first; on the usual setting every 32-bit value decodes to a plausible wrong number with no error anywhere.
  • Inputs, timers and counters are read-only, and writes to them are refused.
  • Input and output points are not contiguous — two banks of 16 per hundred. Addresses that are not real points are rejected rather than quietly mapped to a neighbour.
  • Text registers are not supported, because two characters share a register and no single Modbus address can express that.

Linux, including the Raspberry Pi

The gateway builds and passes its full test suite on Linux for the first time, on both Intel and ARM64.

A single apt install is the whole procedure: it creates the service account, installs the service, and starts the gateway. Non-interactive, so it works over SSH and from a provisioning script.

It installs to /opt/raylux because it bundles its own Python runtime, and gateway data stays at /var/lib/raylux — removing or even purging the package leaves your data alone, the same guarantee the Windows installer makes.

Fixed

Five of these only surfaced by packaging and installing, because every test runs from a writable directory with a configuration it just wrote.

  • A configuration written with the older spelling of one section was silently ignored from the second start onwards. A gateway deliberately bound to localhost came back on every interface; an HTTPS-only deployment resumed serving plain HTTP. Silently, with no error.
  • Three settings were resolved relative to the service's working directory. One killed the gateway at startup, one silently broke history, and one made licence activation impossible on any packaged install — the gateway accepted and validated the licence, then wrote it somewhere it would never read.
  • The licence page showed hardware details as absent on every platform since that page was written. Detection had been working the whole time.
  • The packaged Linux service runs at a sensible log level. The default writes a line per second per system tag, which is real flash wear on a Pi.

Not verified at this release

  • The CLICK driver had not yet spoken to a physical PLC. Addressing was confirmed against the vendor's own tool and the wire behaviour against a simulator.
  • The ARM64 build had only run under emulation, which is strong evidence about portability and weak evidence about timing.
20

Raylux 0.29.0 — the built-in script editor

· Pre-release

Scripts are written in a real editor now, and every small code box in the product grew up.

Scripting

  • A built-in Python editor, instead of shelling out to whatever text editor happened to be installed. Saving goes through the same automatic project save as every other editor, so there is no separate "save script" step to get out of step.
  • Completion fed by the gateway itself. The gateway reports what a script can actually call, so the suggestions cannot disagree with reality the first time Studio and the gateway are different versions. Your own project scripts and a tag-path search are included.
  • Highlighting that knows what is real — a valid call renders as a known call and a typo renders plain, as you type it, before you save.
  • Every code box gained Expand, and an external-editor option where it makes sense. Binding scripts, expressions, transforms, event scripts and query SQL were all authored in boxes a few lines tall wedged into a form.

Workspaces

A Workspaces screen in the gateway interface, so "why is this module missing from Studio" has an answer you can read. Switching one off reaches a connected Studio immediately rather than at its next reconnect.

Fixes

  • A view's "Kind" setting is gone. It decided nothing — popups are ordinary screens — but it had a real casualty: the popup settings that do govern behaviour were greyed out unless a view was flagged as a popup, while the runtime read them regardless. They are always editable now. Existing projects are carried through untouched.
  • The designer ignored the root container's type, so a view laid out as a row or column was drawn stacked in the designer while the running HMI laid it out properly. The view you designed and the view you shipped were different.

Upgrading

Drop-in. A row or column view will look different in the designer after this upgrade — it will now look like what your operators have been seeing all along.

21

Raylux 0.28.0 — install-time workspace selection

· Pre-release

The installer asks which capabilities a gateway should offer, and the gateway honours the answer.

Choosing what a gateway offers

A Gateway workspaces page in setup offers the HMI runtime, alarm pipelines, reporting, named queries and notifications. Clearing one stops the gateway offering it.

Installed and licensed are separate answers, and both are now reported. A workspace you paid for but did not install says exactly that, instead of reporting a licensing problem.

The HMI runtime is its own entitlement, so a gateway bought purely as a historian or database server can be licensed without it. It is in the base bundle, so it is removed for that sale rather than added for an ordinary one — every existing gateway keeps its HMI.

Offline licence requests

A gateway can export a request file carrying its hardware fingerprint and identity, so nobody has to retype a fingerprint to get a licence issued. A request written by a newer version is refused by name rather than half-read.

Fixes

  • Alarm notification was denied to every trial, because its entitlements were still marked as unreleased after the module shipped. Trials now unlock every module that exists.
  • Installers were shipping build leftovers. Removing them took 23 MB off Studio and 25 MB off Lens.
  • Lens and the licence tool opened a console window behind their interface on every launch.
22

Raylux 0.27.0 — historian trend aggregation

· Pre-release

Long trends stop dragging their whole history across the network, plus a batch of driver and interface fixes.

Trend aggregation

Wide trend windows are now summarised inside the database, so a long trend never leaves it as raw rows. A chart measures its own width and asks for that many points, keeping a minimum/maximum envelope by default so a spike survives being summarised instead of being averaged away.

Measured against the case this was built for: a 30-day trend on a tag logged four times a second — 10,368,000 readings — returns 900 points instead of all of them.

Found and fixed along the way: the trend query had never actually reached a live gateway, in three independent ways.

Also

  • Data-quality checks on incoming values: range, rate-of-change and stuck-value detection.
  • Tag access defaults to open unless a tag is explicitly restricted, matching the stated security model.
  • Allen-Bradley: fixed-length string structures, 32- and 64-bit floats read correctly, structure names shown instead of an internal id, and one bad tag no longer stalls a whole device's polling.
  • Studio: importing tags from a device no longer forces the PLC's own folder structure on you, and folders can be ticked as a group.
  • Buttons can write back in one-shot, momentary and toggle modes.
23

Raylux 0.26.0 — indirect tag bindings

· Pre-release

Indirect bindings, with write-back, end to end.

Indirect bindings

A binding can now build its tag path from other values on the screen rather than naming one fixed tag, so a single faceplate can serve every pump on a line by being told which one it is looking at.

  • Reads, live subscriptions and writes all follow the indirect path, and a screen re-subscribes automatically when the value that selects the tag changes.
  • An authoring interface in Studio for the references that feed the path, in the direct/indirect shape integrators will already be used to.
24

Raylux 0.25.0 — client licence metering and the alarm notification core

· Pre-release

Client licence metering, the groundwork for alarm notification, and the licence format settled for good.

The licence format is final

The signed format now carries everything the commercial model needs, in one change rather than three — three separate format changes would have been three chances to miss the window. No licence had ever been issued, which is the only reason this was free to do.

Scripting, user-defined types, named queries and OPC UA became core capability at this release rather than paid options.

Client licence metering

The unit is a session, not a connection, and that was the whole problem. One operator screen opens several connections — the screen itself, each alarm table on it, and a shared background one. Counting connections would have charged one operator two seats for a screen with an alarm table and three for a screen with two: a per-screen, unpredictable price on the number a customer was sold.

  • An established session is never cut off mid-use, and an older client that does not identify itself is admitted and never metered, so no gateway starts turning operators away after an upgrade.
  • Ships with session administration: see who is connected, on which client, with which project open, and end a session.

Alarm notification groundwork

The roster, escalation policy, configuration and pipeline engine all landed. Nothing sends yet — there is no delivery method, so the service is deliberately not started rather than logging a failure on every alarm.

Fixes

  • Lens opened a console window on every launch — the worst application in the product to get that wrong on, since a stray console on a kiosk panel is both visible to the operator and a route out to the desktop.
  • The Studio and Lens setups showed two wizards in sequence.
  • "New project from template" was empty on every installation ever shipped, because the templates were placed where the gateway does not look for them.
25

Raylux 0.24.8 — setup wizard, gateway-only install, licence texts

· Pre-release

An installer and licensing release. Nothing in the runtime changed except the Downloads page fix.

Installing the gateway no longer installs Studio and Lens

A gateway is usually a server, and it should not acquire a designer and an HMI runtime nobody asked for. The installer now sets up the gateway and leaves the clients alone.

It still carries them — they are laid down and served from the gateway's own Downloads page, so any machine that wants a designer can have one, from the gateway it is going to connect to.

A setup wizard that looks like the product

One wizard rather than two, in the product's own palette and typography, with a progress page that reports what it is actually doing. That last part matters most: the package is around 770 MB compressed, so unpacking dominates the wait, and the previous wizard attributed none of it. A working install looked hung.

Third-party licence texts now ship

Raylux uses Qt and includes a browser engine, and those licences oblige us to reproduce their notices. The installer previously shipped none, while the licence agreement told customers a licences folder existed. It exists now — 97 files covering every component that actually ships, copied from the artifacts themselves rather than transcribed, with the build failing rather than producing a package with an incomplete set.

Fixed

  • The Downloads page could hand out an old client installer. Upgrades leave previous versions in place, and the gateway served whichever it found first, so the version you downloaded depended on directory ordering.

Known limitations at this release

  • Not verified on a clean machine. Not code-signed. Windows only for Studio and Lens. A pre-release, not for production use.
26

Raylux 0.24.7 — the offline manual

· Pre-release

Documentation ships for the first time, and three faults live on every gateway are fixed.

A manual, served by the gateway itself

A 19-page manual installs with the gateway and is served at /manual, with no internet required. It covers install and first run on Windows and Linux, TLS certificates, backup and restore, upgrades and uninstall, troubleshooting, and a security-hardening checklist.

Bundled rather than hosted, deliberately. The machines that need it are frequently on a network with no route off site. A page that pulls a stylesheet or font from the internet does not fail loudly on a plant network — it renders in the wrong font with the search box missing, and nobody connects that to a firewall rule.

Fixes

  • The gateway reported 0 devices on every installation ever shipped. A plant with every PLC down published "0 of 0" and read as healthy.
  • Writing to a tag that does not exist reported success — a stale binding, a typo'd path, or a tag deleted from under a running screen all reported as written. Operator screens are unaffected; they never checked.
  • A malformed automated binding edit deleted the binding it was meant to set, destroying work and reporting success.
  • The Problems panel rebuilt its whole list on every keystroke.
27

Raylux 0.24.6 — client installers on the gateway's Downloads page

· Pre-release

The gateway's Downloads page works. It never had before.

Client installers

Studio and Lens are handed out as their own setup programs from the gateway's Downloads page. Each installs one application, chains the Visual C++ runtime, and leaves a Start-menu and uninstall entry.

They cannot simply be the main installer with fewer options selected: the gateway cannot be deselected there, so an engineer downloading "Studio" would acquire a Windows service.

The gateway installer now ships them, so a fresh install has a populated page. It can be cleared at install time — it is the largest single item in the package, and a site whose engineers already have Studio need not hand it out.

Why the page was empty everywhere: it is served from the data directory, which the installer deliberately never writes to so that an uninstall preserves projects, history and certificates. The only thing that had ever populated it was a script run on a build machine.

Fixes

  • The project templates still had not shipped in any installer.
  • The setup wizard looked identical for all three products — installing Studio drew the same window as installing the gateway. Each now carries its own mark.
  • The installer could have wrapped the wrong package, because the new client packages matched the pattern it used to find the gateway.
28

Raylux 0.24.5 — symbol orientation

· Pre-release

Motors, pumps and valves can be turned, and the mountings follow.

Orientation

Symbols take an Orientation — up, down, left or right — which points the outlet: the motor shaft, the pump discharge, the valve flow axis.

Three rules follow from it, each really a statement that a turned machine is a different object:

  • Reversing an axis is a mirror, not a half turn. A pump discharging left is the same pump seen from the other side; rotated 180 degrees it is upside down.
  • Feet do not rotate, but they do mirror — a pedestal stays on the floor, and a reflection carries the machine's footprint across the drawing.
  • A quarter-turned machine mounts differently. Foot mountings are shaped to meet the barrel lying down; stood on end the machine cannot reach them. Each pose now has its own drawn mounting.

Schematic P&ID symbols get no pedestal when turned, and the P&ID motor no longer rotates at all — a circle with an M in it has no shaft to point, and turning it only turned the letter.

Fixes

  • No installer had ever included the project templates, so "new project from template" was empty on every gateway.
  • The sample project's symbols were configured with a setting nothing reads, so the page meant to show three symbol styles side by side drew three identical ones.
  • A valve placed in a horizontal pipe run was drawn a quarter turn away from the line it sits in.
  • Deep links into a template's pages did not work, because the page configuration was stored under a name nothing reads.
29

Raylux 0.24.4 — large ControlLogix processors can connect

· Pre-release

Fixes an Allen-Bradley connection failure found on a 1756 ControlLogix.

A ControlLogix with a large program could not connect

Connecting to an EtherNet/IP device reads the controller's entire tag table, and that read is the reachability check. It was fixed at one second, with no way to change it. A controller whose tag list takes longer than that failed every attempt and reported itself unreachable — on every setting, permanently.

This survived earlier hardware testing because the only Allen-Bradley controller available had 562 tags. A 1756 carrying a real plant program is a far larger listing against the same one-second budget. The fault needed a bigger controller to appear, not a different one.

  • The default is now five seconds.
  • The connect timeout setting now applies to Allen-Bradley devices. It had been accepted and silently ignored, so anyone who set it was reasonably assuming it did something.
  • The device form has a Connect Timeout field, with a default suited to enumerating a controller rather than reading a handful of registers.
  • The failure message now names the timeout and the setting instead of saying "unreachable", which is what had pointed the original diagnosis at the network rather than at the time limit.

If a large controller still will not connect, raise the connect timeout before suspecting the network.

30

Raylux 0.24.3 — device edits and deletes reach the gateway

· Pre-release

Two device-connection faults found in real use against an Allen-Bradley ControlLogix.

Deleting a device now stops it

Deleting removed the device from the configuration and nothing else. It kept running, kept retrying and kept reporting its connection error on screen until the gateway was restarted.

Editing a device now reaches the wire

Correcting an address, backplane path or PLC type saved to the configuration and changed nothing on the running device. The response said "saved", so a correct fix looked like a fix that had not worked.

The most common case is an Allen-Bradley path — with the Ethernet module in slot 2 and the processor in slot 0 the path is still 1,0, because it routes from the module to the controller. That value was most likely right all along and simply never reached the driver.

Edits now apply immediately. If the new settings cannot be used — clearing a required address, say — the device stops and the response says so, rather than claiming success over a dead device.

Also

  • Creating a project from Studio no longer rewrites the entire gateway configuration, and reusing an existing project name is refused instead of silently replacing that project and all its screens.

Next step

Run the latest release.

Every 1.0 release installs over the one before it and keeps your projects, tags, history and users. Follow new ones in a feed reader, no email needed.