Skip to content

Release Notes

New features, improvements and fixes of realvirtual WEB and realvirtual CONNECT, newest release first. Each entry names the product and version it belongs to.

  • Demo – New demo Delta Picker (PLCopen motion, SEW drives): a 3-axis delta robot programmed with PLCopen motion in Structured Text, SEW CMP40S servo motors with live motor torque in the Axis Forces window, an operator panel with speed override and an assumptions note, and the SEW manual linked from the motors. It replaces the Autonox DELTA demo.
  • Start layout – the new Start Layout component (WebStartLayout) defines how a model opens: which windows are shown and where, the camera view and mode, and whether the simulation runs. The Delta Picker demo opens with the PLC editor, Axis Forces and the operator panel already in place.
  • Demo – the use-case links of the public demo jump straight into the model: the scene loads behind the terms dialog and goes live as soon as you accept. Use cases can set the arrival view (view=iso|top|front|back|left|right|home).
  • Library – new parts realvirtual Chocolate Dark and Milk (Food): flow-wrapped chocolate bars as movable units with a source and collider.
  • Library – the Loading Gantry is now a parametric family (static-height default), with a demo model of two gantries with different variants and pallet lines.
  • Parametric families – a placed parametric family opens in its own window: change its parameters with sliders, see the result live while you drag, and commit on release. Pending rows are applied with one Stop & apply. The window opens from four entry points (hover menu, context menu, hierarchy, Layout Planner).
  • Hover menu – a stationary hover menu in the toolbar replaces the old action tooltip; features can add their own entries.
  • Simulation performance – the simulation clock turns amber or red with a warning icon when the simulation cannot keep up with real time; hover the clock for real-time factor, tick load and lost time. web_status reports the same values.
  • Live axis forces (Commercial) – a rolling window shows the forces and motor torques of the axes of a running mechanism, with a time span selector and persistent zoom with Reset zoom.
  • PLC (Structured Text) (Commercial) – IEC standard functions, own FUNCTION and FUNCTION_BLOCK definitions, shared PLC libraries and the PLCopen motion function blocks (MC_*) on motion groups and axes, with S-curve motion and trapezoid fallback. The plc help guide lists the built-in functions.
  • Sound (Commercial) – drive sounds can play recorded clips (looping and one-shots) from a generic clip library, a CoastDown option (Auto / Full / Off) for the motor brake sound, and a new Sound Event component plays a sound on a signal edge, with volume, minimum interval and preview in the inspector.
  • Mesh stretch and cut (Commercial) – new components extrude a strand of material (for example foil or bags) and cut it, with a print that scrolls along the strand.
  • Operator panel – quiet guidance notes (notes[]) below the devices.
  • Sink – new Delete output slot (Unity parity).
  • Connections – Add connection is available as a command and menu entry; the connections section appears only for models with connections.
  • CONNECT panel – Adding the first CONNECT interface to a model asks whether to save the configuration in the project (Save in project) or only on the gateway (Keep only on CONNECT).
  • CONNECT panel – Linking a CONNECT configuration to a model works with any CONNECT: the configuration is loaded when the model opens and every save goes back into the project file. The panel shows the file and whether it is saved.
  • CONNECT – one browser tab controls CONNECT at a time; a second tab that finds CONNECT in use says so and offers Retry.
  • CONNECT panel – reworked layout: neutral gateway header, the configuration block on top, two-line interface rows with a power icon to enable or disable each interface, a clear SEW UDP entry with an import-first empty state, signal mapping with an Addresses menu, labelled filters and a Bridges menu. Read-only projects show the configuration without save offers or red errors.
  • CONNECT panel – If the gateway holds a different configuration than the model’s file, you choose Load from file, Keep gateway and save to file or Cancel. Read-only and hosted projects load the configuration and say that changes are not saved.
  • Signal rename – the rename is only reported as complete when the model’s CONNECT file was written too.
  • Operator panel – rows support alignment (also vertical), dividers and section titles, with validation, a JSON schema and a snippet in the editor; readouts can smooth jittering values (smoothingMs); the panel loads on demand.
  • Texture scroll – scroll axis, tiling and still faces can be set; printed textures stay frozen on cloned parts.
  • Signals – hovering a signal-link badge shows the link as a tooltip; the signal-link window title is the element name.
  • Tooltips – appear after 500 ms and are no longer hoverable, so they never block the target; the volume popover stays open while you drag its slider.
  • Help – Help opens the documentation page for the open panel or the selected component; the selected component outranks a plugin topic.
  • Mechanism – a drive speed step no longer resets the mechanism, and entered masses are no longer treated as estimates.
  • Viewer – closing a viewer releases its WebGL context.
  • Hosted projects (Commercial) – the encrypted link can optionally carry the password (&pw=) so the recipient skips the prompt; the deploy command prints it only with --link-with-password.
  • CONNECT – the model keeps following live PLC values after the first import while a tab owns CONNECT.
  • CONNECT – a configuration change refused because another tab controls CONNECT says so; read-only projects no longer offer Save in project and the save-location dialog explains why.
  • CONNECT – leaving a model stops its CONNECT interfaces; a model without configuration no longer takes over the previous model’s interfaces; a gateway configuration that is not the model’s is no longer silently replaced when the model opens.
  • CONNECT panel – Saving a Beckhoff ADS interface works again; rejected saves now show an error. Adding an interface from the Add interface dialog, Edit, the Bridge dialog and the SEW UDP import no longer fails with “No viewer”.
  • Demo – the DES demo link in the feature overview opens the public Pallet Yard model.
  • Parametric families – Stop & apply pauses the simulation before it resets, so applied values are no longer lost; after a placement is rebuilt, the selection and the open window stay on the rebuilt part; a family inside a placed asset is read-only in the editor; duplicating a family (Ctrl+D) gives the generated nodes the ids of the new family.
  • Physics – the collider of a moving unit sits at its geometry instead of the pivot.
  • Inspector – references stored in address form or untyped no longer crash the HMI root; a strictly positive bound reads ”> 0”; render internals (batching chunks, bake counters) only show with the Render Internals developer switch.
  • Signals – the level seed at binding time applies only to slots that declare an edge base.
  • Operator panel – clearing a model also clears its operator-panel problems.
  • Context menu – entries with an input field show their label, icon and help text.
  • Library – a missing library reports “Library not found” with the address instead of a generic parse error.
  • Start layout – a model’s start layout also applies when no MCP bridge is connected, and an empty group isolation no longer leaves a stale isolation in place.
  • Demo – Laser Welding: the index lifts raise the pallet, the gripper FG03 works on its own signals and the laser-mark beam has a neutral material name.
  • One browser tab owns a model’s CONNECT configuration at a time; leaving the model stops its interfaces. Stored WEB configurations stay stopped after a gateway restart until their document is activated again.
  • Document lease messages on the realtime socket and the X-Connect-Lease request header protect configuration writes and realtime model values while a tab owns CONNECT.
  • Configuration revision protection – every configuration write (PUT /config, config operations, interface edits, Allow WEB to PLC, signal rename) accepts If-Match: <instance>:<revision> and answers 409 revision-mismatch when the configuration was changed elsewhere; responses carry X-Config-Revision / X-Config-Instance, exposed to browsers by the CORS policy. Requests without the header behave as before.
  • Ask AI – diagnosis answers link documentation pages by their public URL.
  • Uploading a model while a browser tab disconnects no longer hangs the request and every later document lease operation.
  • Panel edits (interface on/off, Allow WEB to PLC, rename) no longer make a gateway configuration belong to the open model; only loading or creating a configuration from WEB transfers ownership, so a gateway configuration keeps its PLC connections when the tab closes.
  • Document release reports interface teardown failures instead of confirming a successful stop after a logged disconnect error.
  • Configuration – a full replace keeps the stored user names of interfaces (login fields sent as empty are kept, not wiped).
  • Configuration – files written with the legacy TwinCAT field routeHostIp are accepted.
  • CAD import – STEP imports are never Draco-compressed, so imported geometry opens everywhere without a decoder.
  • SimReady – the project thumbnail is taken from the bill of materials when no root list is present.
  • Layout Planner – Align tool in the planner toolbar: pick a corner on a placement and a corner on any other geometry, including the main model, and the placement moves so the corners meet. Per-axis switches (height stays by default), an offset in metres, a preview line, one Undo step; snap-connected chains move along in chain mode.
  • Stats window – parts can be coloured by watertightness, and a Random colour mode gives every part its own hue.
  • Asset editor – the in-place test run works for documents whose display name differs from the model root name, and forces recorded during the test run are kept after Stop. If restoring the document after a test run fails, the Problems panel says so.
  • Chains – chain elements created at runtime move with their chain again (the drive ran, but the chain stood still).
  • DES snapshots: running robot IK paths (point-to-point, linear and waiting segments) are saved and continue exactly after loading.
  • MCP – the old tool names that answered MOVED for one release are gone and are now unknown tools; use web_execute / web_query (web_commands lists the commands).
  • Replay recordings keep their start and status signals after a model is saved in the browser and reopened.
  • Fleet: an AGV waiting behind a broken-down AGV no longer reports a wait timeout; the wait names the broken vehicle.
  • AI scene access now follows the configured CONNECT address and port instead of always using port 5100.
  • Animated USD export and Isaac Sim live sync no longer write sensor beams and detection boxes or the runtime screen of a camera display into the USD stage; showing or hiding them no longer restarts the live sync.
  • CONNECT signals: OPC UA variables of type Boolean (for example from a CODESYS controller) now bind as Bool instead of Float, so edge-triggered logic such as a gripper release works again. When a controller signal is bound or mapped onto a model signal, the model signal’s type and direction apply; Fill addresses offers Retype to model for a CONNECT signal configured differently.
  • Local license CLI: license status, activate, import, offline-request, deactivate and register, with text/JSON output and stable exit codes. Windows includes the console launcher realvirtual-connect-cli.exe; Linux uses realvirtual-Connect directly. Commands use the running service over loopback or the same locked license directory when the gateway is stopped.
  • Signal mappings can convert values on the way: copy, integer to bool and back, single bits from and into a word, and scaling with factor and offset — the same conversions as the SignalConnector component in Unity and realvirtual WEB. A mapping without a conversion behaves exactly as before.
  • MCP – the old tool names that answered MOVED for one release are no longer classified or forwarded and are now unknown tools; use web_execute / web_query (web_commands lists the commands).
  • The public download is the gateway only again: it no longer includes the realvirtual WEB viewer and the public demo. The browser HMI comes with your realvirtual WEB delivery or project, which CONNECT serves.
  • Values written over the WebSocket channel are checked against the signal type. An entry that does not fit is ignored, the rest of the message is still applied.
  • Saving the configuration no longer duplicates default list entries of KEBA interfaces.
  • AI prompts, update checks and WebSocket Realtime use the actual gateway port instead of assuming port 5100.
  • STEP imports are no longer Draco-compressed. Draco rounded each part’s surfaces to a separate grid, so neighbouring faces of one part could show small cracks; imported geometry is now exact. STEP files converted before this update are converted again on their next import.
  • Parallel gateways sharing a license directory no longer lose license updates or mix a token with another token’s masked key; stale deactivation and registration replies cannot overwrite newer state.
  • A requested startup license-file import is never silently skipped: a busy store retries for up to 30 seconds, then reports LICENSE_STORE_BUSY; other import failures abort with their original code.
  • Windows keeps inherited stdout handles when started with file redirection or a shell pipeline.
  • A failed --activate-license reports the cause and next step with a defined exit code.
  • After this update, a previously stored masked license key appears in the license display only after the next activation or token import with a license key. Legacy masks cannot be paired safely.
  • ?apikey= on the WebSocket handshake (/ws, /webviewer) is now accepted from other machines; before, such a handshake always failed with 401.
  • Passwords, tokens and keys are no longer returned by any read: GET /config, GET /config/interfaces, the answer to POST /config/interfaces and the WebSocket config_answer show them as null, also on installations without a project. Credentials inside connection URLs are masked. Saving a value back as null or masked keeps the stored credential; an empty string clears it.
  • Logs, the log view, the diagnostics bundle and interface status no longer show passwords, tokens or keys, including those in failed-login answers from ctrlX, ctrlX Data Layer, KEBA and Wandelbots NOVA.
  • WebSocket messages larger than 4 KB are no longer lost; messages above 2 MB close the connection with code 1009.
  • config_set on the WebSocket channel now answers success:false instead of reporting a change it never applied; use the REST API to change the configuration.
  • A local reverse proxy can no longer make a remote caller look like a local one.
  • A WebViewer tool result that arrives exactly when its call times out is no longer lost: web_call_pending now reports it as done instead of staying “running”.
  • OPC UA data type names such as Boolean, Double or Int16 (reported by CODESYS and other OPC UA servers) are recognised as Bool, Float and Int, instead of falling back to Int.
  • Record the running simulation as an animated USD file (.usdz) from the USD menu, live or for a set duration in deterministic mode, at 24, 30 or 60 fps with Blender compatible visibility (Commercial).
  • PLC editor: DES-suitability check — lines that never settle in event-driven DES are marked (DES:), affected programs show “not DES-ready”, and experiment batches refuse them.
  • Ray-traced render mode (Commercial, Beta): with the WebGPU backend, the render-mode menu offers Ray traced for interactive lighting with bounced light, reflections, transparency and soft shadows that refines while the view is still.
  • Projects dashboard: select several documents at once; cards show the document’s open mode, and the detail pane shows a preview card.
  • DES experiments (Commercial): blocked runs are marked in the experiment matrix, with the blockage findings of each run.
  • The USD menu in the left activity bar groups USD files (export, import, apply realvirtual data), animation recording and Isaac Sim live sync, with a short description for each entry. Export modes explain what they write and why a mode is unavailable; the export dialog counts placements without geometry.
  • Animated USD export and Isaac Sim live sync handle baked parts with millions of vertices by writing oversized parts in smaller pieces.
  • A library document edited with Edit in library loads its parts from that library everywhere: reloads, test runs, descending into a part and the hierarchy’s open link no longer pick up a document of the open project that shares its name. A part of a library that is still loading shows as loading and appears once the library is ready.
  • Old placements that name a project document by its path keep working after the document is renamed, and are saved by the document’s id from now on. Files saved now need realvirtual WEB 6.6 or newer to open their library parts; older viewers show them as missing.
  • Copy into project keeps the copy’s parts and its thumbnail; saving in Edit in library refreshes the library card’s thumbnail.
  • Orphaned signal bindings are no longer moved to another node by name; rebind them manually.
  • DES: LogicSteps run on simulation events instead of the render frame (a delay ends exactly at its time, waits react to the signal change), so a model with LogicSteps runs the same in every DES speed mode, can run experiment batches and can be saved and restored as a snapshot. Sequences that cannot run on events (a repeating sequence without any waiting step) are listed in Problems.
  • DES: grippers and zones are part of the snapshot, and a blocking GripPick/GripPlace step no longer prevents saving one. A gripper or zone that holds a part still refuses the snapshot with its address. A pick, place or source-generate signal that pulses within one DES time step is listed in Problems (des-zero-time-pulse): grippers and classic sources do not run in DES mode yet.
  • DES: the virtual PLC runs event-driven — a program scans when a signal it reads changes, when one of its timers (TON/TOF/TP) runs out or right after its own change, instead of once per render frame. A model with ST programs runs the same in every DES speed mode and can run experiment batches; only programs that are not DES-ready are refused. A program that never settles is stopped with an error and listed in Problems (des-settle-overflow).
  • DES: a model with ST programs can be saved and restored as a snapshot. Program variables, function block states and running timers are part of it, so the run continues exactly as without the cut. While a program is still being deployed, saving and loading wait for it or are refused (des-snapshot-plc-pending).
  • Collision detection works on the same structure as picking and loads only when a model uses it; collision and unsupported-part messages show in every mode, and OK on an unsupported-part message removes the part.
  • The documents button and the AAS mode appear only in the operating views.
  • DES experiments: a live run on the older random-number version kept no checkpoints when the project saved its experiment metadata first; the checkpoints are now stored again.
  • Animated USD export and Isaac Sim live sync stop with a clear message showing the estimated size and browser limit when the file would be too large.
  • DES: RobotHandling counted each output twice; throughput and KPIs of models with RobotHandling were doubled. Experiment results recorded before this fix are not comparable.
  • A signal binding whose stored target no longer exists stays empty and is listed in Problems instead of silently binding to a signal with the same name.
  • FMU models: a drive or LogicStep linked to an FMU signal (for example the ball height of the FMU demo) moves again; the link was reported as “Reference not found” and stayed empty.
  • DES: after an experiment batch the next run starts with your own end time and warm-up again, not with those of the last experiment run, also after a reset.
  • DES: end time, warm-up and seed set right after loading or resetting a scene (des.setEnd, des.seed.set, clock window) wait for the load instead of being refused.
  • DES experiments (Commercial): changing the end time or warm-up of the live simulation no longer marks experiment results as “stale: base changed”; existing results stay valid.
  • DES experiments (Commercial): an open live run (for example one with autosave checkpoints) no longer shows its column as “stale: failed”.
  • Resetting the simulation now also resets the internal run state of drive behaviors (for example destination, start and speed commands of Drive_DestinationMotor, Drive_Speed and Drive_ContinousDestination), so a reset no longer keeps a previous target or command.
  • A logic sequence that jumps or loops without any waiting step no longer freezes the viewer; it is stopped after 10,000 instant steps and reported in Problems (logic-instant-loop).
  • DES: setting the end time, warm-up or seed during a run (des.setEnd, clock window) no longer stops checkpoint autosave and snapshots with “model changed since run start”.
  • DES checkpoints (Commercial): a Fast Forward over several autosave intervals keeps a checkpoint at every interval (up to keep) instead of only the first one, and the checkpoints are listed under the live run, also when an earlier run used the same seed.
  • Saving or exporting right after unbinding a signal no longer writes the old binding into the file.
  • Measuring, annotations and dragging in the planner pick the same part that hover highlights.
  • STEP import: the minimal and ultra-low quality presets keep large circles round.
  • SEW MOVI-C (UDP): CONNECT offers it in the interface list (UDP with the SEW defaults), and every UDP card imports a SEW symbol table in the browser; a re-import replaces the signals and keeps the connection settings.
  • DES experiment manager (Commercial): plan, run and compare experiment matrices in their own window; the public demo stays available for evaluation and non-commercial use.
  • DES commands for AI/MCP: create, duplicate, rename and delete experiment columns, set experiment values, read and set the DES seed, and live checkpoints (experiment and checkpoint commands are part of the Commercial experiment manager).
  • Signal Connector component: connects signals with conversion (copy, int/bool, bit from/to word, scale, invert) and checks fan-in, cycles, width and direction. It loads on demand, so models without it do not pay for it.
  • Stereo 3D (Commercial, Beta): side-by-side stereo rendering.
  • 3D display walls (Commercial, Beta): off-axis viewports with head tracking, set up and edited in Settings > Stereo 3D, with projector and “2 people stereo” templates.
  • Flystick navigation (Commercial, Beta): the Flystick drives the existing viewer functions, including ray clicks and dragging parts.
  • SpaceMouse navigation via WebHID, with its own settings tab.
  • Libraries as projects: the realvirtual library and your own libraries are projects; edit a library document in place or copy it into your project, attach libraries by id, and repair an unavailable library from the Problems panel.
  • Drop detection reports parts that fall off while being carried (switchable in Settings), and conveyors set supported parts down on horizontal surfaces; the vertical reach is set per transport surface.
  • Public demo terms: evaluation and non-commercial use.
  • Layout Planner and Guided maintenance are stable; the Beta label is gone.
  • DES: stability and memory fixes — a run after Reset starts like the first run, the experiment window no longer re-renders on every run or poll, and invalid commands fail clearly.
  • Virtual PLC (Structured Text): IEC operator precedence, EXIT/RETURN, => output parameters, bitwise logic and shifts, initial values, VAR CONSTANT and RV_FirstScan; the supported language scope is documented.
  • SolidCraft live link: AI control of SolidCraft is a setting (off by default), moved designs are confirmed before they are applied, and reconnects after save/reopen are robust.
  • Settings keep one ordered tab list and reopen on the last tab.
  • Smaller start bundle: drop detection no longer pulls in the full component schema.
  • Documentation updated for the new features.
  • Switching from continuous simulation to DES resets progress tracking, so the snapshot taken afterwards is correct.
  • 3D scene buttons react to a click on the button cap.
  • Flystick: a ray drag no longer starts a second gesture, and a ray click on a chart filters by the element that was hit.
  • Section/clipping tool releases its materials and forgets removed placements.
  • Boolean variant fields accept “true”/“false”.
  • The development build no longer fills the browser’s User Timing buffer.
  • Interface type SEW MOVI-C (UDP): a catalog preset on the UDP interface with the SEW defaults (send to 127.0.0.1:11000, receive on 0.0.0.0:11001, little-endian, 20 ms cycle) for the fixed binary telegrams of a SEW MOVI-C station. After a re-import that moves fields but keeps the telegram length, the UDP interface no longer sends old bytes at the new field positions.
  • Interface type OptiTrack NatNet (tracking): CONNECT receives rigid bodies from OptiTrack Motive over multicast or unicast UDP and publishes their positions and orientations as signals (Y up, mm). NatNet 3.1, 4.0 and 4.1 are supported; the version is detected automatically or set in the interface. If no data arrives, the poses are marked invalid. The tracking simulator also sends NatNet test data.
  • Interface type ART DTrack (tracking): CONNECT receives head and Flystick tracking from ART DTrack over UDP and publishes positions, orientations, buttons (with press counters) and the joystick as signals. The number of bodies, Flysticks and buttons is set in the interface. A simulator (tools/rv-tracking-sim) sends test data without tracking hardware.
  • The download now includes the realvirtual WEB 6.6.0 viewer with the public demo: CONNECT serves the browser HMI itself on http://localhost:5100, so a running digital twin can be opened without anything else installed.
  • SolidCraft Live Link: CONNECT finds the SolidCraft app in its standard install folders (%LOCALAPPDATA%\Programs\SolidCraft, %ProgramFiles%\SolidCraft) and connects to an instance that is already running instead of starting a second one. The port it found is kept for the whole session, and the status shows which port is used and where it came from. If no installation is found, the message lists every folder that was searched.
  • SolidCraft Live Link: unsaved designs with the same name are no longer confused with each other, and a design that was saved under a new path is recognised and offered for confirmation instead of being treated as a different model.
  • AI panel: the locally installed Claude Code or Codex CLI now runs with only the realvirtual tools (plus the SolidCraft Live Link when it is connected and allowed in the tab). Your own MCP servers, plugins and user settings of these CLIs are no longer loaded into the AI panel. Prompts are only accepted from the tab that owns the session.
  • The MCP gateway knows the new realvirtual WEB 6.6 commands (simulation seeds and checkpoints, experiment tables, signal connector, robot paths, library) and applies the matching read, edit or destructive permission to each of them.
  • NatNet unicast keeps its command subscription alive, including with a fixed bitstream version, and filters data from other server addresses. NatNet and DTrack ignore manual signals during license admission.
  • The embedded demo also loads the experiment results its manifest declares.
  • Model-Scripts run on the DES clock: in a discrete-event run they receive sink arrivals (self.sink(path).on), are carried through snapshots and continuation, and their frame hooks only update the display.
  • PalletYard demo: ShippingMonitor script and a “Late shipments” KPI.
  • Robot commands for AI/MCP: run, stop and check a robot path, move the TCP, set a target’s grip (ik.* commands), plus a “robot” help topic.
  • Asset library: Loading Gantry in Pallet Handling.
  • AI clicks can be switched off in the toolbar; the AI then acts without simulated pointer clicks.
  • Scripts of the bundled demo project run without the ?scripts switch.
  • Share shows the upload limits before you upload.
  • The public demo and the commercial development workspace ask once for consent to the terms of use.
  • The viewer keeps working when the browser blocks local storage (private windows, strict site settings).
  • Drill-in on a project-library placement in the asset editor works again, also after a page reload.
  • Model content can no longer inject prototype keys.
  • A deployed project reads its DES experiment archive only when it declares one (no more 404).
  • DES: deterministic MU ids and correct snapshots with pending MU retirements.
  • DES experiment manager: ”+ Add KPI” defines your own KPIs. A KPI can be a component property (picked like ”+ Add property”, or a name pattern summed over matching components), a value a script publishes, or a predefined component metric such as utilization, breakdown or traffic-stop share over a name pattern (mean, sum, min or max).
  • Property and script KPIs are evaluated as a counter (change over the measured time, optionally per hour) or as a state (time-weighted mean, maximum or end value). The kind is proposed from the field name and can be switched. The warm-up period is always excluded.
  • Runs recorded before a KPI existed say “needs a rerun” instead of showing a value; deltas are coloured by each KPI’s better direction.
  • Experiment columns carry a description: Base and every variant can be described via the column menu (Edit description…). The text shows under the column state and does not invalidate recorded results.
  • The asset library shows preview images.
  • PalletYard demo: descriptions for every column and three new KPIs (AGV breakdown share, AGV traffic stops, pallets out per hour).
  • Bundled with realvirtual CONNECT 1.7.0: offline licence activation for computers without internet access, and Save diagnostics… in the tray menu, which writes a ZIP for support.
  • Public and hosted pages no longer probe a local CONNECT gateway on page load, so visitors no longer see the browser’s local-network access prompt. The AI panel checks the gateway only once CONNECT is connected or when you open the panel or an AI command.
  • The ”+ Add KPI” property picker offers only numeric fields of the running simulation components and runtime counters.
  • On document cards, the Bundled chip sits at the bottom-left of the preview with the same look as the mode chip; on small cards both labels shorten instead of overflowing.
  • MCP: editor.importCad also imports FBX, USD and DXF files, through the same import path as the import dialog.
  • Run all started right after editing Stop at or Measure after now runs with the new values; before, the click could be lost and every column turned stale with “run length changed”.
  • Stop at and Measure after are locked while a batch or snapshot runs, instead of accepting an edit that was then dropped.
  • A Measure after that is not shorter than Stop at is refused with a message next to the fields, and the run buttons say why they are blocked.
  • Column descriptions, and their removal, survive a reload.
  • A difference that displays as 0.0 is no longer coloured.
  • DES experiment manager: compare model variants side by side in one table. Base and each variant are columns; property rows edit a variant’s overrides, KPI rows show the results.
  • Replications per column with mean and 95% confidence interval. The difference to Base is computed as a paired comparison when runs share their seeds, otherwise with Welch’s test; when no comparison is possible, the cell says why.
  • Time series per run: KPIs recorded over simulation time, shown as bars or over-time charts with a confidence band across replications.
  • Snapshots: save the state of a running DES model and continue it later with identical results. A snapshot remembers its variant column. AGV fleets, scripts, conveyors, turntables and chain transfers are included.
  • Reproducible random streams: every component and script draws from its own named stream, so the same seed gives the same result, also after the model is rebuilt.
  • Experiments are saved with the project in writable project folders and travel with a project export.
  • PalletYard experiment example in the demo: AGV breakdowns per vehicle, 2, 3 and 4 AGVs, and a variant without downtime.
  • MCP: experiment.* commands let AI assistants run experiments and read results, time series, rows and snapshots.
  • Floating panels resize from all edges and corners, with a visible corner grip.
  • Thumbnails are written into the project on save; the demo documents ship with preview images.
  • A library asset shows that it is loading on its first placement.
  • camera.fit frames nodes into the area that no floating window covers.
  • DES core is stable and part of the AGPL Community edition; the Beta label is gone. The experiment manager becomes a separate commercial module.
  • Run all executes every column in its own variant, restores the scene afterwards and leaves Play usable. Models with logic steps, PLC programs or IK paths are refused with a plain-text reason.
  • Archived experiment results from earlier versions are shown as “stale” once after the update; rerun a column to refresh it.
  • The inspector shows the effective variant value; number fields keep a typed value until it is confirmed.
  • The legacy planning window starts collapsed and is hidden in variant mode.
  • Faster DES snapshot capture and time-series recording.
  • A deployed PLC program is stored in the model.
  • Material assignment paints meshes with material arrays.
  • Agent Eye can be collapsed; the folded state is remembered.
  • A lamp without an On colour lights in its lens colour.
  • The hierarchy Back pill is compact and truncates long names.
  • Delivered workspaces carry NOTICE.md, CONTENT-LICENSE.md and CONTENT-MANIFEST.md next to LICENSE.
  • Resetting a variant field to Base survives a reload.
  • Run all no longer leaves a gap between columns in which Play could restart the batch.
  • A column reads current again after a successful rerun; an unsaved variant edit is restored after a reload.
  • Same seed, same result across PalletYard rebuilds; changing the yard size scales the fleet again.
  • MU colliders are sized correctly under scaled parents; explicit static colliders no longer form invisible walls around MUs.
  • A WebOperatorPanel configuration given as a raw object stays usable.
  • An editor test run keeps the user camera.
  • On document cards, the Bundled badge no longer overlaps the mode chip.
  • Running an experiment batch no longer reports spurious ‘variant conflicts with the model’ problems.
  • Signal names are reserved per document; name collisions are resolved after a rename.
  • The AI window stays running until the CLI exits.
  • realvirtual’s own web origins (web.realvirtual.io, realvirtual.io, www.realvirtual.io) are always allowed. They are built in and no longer depend on AllowedOrigins or a list saved in the tray. The AI Bridge of a hosted page still asks for a pairing once.
  • The hosted realvirtual WEB on web.realvirtual.io, including the public demo, connects to a CONNECT on the same PC again. Since 1.7.0 the gateway refused it unless its origin had been added in the tray.
  • Offline activation: on a computer without internet access CONNECT creates an activation request code; you redeem it in the customer portal on any connected computer and import the signed license file back into CONNECT.
  • Tray menu Save diagnostics… writes a ZIP with the gateway log, environment and license status that you can send to support.
  • AI prompt for realvirtual WEB: CONNECT runs the locally installed Claude Code or Codex CLI for the AI panel. It is off until you enable it in the tray.
  • Configuration changes reach every open realvirtual WEB tab immediately.
  • MCP tools for the gateway configuration: interface_signal_list and bridge_list read the signals of an interface and the bridges (mirror rules with id, mappings, warnings) together with the configuration revision; interface_signals_apply (signal ops of one interface) and bridges_apply (mirror/mapping ops) change them in one atomic batch of up to 500 operations, through the same core and validation as POST /config/ops. The apply tools need MCP write access; a stale expectedRevision is answered with revision-conflict and the current revision.
  • A configuration change restarts only the interfaces it concerns: the changed interface, an interface whose write gate was switched, and MQTT/SHM sinks whose mirror rules or mirror sources changed. Every other PLC, robot or MQTT connection stays up — before, every change reconnected every interface. Switching the write gate of a running FMU takes effect live (the simulation keeps running; current input values are sent when the gate opens). Mapping changes, FMU live-only overrides and the tray switches (MCP server, MCP write access, remote dev access) and the first-run flag restart nothing. A worker waiting for free signal capacity is admitted as soon as a change frees it.
  • POST /config/ops accepts UTF-8 JSON only: a Content-Type charset other than UTF-8 is answered with 415 and {"code":"unsupported-charset"}; without a charset UTF-8 is assumed.
  • POST /config/interfaces with an id that is already configured now answers 409 with {"code":"interface-exists"} and changes nothing. Before, it added a second interface with the same id. Update an existing interface with PUT /config/interfaces/{id}.
  • Binding discovered signals (POST /discover/{id}/bind) is refused with 422 (discovery-address-ambiguous / discovery-address-missing) when the last discovery result matches a binding several times with different addresses, or only a signal without an address. Manual addresses that the discovery does not know still bind as before.
  • Every API route now checks the browser origin and the host name, and CORS no longer answers with a wildcard. Allowed origins are edited in the tray.
  • Signal discovery reports a symbol key, the protocol address and the direction for every interface type; OPC UA discovery reads the real data type and access level.
  • Mirror rules carry stable ids, and duplicate mirror rules or mappings are reported.
  • /health tells whether the AI prompt is switched off in the tray or disabled by configuration.
  • SimReady thumbnails are cached by the browser, so the asset panel opens faster.
  • Saving the configuration no longer fails now and then while an antivirus scanner or the search indexer briefly holds the file.
  • An interface saved through the API with missing signal fields (for example no address) no longer breaks the signal list in realvirtual WEB; missing fields are stored as empty values.
  • Procedural drive sounds: a Sound component makes a drive audible as an electric motor, pneumatic cylinder or hydraulic axis, synthesised in the browser without audio files. A speaker button with a volume slider switches it on.
  • The password page of encrypted links shows a “Decrypting model file…” step and the heading “realvirtual Digital Twin”.
  • A central statistics hub collects DES results, path traffic, planning key figures and component statistics in one window.
  • Variant management: create, rename and switch model variants from the toolbar, see the differing fields per part, reset a field to the base, and save variants with the document.
  • Blockage diagnostics for material flow and AGV fleets: deadlock and stall probes, wait edges and a cause chain in the Problems panel, and “Save diagnostics” for a browser log package.
  • AI panel: run Claude Code or Codex from the AI entry with the current selection and screenshots, and keep several sessions.
  • Open the asset behind a placed reference in the same tab with Back and breadcrumb, or in a new tab.
  • New material-flow components with Unity parity: guided arc and line conveyors, MU variant switching on sensor entry, MU pushers, source destinations and direct gripping on sensor entry.
  • CONNECT: offline licence activation, signal configuration written to CONNECT with addresses filled from the controller, and address table import.
  • Robot paths export as ABB or SEW programs.
  • Simulated KPI chips open a trend window of their source.
  • DES: seeded randomness for takt sources and downtimes, a finished run continues with one click, and runs are reproducible under load.
  • Raycast sensors behave like Unity: they hit colliders only and report entries per collider.
  • Faster start: the CONNECT panel, path network editing and the planner load on demand.
  • The editor keeps placed references baked and keeps instance overrides of placed content on save.
  • Toolbar tools are grouped, with flyouts for related tools.
  • The user interface is English throughout.
  • The light barriers of the standard demo detect their MUs again.
  • A signal badge no longer blanks the HMI.
  • Picking stays responsive when a background worker fails; the work finishes inline.
  • AI assistants work through a compact command interface: web_commands lists the viewer’s commands, web_execute and web_batch run them.
  • MCP macros: an assistant records its model changes with a reason per step, the macro is saved inside the GLB, and any later session can replay it with a report per line.
  • Geometry checks for assistants: mesh-exact gap and contact between two parts, also with drives moved to given positions, usable as macro assertions.
  • A part library reads stroke and moving sub-parts of common pneumatic and electric drives from their type code.
  • New editor commands: clone a subtree, define a material, reorder children.
  • NVIDIA SimReady assets are available as a source in the realvirtual WEB Library: search, preview and import them like any other library part, with attribution kept.
  • SolidCraft live link: connect to SolidCraft from the activity bar and model CAD next to the viewer. Bodies keep stable identities across updates, joints become drives, and settings you changed in WEB survive the next CAD update.
  • Guided maintenance: author step-by-step procedures in the asset editor, and the machine moves along with each step (drives, transforms, signals, transparency, spray effects, saved camera views). The standard demo includes a guided coolant nozzle cleaning.
  • Parametric part families: define a part once with parameters (stretch, bend, duplicate, nested families) and set the parameters per placement in the inspector.
  • Path network authoring for AGV layouts: draw path blocks and junctions, drag them from the catalog, live validation, and structural edits (sweep, append, split, remove).
  • AGVs can drive in reverse, and congestion trace bands show where traffic piles up over time.
  • USD export with all realvirtual settings preserved, USD import that reads them back, and a one-way USD live link to NVIDIA Isaac Sim / Kit including a downloadable Kit extension.
  • DXF import for 2D floor plans as locked layout placements.
  • Asset editor statistics: heaviest parts, a per-mesh heatmap and a mesh simplification core that reduces triangle counts without moving contact surfaces.
  • Robot tools for AI assistants: rig a library robot in one call and author robot paths by pose or by joint angles.
  • Operator panels gain analog elements, a keyboard legend, an optional compact density, and a window that fits its content.
  • The public demo opens with a welcome window, and a hosted project can name its start document and mode in its project.json.
  • References in a saved model point at the part itself, not at its name or place in the tree: renaming, moving or re-importing a part no longer breaks drives, signals, kinematics or settings that use it.
  • Settings changed inside a placed machine are kept at any nesting depth, and the outer file’s value wins.
  • Moving a single part inside a placed machine is no longer saved; move the whole placement, or move the part in its asset. Older files that moved parts this way open with a notice, and the parts sit where their asset puts them.
  • GLBs saved by realvirtual WEB can no longer be imported into Unity. Unity exports keep opening in realvirtual WEB as before.
  • Faster start: the asset editor, DES and other features load only when you first need them, with a visible retry if a part fails to load.
  • AI control is a switch of its own and no longer tied to the CONNECT channel; the HMI shows both separately.
  • JT import reads JT 9.5 and JT 8.x files.
  • Renaming or moving a part in the asset editor rewrites every reference to it, and a reference audit lists broken links in the Problems panel.
  • The editor saves the names you typed, refuses duplicate names among siblings, and warns before a save would lose a reference.
  • Planner, DES material flow and path network share one connection system, so a line connected in one place is connected everywhere.
  • DES hands material over at its real set-down pose instead of jumping onto the next belt.
  • The asset editor has a transform-tool toggle (Move, shortcut T) and a cleaner selection highlight.
  • The library catalog search covers all library sources.
  • The Problems panel stays closed after you close it until a new or changed entry appears.
  • Lower memory use and quicker loading of large models; the Fast preset renders lighter.
  • Robot TCP and IK solving work correctly on baked models and under scaling; IK failures are reported instead of being silent.
  • Sensor collision boxes and mechanism link masses survive model baking, so sensors and forces work on baked models.
  • Spawned MUs keep the template’s size under a scaled parent.
  • Undo and redo through the trash keep the restored part’s components.
  • A new document asks for its name first; double-clicking a project card opens it reliably.
  • Shadows come back after switching render modes on WebGPU.
  • A conveyor in DES no longer drops a waiting MU when it starts.
  • SolidCraft parts are sized correctly in the planner, and connecting to SolidCraft works from a page served by CONNECT.
  • The USD live link no longer stops on textures it cannot export.
  • Hosted deployments always ship their feature list and no longer probe localhost on page load.
  • SolidCraft live sync: CONNECT starts SolidCraft when needed and keeps the 3D model in step with the CAD design, including pattern and multi-body features and stable body IDs across edits.
  • SimReady import: browse NVIDIA SimReady assets and convert OpenUSD packages to GLB directly in CONNECT, with attribution kept.
  • STEP, JT and USD converters are now built into the single CONNECT .exe; no separate download. JT 8.x and 9.5 files are now read in addition to JT 10.
  • AI control is a separate switch from the viewer connection: the CONNECT channel stays connected while AI tools appear only after you enable AI control.
  • MCP: long-running viewer calls report progress, and hidden helper tools no longer clutter the tool list.
  • JT conversion no longer needs the Visual C++ runtime on the target PC.
  • Customer source deliveries no longer stop at their own secret check.
  • The robot loading screen appears only while the viewer starts; switching scenes stays in the HMI.
  • Ambient occlusion on Max Quality is sharp, and the Fast preset renders without it.
  • WebGPU rendering is complete: no more grey screen, and picking works.
  • A part held by a gripper no longer lets the parts behind it drive into it on a conveyor.
  • The Problems window remembers when you closed it for a model.
  • Gizmos draw underneath the HMI panels.
  • A new loading screen shows a robot cell whose cycle follows the real loading progress.
  • PLC programs show a read-only preview of their Structured Text in the Property Inspector; a click opens the program in the PLC editor.
  • The viewer starts with the proven startup sequence of 6.3 again; the faster startup that shipped with 6.4.0 is withdrawn.
  • Virtual PLC (commercial): several Structured Text programs per scene, LogicStep sequences convert to ST and can be taken over by a program, an online view with live values and active branches, and the RV_SimulationMode system variable.
  • Laser Welding Assembly Station demo, controlled entirely by the virtual PLC.
  • Record video (commercial): raster download, still images, path-traced cinematic frames with look presets and motion blur, optionally with the HMI in the recording; deterministic frame-by-frame recording from the command line and over MCP.
  • Render modes Unlit / Shaded / Toon (Wireframe in the editor), Max-Quality and Fast presets, and a frame rate limit (Off / 30 / 60).
  • WebLabel: text in the 3D scene with hover, select and pin; WebError marks in the overlay.
  • WebOperatorPanel: an operator panel stored as JSON in the GLB, with a JSON editor.
  • Signals: a “Used by” cross-reference list, signal inspector and PLC binding checked against the gateway’s address rules, a model/gateway reconcile report, model signals created from a CONNECT interface, and safe signal rename across model, CONNECT and ST code.
  • PLC auto-map from model signals to S7 / PLCSIM interface signals with a match report.
  • CONNECT edit forms for eleven more interface types, B&R PVI included.
  • Hierarchy filter by component category.
  • AASX files linked from the project folder.
  • Encrypted share links for GLB files, and hosted project links with a password gate and encrypted models.
  • AGVs: selectable vehicles with DES statistics and distance control (moving block).
  • Commissioning: move and remove workpiece carriers; loads seat in and are placed on carriers.
  • Quick Edit: Physics and BoxCollider authoring, and a Groups section under Kinematics with hover preview, eye/isolate, rename, dissolve and Add Group (also as MCP tools).
  • Editor: wireframe view, lossless GLB weld on import, one-step mesh separate, selection stats.
  • Drive_Cylinder valve modes (single- and double-acting).
  • H hides and shows the HMI overlay.
  • Third-party license notices in every WEB and CONNECT build.
  • The view controls at the bottom right are one compact strip.
  • STEP imports convert on CONNECT by default, with full assembly colours.
  • PLC inputs start with the model’s value instead of the type default.
  • Writing to a live PLC asks for permission first and shows when no data arrives.
  • Hosted pages connect to a local CONNECT and name the cause when that fails.
  • Quick Edit: Add Kinematic and Add Group only set the Auto Assign target; the toggle alone switches the mode on (Escape turns it off).
  • Simulation and commissioning share one engine contract: cylinder feedback on start, NC emergency stop, edge waits and a defined I/O state after reset.
  • The HMI no longer crashes on a mode switch, and sensor beams no longer multiply.
  • Viewer writes reach signals that CONNECT adds while connected.
  • F framing ignores hidden parts.
  • AGVs hide the path line they drive over; the scanner field no longer counts as vehicle body.
  • DES animations repaint without user input.
  • Hosted deploys never publish CAD source files.
  • A document draft never shadows a newer document file.
  • Open dropdown menus stack above the HMI tiles.
  • Signals can be renamed atomically in the gateway: the store, the interface configuration and the viewer stay in step, and the realvirtual WEB rename dialog uses it.
  • The signal schema reports an address rule per container and the MQTT topic mode, so the viewer checks PLC addresses against what the interface really accepts.
  • AI Bridge from the hosted realvirtual WEB. A realvirtual WEB page that CONNECT did not serve — the demo on web.realvirtual.io or your own https site — can now connect its AI Bridge to the CONNECT on your computer. The first time, CONNECT asks in a tray window whether that page may control the 3D viewer for your AI assistant; one click on Allow and it connects, without editing any configuration and without a restart. Deny is remembered as well. Both lists are under Details ▸ MCP server ▸ AI Bridge origins, where an entry can be removed again — removing a permission disconnects that page at once. Running PLC and MQTT connections are not interrupted. CONNECT without a tray (Linux, ctrlX) does not ask; there the page address still goes into AllowedOrigins. Bridge:PairingEnabled: false switches the feature off.
  • Robot interfaces: KUKA, Universal Robots, igus, RoboDK and Wandelbots NOVA. Six new interface types bring robot simulations and controllers into CONNECT without Unity in the loop: Kuka (KUKA OfficeLite through the Y200 TCP server: $IN/$OUT bits and joints), KukaRsi (KUKA iiQKA VRC or controller over RSI Ethernet, every packet answered at once with the IPOC echoed), UniversalRobots (RTDE: joints, digital outputs and robot state; digital inputs via URScript), IgusRebel (igus robot control via CRI: joints, outputs, global signals, joint and cartesian moves), RoboDk (joints, station parameters, program start / stop / loop of a running RoboDK station) and WandelbotsNova (joints, controller IOs, Wandelscript start / stop / loop). Joint positions appear as <id>.axis1… automatically. Moves and program starts react to a rising edge only, so a trigger that stays true across a reconnect starts exactly one move, never a second one; feedback comes back as busy / done / error. CONNECT never starts RoboDK by itself.
  • Controller and generic interfaces: Mitsubishi, UDP, WebSocket Realtime and WINMOD. Mitsubishi reads and writes bit and word devices of a MELSEC PLC over MC protocol 3E with optimized batch reads and GX Works3 CSV import. Udp exchanges fixed binary telegrams with a PLC, SCADA system or your own tool (<offset>:<BOOL|INT|REAL>, byte order selectable, CSV symbol table). WebSocketRealtime speaks the realvirtual WebSocket protocol v2 as server or client — to Unity, another CONNECT or the ctrlX bridge; the server listens on loopback by default and needs an API key before it accepts other machines, browser origins must be listed. WinmodY200 couples to WINMOD through its Y200 shared memory (Windows only), with WINMOD signal list import.
  • All ten new interfaces write to the controller only while Allow web to PLC is on; values blocked while it was off are not replayed when it is switched on.
  • The new interfaces in the realvirtual WEB editor. The CONNECT panel has an edit form for each of the ten new types and for the new settings listed under Improved. WINMOD is offered only when the connected gateway supports it. Passwords, tokens and API keys stay hidden; leaving such a field empty keeps the stored value.
  • B&R controllers through PVI. The new interface type Pvi connects B&R controllers and ArSim over ANSL (or INA2000 for older CPUs) and reads and writes variables by name — global, task-local and module variables, structure members and array elements (gCounter, Prog1:localCnt, stData.Speed, arr[3]). Nothing has to be released in the PLC project. Browse lists the tasks and variables with their types and expands structures and arrays into single signals. Every interface reports the CPU state as <id>.cpu.state and <id>.cpu.running. Writes go to exactly the addressed member, never to a whole structure, and only while Allow web to PLC is on. Windows only; CONNECT uses the B&R PVI installation of the PC and never ships the B&R files — without a PVI runtime licence, PVI disconnects after its 2-hour trial (B&R industrial PCs need no licence). The realvirtual WEB editor has a form for the new type.
  • Denso: P<n> position variables can be read and written as x/y/z/rx/ry/rz (mm / degrees) plus the figure, and axis<N> binds a joint under your own signal name.
  • Siemens S7: TIA .sdf symbol tables can be imported for signal discovery, and the connection timeout is configurable.
  • PLCnext (RSC): certificate validation can be switched off for test setups, and the connection timeout is configurable.
  • ctrlX (tunnel): the publish interval of the bridge can be set per interface.
  • Keba: the input topic name and the connection timeout are configurable.
  • WINMOD: an optional keep-alive watchdog reports an error and reattaches when WINMOD stops updating its cycle counter.
  • FMU: String variables are exchanged as text signals; Enumeration variables work end to end.
  • PLCSIM Advanced (native): RemoteAddress connects to a PLCSIM Advanced instance on another PC.
  • Configurable timeouts for Modbus, S7, PLCnext and Keba; the EtherNet/IP timeout applies to every tag.
  • Stricter signal-name check: a manual signal named like another interface’s automatic signal (for example robot1.axis1) is now rejected when the interface is saved, instead of two interfaces writing the same signal.
  • Text signals from Browse stay text. A discovered String / Text / WSTRING variable is now bound as a text signal in the realvirtual WEB CONNECT panel instead of a number, for every interface type.
  • Third-party licence notices: every CONNECT build ships a complete list of the open-source components it contains and their licences.
  • PLC inputs start with the value from the model. A signal that CONNECT creates while a viewer is connected (new interface, PLC auto-map → Apply) is no longer written to the PLC with a default false; the viewer supplies the model value (for example E-stop released, control on, automatic mode), and the first real value wins.
  • Signals added while the viewer stays connected are picked up automatically, so values set in the viewer reach the PLC without reloading the page.
  • When the viewer writes to an interface whose Allow web to PLC is off, CONNECT now counts the blocked writes, names the affected signals and reports a per-interface read health in the status — and the gate can be switched from the viewer in one click.
  • AI assistants: several viewer tabs can stay connected; the visible or claimed tab receives the commands, the others wait in standby instead of being disconnected.
  • GET /config no longer returns credentials of profile snapshots in plain text. Passwords, tokens and API keys were redacted for the interfaces but not inside profiles[]; both are redacted now.
  • Modbus client: the connection timeout now also bounds every read and write, so an unresponsive device can no longer hold the interface indefinitely.
  • Keba: a login that times out is now shown as an error and retried with the normal reconnect delay, instead of being retried silently.
  • Modbus server answers at once and on every unit id. A PLC acting as Modbus master against CONNECT waited for the next worker tick on every request — about 30 ms per request on Windows, so a PLC task of 5 ms ran at roughly 66 ms. Requests are now answered on arrival (median about 0.2 ms), and a master’s writes reach the signals just as fast. The server also answered unit id 0 only; a master with the usual slave id 1, the recommended 255 or any other id got no answer and looked like a dead device. Every unit id is now served with the same process image.
  • Modbus relay: responses are matched to their requests by transaction id, and only one request per device is in flight.
  • Separate folder for FMUs. The new setting Fmu:StorePath keeps FMU packages and their binaries in a folder of your choice, e.g. one your company’s application-control policy (AppLocker, WDAC) allows, without moving the rest of CONNECT’s data. Also as environment variable Fmu__StorePath or --Fmu:StorePath.
  • Confirming an FMU from the public realvirtual WEB at web.realvirtual.io now works without configuration.
  • When an FMU cannot be loaded, CONNECT names the cause: blocked by a company policy, a missing dependency, or a non-64-bit binary.
  • A refused FMU confirmation names the page address and the AllowedOrigins setting that admits it.
  • Zone component: Detect, Block and Hold zones with activation, gizmo and editor handles.
  • Layout planner: every placement gets a sibling-unique name.
  • Quick Edit: filter, foldout tree and resizable list for the kinematics section.
  • Pre-placed MUs and collider-based passive loads; MUs are authorable in the asset editor.
  • web_component_schema MCP tool with spec-backed authoring rules.
  • The camera follows the AI agent’s edits while the user is idle.
  • Navigation: scale-adaptive wheel zoom, orbit and pan about the point under the cursor, touch gestures, zoom-to-cursor as an option; embed viewer navigation parity.
  • The CONNECT panel explains what CONNECT is for whenever no gateway is connected.
  • Transport ignores belts on another level for surface pick and accumulation.
  • A belt driven backward with DriveTo transports backward.
  • Navigation feel restored after the scale fixes.
  • Customer deliveries build project plugins that use the viewer core.
  • FMU co-simulation: attach an FMI 2.0 FMU to a node, run it through CONNECT after a trust confirmation, edit parameters and start values, restart it from a signal. Includes a bouncing-ball FMU demo.
  • Signal units: signals carry units and bindings convert between them.
  • Mechanisms: cartesian paths, a trajectory visualizer (path line, playback marker, waypoints) and offline drive sizing with trajectory, inertia override and SERVOsoft export.
  • Projects dashboard: search the documents of all projects, quick-open type-ahead, “Open in new tab”.
  • Documents remember and restore their last-used mode.
  • Seven more drive behaviours; every drive behaviour can be added in the editor.
  • Mesh section in the property inspector with baked-geometry details.
  • Nested references: referenced assets may contain references of their own.
  • Delta robot kinematics model in the demo project; descriptions for all demo and library models.
  • Build time shown in the version line.
  • Property inspector: one value column, a ⋮ menu for component actions (Replace, Remove), Jog − | Stop | Jog + as one control, collapsible package details, English texts throughout.
  • Number fields accept comma or dot as decimal separator.
  • Buttons, menus, shortcuts and AI tools share one command system with consistent enabled state and reasons.
  • Faster, more precise picking and hover on large models; groups no longer cost draw calls and can still be hidden and isolated.
  • Asset cache verifies file versions and never keeps a missing file.
  • Better performance for large layouts with many parts.
  • Typing “9,81” in a number field no longer stores 9.
  • FMU section header follows the FMU state.
  • Viewer mode shows Play, Pause, Reset and speed again.
  • Paths honour the global speed override.
  • Follow-position drives keep rendering while they move.
  • Snap picker opens only on a click near a marker, not on a drag.
  • Reset restarts logic steps.
  • Picking imported CAD in the editor works again.
  • A failed model preparation is shown as a load error.
  • Project thumbnails refresh when a document changes.
  • Siemens PLCSIM Advanced, natively. A new interface type PlcSimAdvanced talks to a running PLCSIM Advanced instance through the official Siemens simulation API in-process — no coupler process, no shared memory, no PUT/GET. It attaches to a registered instance by name, browses its tags symbolically, exchanges them as one batch read plus one batch write per cycle, and rebuilds itself after a TIA software download. Unlike the existing S7comm route to the same instance it needs no absolute DB addresses, no non-optimized blocks and no virtual Ethernet adapter — Softbus works. Windows only; the Siemens API is never shipped with CONNECT, it is loaded from the customer’s own PLCSIM Advanced installation. Without that installation the interface is parked with a readable reason in GET /status instead of retrying forever. See doc-connect-interfaces.md § PLCSIM Advanced worker (native API).
  • FMU co-simulation. CONNECT runs FMI 2.0 co-simulation FMUs that realvirtual WEB uploads, in a separate worker process: a trust confirmation per package, a lease per connected viewer, start-value overrides, restart in place, and simulation time that follows wall-clock time with a bounded catch-up.
  • OPC-UA client timeout is applied in seconds as configured; it was read as milliseconds.
  • The update check verifies the signature of a downloaded update reliably.
  • The startup port check no longer reports a wrong location for an already running gateway.
  • An FMU package can be uploaded again after it was deleted while in use.
  • PLCSIM Advanced: a large project no longer fails to browse. The worker asked the instance for every data block on every connect; PLCSIM Advanced caps its tag list at 500 000 entries (array and struct elements included), so a large safety project answered -43 NotEnoughMemory and the interface never came up. Without a Data Block Filter CONNECT now requests the process image and the markers only, plus exactly the data blocks the configured signal addresses name ("Block".Member); a browse lists data block tags only for the blocks named in the filter. If the list still overruns the limit, CONNECT retries that browse once with HMI-visible tags only and reports it as tagListFallback in GET /status (next to tagListDetails and the dataBlockFilter actually used) — the configured setting is never overwritten. Tag counts per area and per requested data block are logged, including a warning for a block that returns nothing. See doc-connect-interfaces.md § Behaviour worth knowing.
  • bake() is the only render and pick pipeline: BatchedMesh arenas, face-range pick tables and proxy highlights are gone
  • One placement primitive in the viewer core; planner placements are BakedAsset instances with chunk picking and chunk-outline highlight
  • Scene-ready contract: placements-materialized event and whenSceneReady(), reopened layouts re-instantiate their placed references
  • Per-pass frame stats, shared sensor visualisation geometry
  • Faster and automatic /dev deploys (build cache, parallel upload, watcher)
  • Projects: Add and Locate open the folder instead of suppressing themselves
  • TransportStopper collider and LogicStep WaitForStopped, wired through the LogicStep builder
  • Recents as a pinnable flyout off the Projects folder
  • Agent eye narrowed to three channels, its monitor panel reworked into a shared activity row, with the captured images in an HMI filmstrip
  • Editor export fixes: driven nodes export from their home pose, and source template materials plus glTF provenance survive an in-place test export
  • Energy chain survives sparse CAD tessellation
  • Test suite green end to end: node 1547, browser 14623, 0 failures
  • A delivered workspace gets a Start-menu entry for THAT workspace. A gateway started with --project-root no longer offers the portable install (copy into the profile, link without a project root), which produced a project-less gateway drifting from the workspace’s pinned CONNECT version. The shortcut now points at tools/connect/realvirtual-Connect.exe with --project-root "<workspace>", is named after the workspace folder inside the single realvirtual group, and the machine-install upgrade question is not asked at all.
  • web_eye returns all its channels. A multi-channel capture (beauty, idmask, depth, normals, edges from one camera pose) is forwarded as one image block per channel, in declared order, so the sidecar’s pixel coordinates apply to every channel of the same result.
  • The SEW MOVI-C catalog preset is described as a signal interface, not a drive interface.
  • OPC UA client: missing System.IO using.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

  • SEW MOVI-C interface (MQTT Json topic mode). One flat JSON object per topic carries the whole process image; the signal name is the JSON key, no addresses. Matches what a SEW MOVI-C / Codesys station publishes and the SEWSimInterface of realvirtual for Unity, so an existing SEW simulation moves to the browser unchanged. Receive topic (PLC outputs) and publish topic (PLC inputs, cyclic, default 100 ms) are created together from a SEW symbol table import. See doc-connect.md § MQTT Json topic mode (SEW).
  • Config updates keep omitted credentials and their provenance instead of dropping them.
  • Float signal values no longer overflow on the MQTT/WebSocket boundary.
  • stage-public follows the project folder model; -Public bundles no demo content.

