// the find
GavinYellow/SharpSCADA
C# SCADA
SharpSCADA is a lightweight C# SCADA/HMI framework targeting industrial automation — Modbus TCP/RTU, Siemens S7 (via libnodave), AB EtherNet/IP, OPC DA, and a WPF designer for building process screens. It's aimed at Chinese industrial shops that need a free alternative to commercial SCADA packages without the budget for Wonderware or Ignition.
The protocol coverage is genuinely useful for a free project — Modbus, S7-300/400/1200/1500, and EtherNet/IP in one package is not trivial. The WPF designer-plugin approach (VS2010-2015, drag-and-drop HMI controls, variable binding at design time) is a real working IDE integration, not just a runtime viewer. The tag/group/driver abstraction in DataService is clean enough that adding a new protocol driver means implementing one interface and dropping a DLL — the architecture isn't a mess. The HMI component library is surprisingly deep: 40+ domain-specific controls (silos, conveyors, valves, elevators) built as proper WPF custom controls, not just images.
Abandoned since January 2023 and targets .NET Framework 4.x with SQL Server Express — the .NET Core port in CoreApp/ is unfinished and clearly experimental, so you're locked into Windows and a legacy stack indefinitely. No authentication or access control worth mentioning — the README literally lists security as 'very lacking' and a future goal that never arrived; do not expose this to any network you don't fully control. OPC UA support is absent (only OPC DA, which requires a 32-bit COM interop layer on modern Windows and is effectively deprecated in new installations). Documentation is almost entirely in Chinese, the tutorial videos are on CSDN behind a paywall, and the setup process requires manually restoring a SQL Server backup and editing config files — the onboarding friction is high for anyone outside the original target audience.