
RLX-ST — SCADA and HMI designer Where the screens get built.
Studio is the engineering tool. It builds the screens, tags, alarms and reports that Nexus runs, and publishes them to Nexus. It installs per user, on an engineer’s workstation, not on the server.
Specifications
Version 2026.21. Describes Studio as built.
| Installation | Value |
|---|---|
| Installs on | An engineering workstation, per user |
| Platform | Windows 64-bit. Studio is Windows-only |
| Ships as | Its own setup program |
| Authentication | An account with designer rights |
| Connection | Value |
|---|---|
| Opens on | The Nexus Hub — a grid of known Nexus instances |
| Transport | HTTPS to Nexus, 8443 |
| Certificates | Trust on first use; warns if one changes |
| Publishing | Audited — who pushed which page, and when |
How it works
Builds what Nexus runs
Screens, tags, alarms and reports are authored in Studio and published to Nexus, which serves them to operators.
Publishing is audited: Nexus records which designer pushed which page, and when.
Works across installations
Studio opens on the Nexus Hub: a grid of every Nexus it knows about, rather than one hard-wired connection. One workstation, however many sites.
Trusts a certificate once
On a self-signed certificate Studio asks you to verify it once and then remembers it. If that certificate later changes, it says so rather than connecting quietly.
That is trust-on-first-use, the same model as SSH, and it works on a plant network with no public CA.
Windows only, deliberately
Studio and Lens are Windows programs. A Linux install is headless: it runs Nexus and serves Spectrum, and you engineer it from a Windows workstation.
Bindings and the node editor
Every property on a screen can follow live data. When the raw value isn’t what the screen needs, you draw the logic in between.
Bind any property
One dialog binds a component property to a tag (direct, or indirect so one screen serves every identical unit), to another component’s property, an expression, a named query or tag history.
A bidirectional binding writes back: drag the slider and the setpoint moves.
Transforms, in a chain
Between the source and the property sits a chain of transforms: Map (to a value, a color or a style class), Format (number or date and time), Expression, Script, and Node.
The dialog previews the output of every step, computed by Nexus, so you see what the screen will get before you apply it.
Draw the logic
A Node transform is a graph: drop nodes from the toolbox, wire outputs to inputs, and return the result. Sources, arithmetic, maths (clamp, map range, lerp, rounding, trig), comparisons and logic: more than forty node types in all.
When a graph isn’t the right tool, a Script node holds plain Python.
Scripts, too
The same editor draws gateway scripts — startup, shutdown, scheduled and tag-change — with flow nodes to read and write tags, branch, wait, log and call other scripts. A new script starts as text or as a node graph.
Compiled on the server
Nexus compiles each graph to Python and runs it on its Python engine, alongside hand-written scripts. Studio never generates code and the browser never runs it, so the preview and the plant run the same thing.
Straight-line by design
A graph runs once from Start to Return; there are no loops. Logic that needs one belongs in a Script node, where it is ordinary, readable Python.
Python, built in
Scripts in Raylux are Python 3.14: the real CPython interpreter, not a dialect or an older port. Nexus ships it, so there is nothing to install, and scripting is included with the base gateway. Write scripts in Studio, or in the editor you already use.
| Runtime | Value |
|---|---|
| Language | Python 3.14, CPython, free-threaded |
| Ships with | Nexus, on Windows and Linux |
| Runs on | The gateway — never in the browser |
| Written in | Studio’s editor, or VS Code or any editor you like |
| License | Included with the base gateway |
| Where it runs | Value |
|---|---|
| Gateway scripts | Startup, shutdown, scheduled, tag change |
| Project library | Shared functions, called from any script |
| Screens | Script bindings and transforms, component events, Run Script |
| Reports | Script data sources |
No global lock
Nexus runs a free-threaded build of Python, so separate scripts run at the same time on a pool of worker threads. One slow script doesn’t hold up the rest.
A script never runs alongside itself, and a watchdog stops one that overruns its timeout, five seconds unless you set otherwise.
What a script can reach
The raylux module reads and writes tags, queries tag history, runs SQL and named queries against the project’s database connections, and writes to the gateway log. Shared functions are called as raylux.custom.script.function().
Raw SQL that changes the database is off until the project turns them on, and every one is audited.
Written in Studio, or your own editor
Studio’s script editor highlights Python and completes as you type. The completion list is read from the raylux module on the Nexus you are connected to, and tag paths complete inside read_tag("…").
Prefer VS Code or another editor? Point Studio at it and scripts open there instead.
Fenced in
Scripts run without open, exec or eval, and cannot import modules such as os, subprocess or socket. The rest of the standard library is there.
Still treat script editing as a privileged role: whoever can edit a script can run code on the gateway.
raylux module on the connected Nexus actually offers.
Studio at work
Next step
Put it on a real PLC this afternoon.
Everything is free to download and free to try. Start the trial and Raylux is completely unlocked for two hours — every driver, every module, unlimited tags and clients, nothing withheld. When the two hours are up you restart it, as often as you like.