Download OmniSCADA Desktop
High-performance native industrial SCADA client built on Rust, Tauri 2, and Next.js.
OmniSCADA Desktop is an offline-first, native operator workstation for supervisory control and data acquisition. It ingests high-frequency Sparkplug B telemetry at sub-millisecond latencies, decodes industrial protobuf payloads locally, and provides hardware-accelerated SVG process mimics without cloud subscriptions.
Windows 10 / 11 / Server (64-bit) installer with automatic digitally-signed background updates.
Native Debian / Ubuntu / RHEL package (x86_64 / amd64) for industrial PCs and edge nodes.
Apple Silicon & Intel builds are currently under active development and QA testing.
Official Developer SDKs & Edge Bundles
Connect custom PLCs, field sensors, and microservices with native typed libraries.
OmniSCADA provides first-class developer SDKs with native Sparkplug B payload encoders, deterministic telemetry batching, and birth certificate registration. You can download all-in-one developer bundles or install client packages directly:
All-in-one archive with client SDKs (Python, Node.js, Rust, .NET) and gateway daemons for Windows.
Complete edge bundle with protocol adapter daemons, C-ABI bindings, and native Linux binaries.
Evaluation Tracks Overview
Choose between our zero-config shared broker or an isolated private micro-pod.
Shared Public Demonstration Broker
Continuous, unauthenticated industrial plant telemetry conforming to Sparkplug B v2.2. Best for immediate out-of-the-box exploration, checking widget animations, and validating tag bindings without signing up.
- Port 1883 (TCP) & WSS (Port 443
/mqtt) - No username or password required
- Simulated Water Treatment & Facility Switchgear
Dedicated Ephemeral Micro-Pod
Instant single-tenant container provisioned in seconds. Comes with dedicated TLS 1.3 encryption (MQTTS :8883), unique credentials, and full read/write permissions for bidirectional command testing (NCMD/DCMD).
- Encrypted TLS 1.3 on port 8883
- Dynamic credentials & isolated namespace
- Bidirectional control & command execution
Connecting OmniSCADA Desktop to the Sandbox
Configure your MQTT broker connection in the OmniSCADA Desktop application in 3 simple steps.
Launch OmniSCADA Desktop, navigate to Settings in the left sidebar, and select MQTT Broker.
| Field | Value for Track 1 (Public) | Action |
|---|---|---|
| Host / Address | sandbox.omniscada.com | |
| Port | 1883 | Plain TCP |
| Client ID | omniscada-evaluator | Or leave blank |
| Username | (leave blank) | Anonymous |
| Password | (leave blank) | Anonymous |
| Sparkplug B Group | OmniSCADA-Demo | |
| Use TLS/SSL | Disabled (Port 1883) | Toggle OFF |
The top status light in OmniSCADA Desktop will transition to Connected (green). The app will automatically ingest NBIRTH and DBIRTH certificates and populate the Tag Browser.
Emulated Industrial Plants & Tag Catalog
Detailed breakdown of the simulated edge nodes continuously broadcasting live metrics.
Node: WaterTreatmentPlant-01 (Process Clarifier)
Topic: spBv1.0/OmniSCADA-Demo/+/WaterTreatmentPlant-01/MainClarifier| Tag Name | Type | Units | Nominal Range | Description |
|---|---|---|---|---|
| FlowRate_GPM | Float | gal/min | 380.0 – 460.0 | Clarifier influent flow volume rate |
| InletPressure_PSI | Float | psi | 55.0 – 72.0 | Raw water main supply line pressure |
| TankLevel_Pct | Float | % | 45.0 – 85.0 | Dynamic clarifier liquid vessel volume level |
| ClarifierPump_Running | Boolean | — | true / false | Primary centrifugal pump operational state |
| EffluentTurbidity_NTU | Float | NTU | 0.1 – 1.8 | Water clarity index (ideal for ISA-18.2 alarm tests) |
| CoagulantDosing_mLm | Float | mL/min | 14.0 – 22.0 | Polymer coagulant chemical feed rate |
Nodes: EnergyMeter-01 & EnergyMeter-02
Schneider Electric PM8000 (Incomer) & Siemens PAC4200 (Motor Control Center)Voltage_A, Voltage_B, Voltage_C, Voltage_LL_Avg, Current_A, Current_B, Current_C, Current_Avg
ActivePower_Total_kW, ReactivePower_Total_kVAR, Energy_Total_kWh, Frequency_Hz, PowerFactor
THD_Voltage, THD_Current, Breaker_Status (Boolean), Temperature_Internal_C
Building SCADA Mimics & Dashboards
Construct animated industrial operator screens using drag-and-drop widgets.
- 01.Switch to Edit Mode:
Open the Dashboards tab in OmniSCADA Desktop and click the Edit Layout button in the top toolbar.
- 02.Add Industrial Process Vessels:
Drag a Cylindrical Vessel / Tank widget onto the canvas. Set the tag binding to:
OmniSCADA-Demo/WaterTreatmentPlant-01/MainClarifier/TankLevel_Pct. Set min:0and max:100. - 03.Add Pressure & Flow Gauges:
Add a Radial Pressure Gauge bound to
InletPressure_PSI(range 0–100 PSI). Enable high-alarm colored bands above 70 PSI. - 04.Add Centrifugal Pump Mimic:
Add an Industrial Mimic (Centrifugal Pump) and bind the running state to
ClarifierPump_Running. The impeller will spin smoothly when true and highlight red if tripped. - 05.Save & View Live:
Click Done Editing. Your screen now updates synchronously with sub-millisecond Sparkplug B telemetry from the sandbox.
ISA-18.2 Alarm Configuration
Test industrial alarm generation, annunciator state machines, and buzzer audio.
OmniSCADA implements the complete ANSI/ISA-18.2 Alarm Management Lifecycle. You can test alarms against the sandbox by creating a threshold rule on the simulated turbidity metric:
- 1. Open Alarms in the left sidebar and click Create Rule.
- 2. Target Tag:
WaterTreatmentPlant-01/MainClarifier/EffluentTurbidity_NTU. - 3. Condition: Value Greater Than (>) with Setpoint:
1.0 NTU. - 4. Severity: HIGH • Deadband:
0.05• Debounce:2 seconds. - 5. Save Rule. Observe the header annunciator icon pulse yellow/red when simulated turbidity spikes, triggering the alarm banner and event log.
Historian & Trend Analytics
Query high-frequency time-series with LTTB decimation.
OmniSCADA Desktop includes a built-in time-series historian powered by TimescaleDB and SQLite. In the Historian view:
- Select multiple tag pens: e.g.
FlowRate_GPMon Left Y-Axis andInletPressure_PSIon Right Y-Axis. - Toggle between Live (Rolling 15 Minutes), 24 Hours, and 30 Days.
- Notice how OmniSCADA utilizes the LTTB (Largest-Triangle-Three-Buckets) algorithm to render millions of data points instantly at 60 FPS without UI lag or memory blowup.
Dedicated Sandboxes & Bidirectional Control
Test writing setpoints, publishing NCMD/DCMD commands, and TLS 1.3 encryption.
While the Shared Public Broker (Track 1) is strictly read-only to prevent cross-tenant collisions, our Dedicated Customer Portal provides an isolated micro-pod where you have full read and write permissions:
- Go to sandbox.omniscada.com/portal.
- Enter your work email address to receive an instant 6-digit OTP.
- A private micro-pod will spin up in < 2 seconds with unique ports, credentials, and encrypted MQTTS (:8883).
- Copy your custom credentials and point OmniSCADA Desktop to your dedicated pod to test command execution.
Developer Code & Protocol Testing
Test connectivity directly using standard developer tools, Python SDK, or C#.
# 1. Subscribe to all live Sparkplug B telemetry from the Public Sandbox mosquitto_sub -h sandbox.omniscada.com -p 1883 -t "spBv1.0/OmniSCADA-Demo/#" -v # 2. Subscribe specifically to Water Treatment Plant Clarifier metrics mosquitto_sub -h sandbox.omniscada.com -p 1883 -t "spBv1.0/OmniSCADA-Demo/+/WaterTreatmentPlant-01/MainClarifier" -v
Official Documentation & FAQ
Routing between OmniSandbox quick-testing and the full OmniSCADA platform documentation.
For comprehensive architectural deep-dives, Bastion offline licensing protocols, virtual tag formula syntax, air-gapped deployment blueprints, and multi-node TimescaleDB clustering guides, visit our official documentation site:
Corporate firewall blocks outbound port 1883 (MQTT TCP). How do I connect?
If your corporate IT security policy restricts port 1883, OmniSCADA Desktop supports WebSockets (WSS) over standard HTTPS port 443. In OmniSCADA Broker settings, select Protocol: WSS, set port to 443, and set the path to /mqtt (URL: wss://sandbox.omniscada.com/mqtt).
Why do I receive an ACL authorization error when publishing to the Public Broker?
The Public Broker (Track 1) is configured as read-only for public evaluators to guarantee that simulated plant telemetry remains clean and unpolluted. If you want to test publishing commands, setpoint writes, or custom devices, request a free dedicated pod at /portal.
When will the native macOS Desktop application be released?
macOS builds (Universal binaries for Apple Silicon M-series and Intel) are undergoing final driver and security certification. You can test OmniSCADA on macOS using the Python / Node.js SDKs or run the Linux build in a virtual machine today. Check omniscada.com/#downloads for release announcements.