VSIKnowledge

Getting Started

Install, environment and licence on this machine

Everything below was exercised on MARTINI-GAMING. It is what a new person needs to know before the first vsiBuild.

Where VSI is

Innexis VSI 2026.2 (build 11 June 2026) is installed at D:\InnexisVSI\innexis_home\vsi_2026.2. The vendor manuals are in its docs folder as PDFs (see reference/vendor-manuals-map). The bundled toolchain is mingw64 11.2.0 under common\mingw64, and the bundled SystemC is 2.3.4. Python components are compiled against the system CPython 3.13, not the bundled 2.7, so setuptools must be installed there.

Environment, every new shell

Source the environment script from PowerShell, then put the mingw64 bin folder on PATH:

. D:\InnexisVSI\innexis_home\vsi_2026.2\env_vsi.ps1
$env:PATH = "D:\InnexisVSI\innexis_home\vsi_2026.2\common\mingw64\mingw64-11.2.0\bin;" + $env:PATH

The script prints the values it set. The two that matter are INNEXIS_VSI_HOME and SALT_LICENSE_SERVER, which must read 29000@MARTINI-GAMING. Those come from env_vsi.win.txt in the install folder; the shipped file held placeholders and was edited on 2026-08-20 (the original is kept as env_vsi.win.txt.shipped-original).

Licence: what VSI reads and what it needs

VSI licenses through SALT, Siemens' newer licensing client, against the Siemens License Server on this machine (port 29000, vendor daemon saltd). The SALT client reads only increments issued for the saltd vendor daemon in the dual-signed AUTH form. Increments issued for the older mgcld daemon are invisible to it even though other Siemens products on the same server use them happily. That single fact cost three days in September 2026.

Features and their status on this server:

feature needed by served by saltd since
vsibuild vsiBuild 2026-09-05
velpave360app, s2sSystemBus, InxIVN, inxaevsiinteg, inxvirtplatform build and runtime 2026-09-07 (to 30 December 2026)
VeloceStratoOS the fabric server at simulation start 2026-09-08 (to 2031)

Check what the server serves and which daemon serves it:

"C:\Program Files\Siemens\Install\bin\LMUTIL.EXE" lmstat -c 29000@MARTINI-GAMING -i

A feature listed with vendor mgcld only is not usable by VSI. The server log, C:\ProgramData\Siemens\License Server\saltd.log, is the oracle: OUT means served, UNSUPPORTED ... PORT_AT_HOST_PLUS means the SALT client asked and was refused, silence means nothing asked.

Installing an additional licence file

Never run the Siemens License Server installer to add a file: it replaces saltd.lic, the whole Siemens estate. Never restart the server to fix a licence: saltd takes 10 to 12 minutes to come up and every Siemens product on the machine fails to license meanwhile.

Instead, keep only the INCREMENT FEATURE saltd ... lines of the issued file, give them this header, and save it as its own .lic in C:\ProgramData\Siemens\License Server\ActiveLicenses:

SERVER MARTINI-GAMING 3C7C3F24FA73 29000
VENDOR saltd saltd PORT=29001

Then reread:

"C:\Program Files\Siemens\Install\bin\LMUTIL.EXE" lmreread -c 29000@MARTINI-GAMING

lmreread prints a -139 timeout that is a false red; read the server log instead. Installing a vendor file with both mgcld and saltd increments in it makes saltd log CVD License file has been Tampered and refuse every increment, and a SUPERSEDE line in it can disable the working vsibuild as well. Split the file.

Two machine settings that a twin needs

  • Fabric ports. The fabric server listens on fixed TCP ports 50101 plus the component index. That block sat inside the Windows dynamic port range, so an unrelated outbound connection could hold one of them and the twin would stall at client connect with no licence request and no trace. Fixed machine-wide on 2026-09-08 with the dynamic range moved to 50200 and an administered exclusion of 50101 to 50200. Verify with netsh int ipv4 show excludedportrange protocol=tcp (the range shows an asterisk).
  • Firewall. Windows raises an approval popup for every new FabricServer binary, and every twin builds its own copy, so an unattended run hangs on the popup. The fix applied here was Set-NetFirewallProfile -All -NotifyOnListen False plus one loopback rule for TCP 50101 to 50200.

Path length for Python components

The Python gateway extension nests a build folder under the twin, and past about 260 characters the link step fails with a message naming a missing .def file rather than the path length. Generate twins that hold Python components to a short root such as D:\wfpy (the --workspace option of the generators). Twins with only C++ components are unaffected.

Source: innexis-vsi/README.md, LICENCE-REQUEST.md, memory innexis-vsi-install (EXERCISED 2026-09-05 to 2026-09-08); InnexisVsiInstallationGuide.pdf (VENDOR) · retrieved Tue Sep 08 2026 00:00:00 GMT+0000 (Coordinated Universal Time)