Skip to content
Demo

See Glyphsix in action

No install needed to preview. Browse real CLI output from inspect, diff, and cross-validation commands across multiple vendors.

PLC Inspect

Inspect a Rockwell PLC project

Point Glyphsix at any L5X export and get a full structural summary — programs, routines, tags, UDTs, modules, and communication topology.

$ glyphsix-plc inspect WaterTreatment.L5X

Provider Rockwell Logix 5000 (Studio 5000 v33)
Controller 1756-L83E/B CompactLogix
Programs 3
Routines 18 (12 Ladder, 4 ST, 2 FBD)
Tags 892 controller-scoped, 246 program-scoped
UDTs 21 user-defined types
AOIs 6 Add-On Instructions
Modules 8 I/O modules on 2 racks

Program summary:
MainProgram 8 routines 312 tags Ladder + ST
Comms_Handler 6 routines 145 tags ST
Safety_Task 4 routines 87 tags Ladder

✓ Project parsed in 0.4s
HMI Inspect

Inspect an encrypted HMI project

Glyphsix decrypts proprietary HMI files and extracts panels, widgets, variables, alarms, and recipes — no vendor software required.

$ glyphsix-hmi inspect REACTOR7_v4.zdat

Provider Vijeo Designer 6.2 (Schneider Electric)
Encrypted Twofish-256 CBC ✓ decrypted
Panels 14 panels (3 popups)
Widgets 284 total across all panels
Variables 167 internal, 43 external
Alarms 23 alarm groups
Recipes 7 recipe definitions

Panel summary:
Main_Overview 42 widgets 12 bindings
Reactor_Control 38 widgets 9 bindings
Temp_Monitoring 31 widgets 15 bindings
Alarm_History 28 widgets 3 bindings
Recipe_Editor 25 widgets 8 bindings
... 9 more panels

✓ Project parsed in 1.2s
Diff

Diff two project versions

Compare any two project files from the same vendor and see exactly what changed — added routines, modified tags, updated logic — with colorized, structured output.

$ glyphsix-plc diff WaterTreatment_v2.1.L5X WaterTreatment_v2.2.L5X

Comparing versions...

Routines:
+ Added: ChemDosing_Control (new routine, ST)
~ Modified: MainRoutine (12 rungs changed)
~ Modified: Alarm_Handler (3 rungs changed)
- Removed: Debug_Routine

Tags:
+ Added: ChemDose_SP (REAL)
+ Added: ChemDose_PV (REAL)
+ Added: ChemDose_Running (BOOL)
~ Changed: FlowRate_SP type INT REAL
- Removed: Debug_Flag

I/O Modules:
+ Added: Local:4:O (1756-OF8, analog output, slot 4)

Summary: 4 routines changed, 5 tags changed, 1 module added
✓ Diff completed in 0.6s
Cross-Validate

Validate HMI against PLC

The real power: pair an HMI project with a PLC export and find phantom variables, orphaned bindings, name mismatches, and type conflicts that live in the gap between systems.

$ glyphsix validate --hmi REACTOR7_v4.zdat --plc WaterTreatment.L5X

HMI: Vijeo Designer 6.2 (Schneider Electric)
PLC: Rockwell Logix 5000 (Studio 5000 v33)
Running 12 validation rules...

✓ Panel naming conventions passed
✓ Widget bounds check passed
✓ Alarm severity mapping passed
✓ Duplicate widget IDs passed
✓ Recipe parameter types passed
✓ Navigation graph passed
✓ Localization keys passed
✓ Variable data types passed
⚠ Orphaned variables 2 found
ReactorTempSP_Old (INT) — defined in HMI, not bound to any widget
SpareInput_03 (BOOL) — defined in HMI, not bound to any widget
⚠ Cross-ref HMI ↔ PLC 3 mismatches
HMI:Tank_Level → PLC:TankLevel (name mismatch)
HMI:Pump_Status → PLC:Pump_Run (type mismatch: STRING vs BOOL)
HMI:Spare_04 — no matching PLC tag found
✗ Address overlap 1 conflict
%MW200 mapped to both Pressure_PV and FlowRate_PV

Result: 8 passed, 2 warnings, 1 error
✓ Validation completed in 2.3s
Supported formats

One tool, every vendor

Glyphsix auto-detects the project format and selects the right provider. No flags, no configuration.

PLC Providers (37+)
  • Rockwell — L5X exports + ACD archives
  • Siemens — TIA Portal SimaticML + native .ap15–.ap19
  • Schneider — Machine Expert .project + Control Expert
  • Beckhoff — TwinCAT .tsproj / .plcproj
  • B&R — Automation Studio .apj
  • Ignition — GWBK gateway backups
  • Mitsubishi — GX Works2/3 (.gx3, .gxw)
  • Omron — Sysmac .smc2 projects
  • Delta — ISPSoft .dvp projects
  • CODESYS OEMs — 50+ vendors via JSON catalog
HMI Providers (24)
  • Schneider — Vijeo Designer .zdat/.vdat
  • Siemens — WinCC (TIA Portal + Classic)
  • Beckhoff — TwinCAT HMI (TF2000)
  • Rockwell — FactoryTalk Optix + View
  • AVEVA — InTouch
  • Ignition — Perspective / Vision
  • GE — CIMPLICITY, iFIX
  • + 17 more — B&R, Delta, Mitsubishi, Omron, Phoenix Contact, Keyence, Weintek, Red Lion, Pro-face, COPA-DATA, Beijer, Fuji
Cross-Validation (6 rules)
  • Any HMI + Any PLC — vendor-agnostic
  • Phantom bindings & orphaned exports
  • Type mismatches & direction conflicts
  • Address mismatches & overlap detection
  • 3-layer matching: alias → address → fuzzy name
Ready to try it yourself?

Install Glyphsix and run your first inspect in under five minutes.

Requires Python 3.10+ · Works on Windows, macOS, Linux
glyphsix

Pre-release preview