Command-Line Interface
Serial Studio accepts command-line arguments for automation, headless operation, and benchmarking.
Pass --help to print the full list, or --version to print the version and exit.
serial-studio [options]
Options marked (Pro) are available only in commercial builds.
General
| Option |
Argument |
Description |
-v, --version |
|
Print the application version and exit. |
-r, --reset |
|
Reset all application settings. |
-f, --fullscreen |
|
Launch the dashboard in fullscreen. |
--headless |
|
Run without a GUI (headless / server mode). |
--api-server |
|
Enable the API server on startup (port 7777). |
--dump-api-schema |
file |
Write the API command registry (name, description, parameter schema per command) to a JSON file and exit. Input for SDK generators. |
-p, --project |
file |
Load the specified project file. |
--profile |
name |
Open the project under the named workspace profile instead of asking which one to show. |
-q, --quick-plot |
|
Enable quick-plot mode (auto-detect CSV data). |
-t, --fps |
Hz |
Set the visualization refresh rate. |
-n, --points |
count |
Set the number of data points per plot. |
--exit-after |
seconds |
Quit gracefully after the given number of seconds (CI runs, PGO training). |
--simd |
level |
Pin the vector kernels to auto, scalar, sse4, avx2 or neon for this run only. The value is not saved, and an unknown or unsupported level falls back to auto and says so in the application log. See the acquisition pipeline. |
Devices
| Option |
Argument |
Description |
--uart |
port |
Serial port (e.g. /dev/ttyUSB0, COM3). |
--baud |
rate |
Serial baud rate (default 9600). |
--tcp |
host:port |
Connect to a TCP server. |
--udp |
port |
Bind to a local UDP port. |
--udp-remote |
host:port |
UDP remote target. |
--udp-multicast |
|
Enable multicast mode for UDP. |
Acquisition Pipeline Benchmark
| Option |
Argument |
Description |
--benchmark-hotpath |
|
Run the in-process frame-extraction throughput benchmark and exit. |
--min-fps |
fps |
Minimum frames/sec the benchmark must sustain (default 256000). |
--benchmark-frames |
count |
Frames to push through the benchmark (default 1000000). |
--benchmark-seconds |
seconds |
Wall-clock seconds the benchmark must sustain (default 10). |
--benchmark-output |
file |
File the benchmark report is written to (default: stdout only, no file). |
--benchmark-channels |
count |
Numeric channels in the synthetic benchmark project (default 8, max 4096). |
Passing any of --min-fps, --benchmark-frames, --benchmark-seconds, or
--benchmark-channels also runs the benchmark; --benchmark-hotpath alone uses the defaults
shown above. At a width other than 8 the throughput targets are printed for reference but do
not fail the run, because they were calibrated at 8 channels; the report states the width and
which parser lane the Built-In rows took.
This is the headless form used in CI and deployment gating. For the interactive version with a
per-phase results table, run it from the GUI via About > Benchmark; see the
Benchmark Dialog. Both run the same HotpathBenchmark engine over the same
pipeline.
Operator & Export (Pro)
| Option |
Argument |
Description |
--no-toolbar |
|
Hide the main window toolbar at startup. |
--runtime |
|
Operator runtime mode: hide toolbar, quit when the operator disconnects. An unexpected device drop shows the reconfigure dialog instead of quitting. |
--deployment |
file |
Open a deployment package (.ssdeploy) in a sealed runtime session. Passing a .ssdeploy file as the first positional argument does the same. The package's runtime options replace the display and export flags above; bus flags (--uart, --tcp, ...) and --api-* still apply. Cannot be combined with --headless. See Operator Deployments. |
--shortcut-path |
path |
Path of the shortcut that launched the process. |
--csv-export |
|
Enable CSV export on startup. |
--mdf-export |
|
Enable MDF4 export on startup. |
--session-export |
|
Enable Historian recording on startup. |
--console-export |
|
Enable console log export on startup. |
--actions-panel |
|
Show the actions panel in operator runtime mode. |
--file-transmission |
|
Allow the File Transmission dialog in operator runtime mode. |
--taskbar-mode |
mode |
Operator taskbar visibility: shown, autohide, or hidden. |
--taskbar-buttons |
ids |
Comma-separated taskbar pin IDs for operator mode. |
--theme |
name |
Override the application theme by name (e.g. Default, Fluent Dark, Fluent Light, System). |
Licensing (Pro)
| Option |
Argument |
Description |
--activate |
key |
Activate a license key and exit. |
--deactivate |
|
Deactivate the current license instance and exit. |
--selftest-offline-license |
|
Run the offline-certificate verifier self-test vectors and exit. |
--validate-guards |
|
Verify that every embedded license guard passes in this binary and exit. |
Session Verification (Pro)
Both verifiers re-record an archived Historian session in a child process and print a JSON
verdict, so a deployment can gate on reproducibility without a GUI. Pair either with
--headless for offscreen operation. The same work is available from the API through
sessions.verify and sessions.regress.
| Option |
Argument |
Description |
--verify-session |
file |
Verify an archived historian database's reproducibility and exit; prints a JSON verdict. |
--verify-session-id |
id |
Session id inside the --verify-session archive (default: the latest completed session). |
--verify-keep-regen |
|
Keep the temporary regenerated database for inspection. |
--regress-session |
file |
Compare an archived session against a candidate project and exit; prints a JSON drift report. |
--regress-session-id |
id |
Session id inside the --regress-session archive (default: the latest completed session). |
--regress-project |
file |
Candidate project file for --regress-session. |
--regress-keep-regen |
|
Keep both temporary regenerated databases for inspection. |
Modbus (Pro)
| Option |
Argument |
Description |
--modbus-rtu |
port |
Connect to a Modbus RTU device. |
--modbus-tcp |
host[:port] |
Connect to a Modbus TCP server (port defaults to 502, the IANA-registered Modbus port). This differs from the GUI Modbus driver's own default of 5020 — check which surface you are configuring. |
--modbus-slave |
address |
Slave address (1-247, default 1). |
--modbus-poll |
interval |
Poll interval in ms (50-60000, default 100). |
--modbus-baud |
rate |
RTU baud rate (default 9600). |
--modbus-parity |
type |
RTU parity: none, even, odd, space, mark (default none). |
--modbus-databits |
bits |
RTU data bits: 5, 6, 7, 8 (default 8). |
--modbus-stopbits |
bits |
RTU stop bits: 1, 1.5, 2 (default 1). |
--modbus-register |
spec |
Add a register group type:start:count[:slave]; type is holding, input, coils, or discrete; start 0-65535, count 1-125; the optional slave 1-247 reads that block from another device on the same bus (repeatable). |
CAN Bus (Pro)
| Option |
Argument |
Description |
--canbus |
plugin:interface |
Connect to a CAN bus (e.g. socketcan:can0, peakcan:pcan0). |
--canbus-bitrate |
rate |
CAN bus bitrate in bps (default 500000). |
--canbus-fd |
|
Enable CAN-FD mode. |
Comments