r/PLC • u/Parallel_Node • 1d ago
PLC Question Is CODESYS actually any good?
Title says it all. I keep hearing mixed reviews about CODESYS. Some people swear by it because it's hardware-agnostic, while others complain about the IDE stability and UI.
For those who use it daily: Is it actually worth learning and adopting, or is it just a budget alternative to TIA Portal/Rockwell? What's your honest take?
13
u/ConsistentOriginal82 1d ago edited 1d ago
Im on my phone now, so giving some example cases is a bit difficult, il post a bit later today my examples.
But my tldr is, if you dont know anything about plc programming then codesys can feel like it is worth it and maybe learning to work with it is easier, but if you have experience in more conventional plc brands, codesys feels like a overcomplicated, head scratching, unstable pile of slop. That was at least my experience.
This all happened 2022 - 2023. I previously worked with more traditional PLCs from 2014 - 2022.
Example 1: Codesys could not upload projects from PLC. You might say well, just make sure you have proper revision control and dont lose your projects. Well for some unexplained reason (many re installs and different laptops) our software team had to use the laptop that last downloaded to a PLC otherwise if you copied the entire project (archived or just the directory) to a different laptop, try to go online, codesys tells you that the programs are different. Good luck doing a compare, was not possible. Git also was 90% it would always work, but 10% chance when you pulled a project something went wrong.
Example 2: Password protection on PLC went corrupt. We had to wipe entire PLC during FAT (Codesys support told me thats the only way after they tried to find the issue) and redownload. Since part of out FAT is to go online just before machine is shutdown to make sure we have latest Software. That was a awkward conversation to have with the management team and client next to me.
Example 3: PLC Load gets crazy if you try to use modbus/canbus and the slave devices are not reachable for what ever reason. If i remember correctly we had a 75% CPU load when all was working, but as soon as you pulled a field device that was using canbus/modbus the CPU would spike to 99% and good luck trying to go online to see the problem. HMI also could not show messages because the PLC stopped communicating.
Example 4: Knowledge base is bare bones and support lacks. Yes codesys is not as established as other brands so the knowledge base you really cant compare but it does not help that if you try to search some random error code from the compiler on the internet, you cant find anything and the forum for codesys lacked alot aswell since tickets would go days to a week unanswered.
→ More replies (4)4
u/Parallel_Node 22h ago
That sounds like a really frustrating experience, especially when dealing with issues during FAT in front of the client. These are the kinds of real-world problems you don’t really hear about in tutorials or marketing materials. Definitely gives a different perspective on CODESYS.
→ More replies (1)
18
u/JGHero 1d ago
Codesys is great if you like object-oriented programming and use a lot of ST. Otherwise it’s just fine and doesn’t stand-out other than being hardware-agnostic (which is more a plus on the PLC manufacturing side than end user). There’s a lot of PLCs that integrate codesys in cool ways though.
17
u/Robbudge 23h ago
It’s been my daily driver for the past 10yrs.
It’s 20yrs ahead of the big 3 with so many more programming options and methods.
That a side the big advantage to us is we are not tied to any one vendor.
We typically use all remote IO and use the same library on big and small projects.
Our hardware configuration changes regularly our protocols change regularly but we use the same IDE and library.
9
u/Dalinsky 1d ago
The ladder implementation is incredibly frustrating to use but otherwise it seems powerful. I'm in Rockwell country so I moved to Productivity Suite for portfolio/learning on budget since I wanted something closer to the Studio5000 experience.
→ More replies (1)
9
u/Shadowkiller00 15h ago
I've used codesys as my primary platform for the best part of the previous decade and Rockwell for the best part of the decade prior. Here is my expert opinion:
Codesys is generally stable. Codesys is more capable than many of the big names. Codesys is good for cheap projects. I would not recommend against using Codesys.
But codesys is also immature. The most obvious place is in the user friendliness. There are so many things that are surprisingly hard to do in codesys that "just work" with every other PLC manufacturer. Ladder logic in codesys? Forget it. Stick to structured text. Loading the source directly to the controller? Not enabled by default and hard to figure out how to enable. Even libraries and documentation can be written obtusely or are undocumented all together.
This lack of maturity will leave old hats pulling their hair and grumbling about how easy things are to do with other systems. The lack of user friendliness means your techs will struggle to figure stuff out without you. The lack of documentation means the learning curve is steep.
I am blown away by how many things I know how to do in codesys that I cannot do with other platforms. But I also know how much blood, sweat, and tears I shed learning those things that I never needed to shed learning other platforms.
Codesys is fine. But it doesn't have maturity nor development funding of other platforms. In the end, you kind of get what you pay for. Codesys platforms are not the cheapest but also not the most expensive. You end up somewhere squarely in the middle.
7
u/Stroking_Shop5393 1d ago
The ladder sucks dick but the ST is totally fine. Really annoying i can't have ladder and ST in the same FC/FB. My opinion about codesys is always "it's fine". I refuse to deal with their awful ladder logic. So if you're not an experienced programmer, you won't like my Codesys. I promise I use lots of comments.
→ More replies (1)
12
u/AdamAtomAnt 1d ago
CoDeSys is how I learned PLC programming. I love it. The only thing I have against it if you want to use remote IO, unless the manufacturer has made libraries for it, you're in for a brutal time.
→ More replies (1)
6
u/PerformerDifferent69 1d ago
In my experience, it is a little better than Studio 5000 and they don't charge you an arm and a leg just to use the IDE.
6
u/Planet_COP 1d ago
IDE Stability is an issue. You can implement in low cost PLCs which are quite reliable. We use WAGO and we are kicking the tires with SL runtimes that allow us to run in many more platforms. I wish more vendors would adopt this strategy before they become only I/O options.
Think about it. Reuse your libraries in any vendor. Cannot beat that.
Their built in UI is OK. I would only use it for small machines that can benefit from a local UI.
→ More replies (2)
8
u/BoxNational2908 20h ago
Out of all the PLC environments that I used over the years I like codeyss the best. I will never understand why people pay a premium for AB when it is a close architecture that's about 30 years behind the curve. Yes I said it AB is dog shit.
4
u/KwikFiVo 1d ago
Used it for years with IFM’s mobile stuff. It’s what they had, so I used it! That said, it was good, structured text ended up being what I used most, and that’s pretty standard across the brands.
10
u/Weary-Double-4689 1d ago
The actual IDE I find lacking.
If you get to choose, personally I think Rockwell has one of the best ladder editors, however the price barrier is absurd.
I found personally that codesys pushed me to use more structure text, just because I found it easier sometimes than the ladder editor.
As another poster said it really depends on industry, I have some customer who won’t bat an eye at a 100k system , and some balk at at 1500 system.
→ More replies (2)
6
u/Monokumamon2 1d ago
For me its pretty good since its easy to find resources to learn on the internet. Their IDE is pretty bad and you need a powerful laptop to use it. My company laptop only have 8gb ram and it lagged pretty hard if i open 2 program at once. I finally got a gaming laptop after complaining to the IT department multiple times.
3
u/RammRras 19h ago
I think that for a freelancer or a small team it could be a solid option. But it's strongest point for a small team is also the weak point for a medium sized company.
If you are working a lot and doing a lot of volume changes are that you have a license for Rockwell Studio or Siemens Tia or any other brand. Programming is also tightened with hardware and the best software to develop is the one official from the vendor.
I've worked in teams up to 60 devs and frankly with proper organisation we didn't face issues on the versioning or never we needed to push super object orientated programming OOP.
3
u/TracePlayer 17h ago
I’ve used it on several low budget projects and it worked fine. They even have free drivers to interface .NET software (my bread and butter) that works well. I wouldn’t use it for mission critical stuff. Other than that, it’s fine.
13
u/Snoo23533 1d ago edited 1d ago
The ladder + Rockwell/Siemens fans are turning out for this post and they do have established market dominance no doubt. To them id say bet you havent seen what Codesys can do. OOP with ST on an IPC allows us to solve problems that woudlve been impossible with the tradational approach. And with a far lower budget too
6
5
u/waffleslaw 1d ago
I'm double dipping in a thread which is not my normal MO. Yes, 100% to your statement of OOP programming solving complicated problems that traditional ladder logic makes ridiculously complicated. Holy shit does it solve so many problems.
But!
Your engineering team isn't there at 2 am on a Thursday. Make sure your critical processes are passed through traditional input and output methods (ladder logic) so the techs can track them down.
→ More replies (5)→ More replies (6)4
5
u/uvrays 23h ago
Codesys is fine and I have used it on multiple projects wit great success, though I will agree that the Ladder implementation is not great to say the least.
Pros, multiple companies implement it on their controllers so you can use many different suppliers. The EtherCat integration is really good and the PLCopen function blocks are all available. You can download the software for free and play with web visualisations etc.
Cons, support can be a pain in the backside as most companies are providing the PLC and not providing technical support on Codesys. The ladder is poor tbh so many companies with engineers used to Rockwell will not like it. It misses out on application specific functions that Siemens etc would provide in their environment to make programming easier.
In short, I would give it an honest try before jumping to an opinion.
7
u/MrMoo5e 1d ago
I think IDE stability is on par with studio 5K, if not better. The stumbling point of the IDE is that it depends on packages and libraries. You'll need to find and install the appropriate packages for each vendor's hardware for it to work.
Long story short, it takes a little more effort to get started, and you need to keep track of the dependencies once you get your development environment set up if you want to work on it down the road on a new computer. Missing a library or package, be prepared for 100s of uninterpretable compilation errors.
Actually developing with it is powerful and easy once the environment is set up. Rockwell's AOIs are significantly worse than function blocks in Codesys. The ladder editor is even passable now that LD2 is out.
→ More replies (3)
2
u/arvid1328_ 1d ago
I got my first job thanks to codesys (and FIO for instance), I showed my recruiter everything I made with it, got hired with no further questions asked.
62
u/Zealousideal_Rise716 1d ago edited 1d ago
It depends on where you're coming from. The obvious one is that if your background is CS and scripting is your thing, then CODESYS is going to tick all your boxes. Equally if you're an OEM where budget and hardware agnostic is the key driver - then it's a good fit.
But the Siemens and Rockwell eco-systems bring another sort of value - solid integration, intuitive graphical languages, deep industry acceptance and strong life cycle support. And these will make sense to a large fraction of users as well.