Attention
IronPLC can only run very simple programs. The steps described are accurate but many language features are not yet supported.
IronPLC is an open-source toolchain for checking and compiling IEC 61131-3 programs. It integrates into Visual Studio Code to provide auto-completion, syntax highlighting, and real-time error checking as you type. It also includes a command-line compiler and an early-stage runtime.
IronPLC reads Structured Text, PLCopen XML (Beremiz), and TwinCAT 3 source files, so you can use it alongside your existing PLC development environment.
The long-term vision is to become a full development environment for building IEC 61131-3 based control systems on off-the-shelf embedded computers (SoftPLCs). That goal is ambitious and IronPLC is still early in that journey — but there is plenty you can do with it today. IronPLC is MIT licensed and we’d love for you to give it a try, share feedback, or contribute.
New to IEC 61131-3 or IronPLC? Start here with a step-by-step guide that builds up from nothing.
Practical guides for specific tasks — whether you are getting started, coming from Beremiz, or coming from TwinCAT.
Understand the concepts behind IEC 61131-3: the scan cycle, program organization, Structured Text, and how I/O works.
Technical reference for the compiler, editor extension, and runtime.