No release notes were recorded for this version.

  • Chain component: the Unity Chain is now available in the web runtime — chain links follow a spline path and are moved by a Drive, with GLB round-trip verified against real Unity exports (including a vertical-flip parity fix in glTF space).
  • Project manifests: every project now ships a real project.json; the glob-based and synthetic manifest fallbacks are removed, and the former “published:” identity space is folded into the manifest’s documents[] list. Old ?scene= links hop to the right workspace document.
  • README: new “Community Edition vs. Commercial” section, and the public demo’s free-tier evaluation limits are stated explicitly.
  • GLB fidelity: deduplicated nodes keep their raw glTF name, and loading a model in the authoring editor never mutates the GLB hierarchy anymore.
  • Layout Planner: layouts adopted from a GLB now behave exactly like natively planned scenes — the store survives a reload, snap points register, and placements render per object. The planner demo also works on static deployments.
  • Embed bundle: React and @mui are kept out of the embed build, shrinking the bundle for iframe/embed use.
  • Dashboard: the Libraries tree no longer collapses to zero width.
  • Staging: the public demo staging keeps the authored demo manifest instead of overwriting it with a generated delivery manifest.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

  • Live binding of the CONNECT configuration to the open document.
  • Loopback-only POST /project/reveal with connectRef verification.
  • Project-local configuration by reference; agents and RAG sources follow the manifest.
  • Download-only self-update, one-click remote HMI link for LAN second devices.
  • Configurable interface allow-list for trimmed deliveries.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

