Skip to main content
Zeus[zjuːs] industrial host framework

Communication, protocols, polling, points, and UI binding handled by the framework.

Composable building blocks for industrial host applications.

  • Serial, TCP/UDP clients and servers, and virtual channels share the same IChannel API for simulation and field replacement
  • The host owns startup, shutdown, disposal, reconnects, and runtime channel/device changes
  • Custom framing, Modbus, Mitsubishi MC, Siemens S7, Omron FINS, Omron Host Link, and EtherNet/IP share one channel model
  • The point table supports periodic polling, alarm state, successful-sample history, and write-back by point name
  • WinForms and WPF adapters marshal updates to the UI thread and bind states, alarms, and write buttons
Supported surfacesConsoleWinFormsWPF.NET 8+
QuickStart.cs
await using var app = ZeusHost.Create(builder =>
{
    builder.AddVirtualChannel("meter");
});

var meter = app.Channels.Get("meter");
meter.DataReceived += (_, e) =>
{
    Console.WriteLine("Received: " +
        Encoding.UTF8.GetString(e.Data.Span));
};

await app.StartAsync();
await meter.WriteAsync("PING"u8.ToArray());
6channel types
7protocol families
0hardware required to simulate

Clear Modules · Ready to Use

Industrial host infrastructure split into focused modules

Each module owns one responsibility: channels move bytes, protocols interpret bytes, acquisition updates points, and UI adapters handle thread switching and binding.

Host Lifecycle

Centralized start, stop, disposal, restart, fault reconnects, and runtime channel/device changes.

Serial, TCP/UDP, and Virtual Channels

Serial ports, TCP/UDP clients and servers, and virtual channels share the same IChannel API.

Custom Framing

Handle headers, length fields, checksums, split packets, sticky packets, and response matching.

Modbus RTU / TCP

Coils, registers, mask writes, multiple-register transactions, and diagnostics without hand-built CRC or MBAP frames.

Mitsubishi MC

1E/3E/4E frames with Binary or ASCII encoding for X/Y/M bits and D/W/R/ZR word devices.

Siemens S7

S7 TCP handshakes and Read/Write Var access for DB/I/Q/M areas and common scalar types.

Omron FINS

FINS/UDP and FINS/TCP access to CIO/WR/HR/AR/DM/EM/TIM-CNT areas.

Omron Host Link

ASCII Host Link frames for CIO/LR/HR/AR/DM areas, with virtual PLC simulation.

EtherNet/IP CIP

Register Session, Read/Write Tag, and CIP attribute access for Allen-Bradley PLCs.

Point Acquisition, Alarms, and Write-Back

Name device addresses as business points, poll them on an interval, and write writable points by name.

Point History and Desktop Binding

Bind current values, errors, alarms, successful-sample history, enabled states, and write-back buttons to the UI.

JSON Project Configuration

Declare channels, devices, protocol options, point maps, polling intervals, and writable points in zeus.json.

WinForms / WPF Adapters

Marshal received data, channel state, point snapshots, and control updates safely back to the UI thread.

Communication Tracing

Capture TX/RX raw packets to memory, files, or structured logs for field diagnostics.

Focused by Design

The framework owns the infrastructure layer

Traditional host applications often open serial ports, parse bytes, update controls, and release ports inside one window class. As the project grows, transport, protocol, points, UI threading, write-back, reconnects, and field configuration get tangled.

Zeus separates those responsibilities: the host owns lifecycle, channels move bytes, protocols interpret bytes, acquisition updates points, and adapters return to the UI thread. Your code focuses on the device workflow and presentation.

Zeus is not a low-code SCADA builder and does not ship charting, authorization, recipes, or reporting. It targets the infrastructure pieces that are most often reimplemented incorrectly.

Community · QQ Group

Join the Zeus user group

QQ group Zeus, number 771421105. You can discuss installation, serial ports, Modbus, Mitsubishi MC, Siemens S7, Omron FINS, Omron Host Link, EtherNet/IP, point write-back, and UI binding. Include the Zeus version, channel type, and full exception when asking questions.

Read Community Notes
Zeus QQ group QR code, group number 771421105
Scan with mobile QQ, or search 771421105