May 7, 2026 · codesystia-portalsiemensplc-programmingindustrial-automationiec-61131-3

I have spent years inside TIA Portal. Now I am also studying alternatives — SIMATIC AX from Siemens, and CODESYS from CODESYS GmbH. This article is the first one on Codesys. Here is why, and here is what the ecosystem looks like from the outside.
Where this is coming from
The honest version, in my own words from a few days ago when I sat down and wrote out why I was about to start this:
“It is always good to have an alternative solution for design ideas and not to be stuck with only a single provider. At the same time the platforms are quite different, and it is not always easy to quickly switch between them. I am going to study these differences myself and share my studies with others.”
That is the premise. I am a TIA Portal engineer with years of customer projects behind me. TIA is my home platform and I am not changing that. But I have wanted, for a while now, to actually understand the second mainstream IEC 61131-3 ecosystem in Europe — not from a brochure, not from a forum thread, but from the inside.
So I am studying Codesys. Vanilla Codesys, downloaded directly from CODESYS GmbH — not Wago’s flavour, not Schneider’s, not Bosch Rexroth’s, but the upstream IDE that all of those vendors fork from. And I am writing my way through it as I go.
Studying, not deploying — the line matters
When I write about TIA, I am writing from inside years of customer-project experience. When I write about Codesys, I am writing as someone working through the docs, building the demo runtime, and pushing on the IDE to find out where it bends — not as someone who has commissioned a Codesys panel for a paying customer. Those are two different things and I am going to keep them separate in this series.
You will see two voices here, sometimes in the same article. “In TIA, this is how I would do it,” with the confidence of years. “In Codesys, from what I am seeing in the docs, the equivalent looks like X — I will know more once I have it running,” with the posture of a learner. Both are honest.
Who this series is for
If you have never written PLC code, this series is not your starting point. The CODESYS Academy, the Codesys YouTube channel, and several decent paid courses cover that. Start there if you are at zero.
One book worth flagging in that beginner pile: The Book of CODESYS — The ultimate guide to PLC and Industrial Controls programming with the CODESYS IDE and IEC 61131-3, by Gary L. Pratt, PE (a licensed Professional Engineer and the president of ControlSphere Engineering). It is sold through the official Codesys Store at us.store.codesys.com, which means it carries CODESYS GmbH’s own endorsement — the closest thing to a sanctioned textbook this ecosystem has. There is a Second Edition and a two-volume set. Reference site: www.BookOfCodesys.com. I bought a copy a couple of years ago, and the sections I have worked through explain the basic Codesys ground clearly — exactly what someone starting from zero needs.
This series is for the engineer who already lives inside TIA Portal, knows their way around an FB and a UDT, understands what a cyclic OB does, and is curious about the other half of the European IEC 61131-3 world. The angle is translation — what a TIA habit looks like when you carry it across, where it transfers cleanly, where it does not.
If you already write Codesys for a living, you are very welcome here too. I want you in the comments — pushing back when I get something wrong is the fastest way this series becomes useful.
The single most important fact about Codesys
If a TIA engineer takes one fact from this article, it is this.
Codesys is two cleanly separated products. The IDE is one, the runtime is the other.
- The IDE is the CODESYS Development System, made by CODESYS GmbH. You download it from the Codesys Store. It costs nothing. No per-engineer seat licence, no dongle.
- The runtime is CODESYS Control — the code that actually runs on a controller and executes your IEC 61131-3 application. The runtime is the licensed product, either by the OEM that builds the controller (Wago, Schneider, Eaton, ABB, Bosch Rexroth, ifm and many others) and folded into the device price, or directly by the engineer for hardware they own (Codesys Control Win SL on a PC, Codesys Control for Raspberry Pi SL on a Pi).
The contrast with TIA Portal is clean:
- TIA Portal is one vendor’s IDE programming that vendor’s hardware. Siemens designs the IDE, the runtime, the CPU, the Profinet stack, and the diagnostic buffer. The integration is tight.
- Codesys is one IDE programming hundreds of vendors’ hardware via a portable runtime those vendors licence from CODESYS GmbH. The integration is loose by design.
Once that split clicks, the rest of the ecosystem starts making sense.
Who actually owns Codesys
CODESYS GmbH, headquartered in Kempten in southern Germany. Founded in 1994 by Dieter Hess and Manfred Werner, originally as 3S-Smart Software Solutions GmbH; rebranded to CODESYS GmbH on 19 June 2020. Privately held. About 230 staff across Kempten and offices in China, Italy, and the United States.
The privately-held part matters. CODESYS GmbH is not a subsidiary of any of the device manufacturers it serves. That structural independence is what lets Wago and Schneider and Bosch Rexroth all run on the same upstream runtime kernel without one of them quietly tilting the platform.
V3.5 is the modern object-oriented platform — the version this series is about — and as of writing, V3.5 SP22 (March 2026) is the current service pack.
The cost story, plainly
For a TIA engineer this part is genuinely jarring at first. I had to sit with it for a minute when I started.
- The Codesys IDE: free. Download, install, open, write code. No licence dialog.
- Free demo runtime (Codesys Control Win SL on a PC): two-hour cycle, restart, repeat — forever.
- Direct runtime licence for unlimited operation on your own hardware: low-hundreds-of-EUR range for Win SL or Raspberry Pi SL.
- For OEM-licensed Codesys (Wago, Schneider M251, ifm mobile controller), the runtime cost is already inside the device price.
I am not going to pretend this is a knockout argument against TIA — TIA’s per-seat licence buys tightly integrated tooling and I get my money’s worth on customer projects. But for an engineer learning at home or prototyping on a Raspberry Pi, the gap between “download the free IDE and run a free demo runtime on the same laptop” and “organise a Siemens trial that expires in 21 days” is real.
My opinion on the pricing model — take it for what it is, one engineer’s view from inside both ecosystems. I prefer the Codesys scheme, and I think Siemens would gain a lot by switching to something closer to it. Make the engineering software free, and recover the cost through the hardware. Engineers buying Siemens equipment — PLCs, drives, HMI panels, network switches — would already be paying for the tooling through the hardware margin. The licence dollars are still there; they just live in the device price instead of in a per-seat dialog box.
The structural payoff is the bit I think gets underweighted. A free TIA Portal would pull more curious engineers into the Siemens ecosystem at the start of their careers — students, hobbyists, small OEMs prototyping a one-off machine. Those are exactly the engineers who, five years later, become the people specifying which PLC family the next project uses. Right now the per-engineer licence is a friction point at the front door, and a meaningful slice of that audience walks past it and downloads Codesys instead. I might be wrong about the commercial maths inside Siemens — that is genuinely their call, not mine — but from where I sit, there is an audience being left on the table.
Where Codesys actually shows up
Two simplified pictures, useful for sizing the field:
- TIA Portal dominates plant-scale automation, automotive, semiconductor fabrication, large packaging lines, and most of the European and Asian process industries.
- Codesys is the de facto standard in OEM machinery, mobile equipment (off-highway, agricultural — ifm and similar vendors), much of building automation, and a large slice of small-to-mid OEM machine builds.
One confusion worth clearing up, because I had to clear it up for myself: Beckhoff TwinCAT 3 is not a Codesys flavour. TwinCAT runs on Beckhoff’s own engine and IDE. Beckhoff hardware can run a Codesys runtime as an alternative, but TwinCAT and Codesys are competing platforms, not the same platform.
The topics I am working through
The series is not a finite countdown, and I am not going to lock myself into a fixed article count in public. What I can describe is the topical arc — the things I am working through and writing up as I go:
- The IDE itself — project structure, the Devices view ↔ POUs view split (the orientation point that took me longest to get used to), and how a Codesys project is laid out on disk.
- The language — Structured Text in Codesys, where it diverges from SCL, and the OOP surface (METHOD, INTERFACE, EXTENDS, IMPLEMENTS) that looks closer to SIMATIC AX than to classic SCL.
- Runtime targets — Codesys Control Win SL, Codesys Control for Raspberry Pi SL, what each is good for.
- Source round-trip and the agentic surface — PLCopen XML, File-Based Storage (preview), and the ScriptEngine / MCP add-on story for AI-assisted Codesys workflows. The area I am most curious about.
- Version control — Codesys Git, Codesys SVN, and third-party tooling like Copia.
- HMI — Codesys Visualization, WebVisu, TargetVisu, and where they sit next to the WinCC stack.
- The ecosystem — OSCAT, high-signal individuals (Stefan Henneken’s blog is the one I keep coming back to), forums, training.
- A TIA-to-Codesys cheatsheet that grows as I find more entries that need to be on it.
These are the topics. Not promises of a fixed number of neat articles. Some will be one article, some will be three, and some will get rewritten when I find out the first version was wrong.
A real invitation to push back
If you write Codesys for a living, I want you in the comments — actually want, not as a polite closing line. Tell me where this article gets things wrong, where I am about to step on a rake I have not seen yet, and which topics matter more than the ones on my list. The fastest way this series gets useful is Codesys engineers correcting the TIA engineer who is figuring it out in public.
The next article goes inside the IDE itself — the Devices view, the POUs view, what the project anatomy actually looks like next to a TIA project tree, and the first few habits I had to unlearn.