No release notes were recorded for this version.

  • Lazy-panel tests: the resource timeline is their only witness, and it is a fixed-size buffer (250 entries by default). This file’s module graph had grown to fill it, so the lazy chunk’s entry — recorded last, at the one moment that mattered — was dropped on arrival. The panels opened and the chunks loaded exactly as specified; the tests then spent their full 15 s budget waiting for evidence the browser had already discarded, and reported it as a timeout. Raised the buffer instead of the timeout: nothing was ever slow.
  • Private Node suites: the browser config excludes tests/**/*.node.test.ts but the include glob also reaches into the private sibling, where the same convention went unexcluded — so 11 Node suites were dragged into Chromium and died on the first node:crypto import. They run, and pass, under npm run test:node.
  • Regenerated tests/private-dependent-tests.json (+ the tsconfig exclude block): the two FBX tests restored earlier were never added, leaving the community-parity guard red.
  • Autosave data-loss fix (undefined topic in signal mappings) + visible autosave errors
  • Inspector bind row for PLC signal nodes (aliased-selection fix)
  • Signal chips use full width; hover cards on 3D link badges
  • Shiftless chip drag (mouse threshold, touch long-press)
  • Drag magnet occlusion check
  • Demo scene: machine/robot signals moved onto their machines; 40 signals commented

No release notes were recorded for this version.