As in every year, Eclipse 4diac participated in the Google Summer of Code to extend our community.
Paul will work this summer on 4diac IDE in the context of testing Function Blocks (semi-)automatically. This is a part of our ambitions to make developing Function Blocks in 4diac IDE easier for you.
Paul is a physics student with additional interest in computer science. With this project, he hopes to gain practical experience in Java and learn working on large-scale projects with collaborative development.
In this summer, he will gain first experience in contributing to an open source project. We are always happy to introduce new contributors to our processes! Our committers Bianca and Alois serve as mentors for the project.
We will post updates over the summer!
Cheers,
The 4diac Team
jk

We are happy to announce the first maintenance release for Eclipse 4diac 2.0 providing 29 bug fixes for 4diac IDE as well as 2 bug fixes for 4diac FORTE. This include fixes for monitoring subapp interfaces and in the 4diac FORTE C++ code generation. A full list of all fixed issues can be found here.
As always please download, test, and report problems and bugs.
For users of the previouse releases a simple Help -> Check of Updates
should upgrade you to 2.0.1.
Cheers,
The 4diac Team

Today we have something new in our news section an interview with one of our latest users Tibalt Zhao from HIT Robot Group.
Alois: | Who are you? | ![]() |
Tibalt: | We are the R&D team of HIITTECH (哈工智云) which is incubated from HIT robot group. Our company is dedicated in delivering software solution for advanced process control. Currently, we are focusing on cement industry and circulate fluid bed (a kind of boiler). I am the team leader. The team comprises of software engineers and service engineers. | |
Alois: | How did you learn about IEC 61499 and the Eclipse 4diac project? | |
Tibalt: | We are a team experienced both in terminal units and SCADA systems applied in the electricity grid. We have our own flow (graphical) programming platform to develop control logic in terminal units. The platform is a key to ensure quality for requirements different from batch to batch of hardware delivery. We are following the status of IEC 61131 and IEC 61499 as they are the standard for industrial control languages. Eclipse 4diac is one of the most popular open-source project for IEC 61499. And at the beginning of our project, our colleagues recommended Eclipse 4diac to us. And after looked into the docs and codes, we decided to adopt 4diac as our control platform. | |
Alois: | You have contributed many bug fixes and enhancements to the 4diac project. So, what's your team's goal? | |
Tibalt: |
When I am designing the architecture, I read from you and James Christensen that IEC 61499 is a standard for software reuse in embedded,
distributed control systems.
This is what we are looking for, the philosophy, standard, graphical programming, and the open-source project. We are feeding back with code for bug fix, enhancements, and suggestions to the 4diac project as we respect EPL license. We believe that the community's prosperity could benefit all who are working with 4diac and IEC 61499. Our business value is in FBs we are encapsulated and total solution we delivered to our customer with HMI and big data database. |
|
Alois: | What do you like most on 4diac? | |
Tibalt: | First, the tiny footprints of the run time environment. Second, the architecture taking care of hard real time application. And the RTE which could run cross platform including Linux, windows, freeRTOS and so on. | |
Alois: | What in 4diac is disturbing your work most? | |
Tibalt: | The way to composite function block is a little bit disturbing as we have done lots of CFBs. We hope to see the subapplication type soon. I heard that in 2.0.0 release, we can have subapplication type. | |
Alois: | Yes we are working hard to make subapplication support better. But what is exactly the problem of CFBs if I may ask? | |
Tibalt: | First, every time we make a CFB, we need to generate cpp codes from IDE and compile them with source code of 4diac FORTE before it can be tested. You know, the process can be done for several times to get the CFB ready to release even by an experienced engineer. And even a tiny new requirement, for example change the pin name or add an output pin to give more details of failure execution, we have to repeat the compilation process. Secondly, IDE cannot "watch" in the second tier of function block network, which means if there is a CFB embedded inside another CFB, it is almost impossible to debug. Engineers need a good way to encapsulate the FBs as we all know that a very big FBN is too complex to maintain. We can make the basic blocks in IDE is a good start. But please make the process simple that the service engineer could build the blocks by themselves within IDE. | |
Alois: | Can you describe/show something about your first 4diac application? | |
Tibalt: |
Sure. Our application is the advanced process control for a mill.
![]() ![]() ![]() ![]() ![]() |
|
Alois: | Wow this is pretty impressive. Thanks a lot for your insights. |

Have you been waiting for 4diac 2.0.0? It's finally here!
We've been working on improving your experience with Eclipse 4diac. For 4diac IDE, the following major changes were introduced:
- Improved usabilty and editing efficiency of all editors
- Introduced monitoring for Structured Datatypes
- Introduced editing history during undo/redo to quickly find the last editing position
- Improved layout generation results
- Improved/introduced input validation, show error messages
- Introduced error markers to handle broken projects more gracefully
- Of course, we have also implemented numerous bug fixes.
For 4diac FORTE, we have mostly provided bug fixes and stabilization patches:
- Gracefully handling full external event queues
- Fixed issues for compiling on Mac OS
- Implicit upcasts are allowed for constant inputs at FBs (e.g., WORD#AFFE on a DWORD input)
For details, please consider the release page of our New and Noteworthy.
We sincerely hope that you enjoy our graduation release. We are looking foward to sharing more documentation on the new features in the upcoming weeks.
Cheers,
The 4diac Team

We are happy to announce that the Eclipse 4diac passed the graduation review today. This is a major step for the project and its community. We could show that we are working as open source project following the Eclipse development process. It also means that we are leaving the incubation phase.
Thanks to the great 4diac community for making this possible.
Cheers,
The 4diac Team

As every year, the beginning of September starts the feature freeze phase for the 4diac autumn release. We have many new features and bug fixes in this release:
- 4diac IDE:
- Reworked nearly all icons
- Monitoring inside of typed subapps and composite FB instances
- Monitoring of subapp interface pins
- Error markers are created if FB types are missing or if pins of connections can not be found
- Constants at FB inputs are validated whether they match the data type
- Many smaller usability improvements
- 4diac FORTE:
- Mostly stability improvements
More details will follow in the next weeks as separate news items.
We provide a nightly build update site which allows you to automatically update your 4diac IDE.
Just add
http://download.eclipse.org/4diac/nightly/update
to your update sites.
Cheers,
The 4diac Team

The last few months we've been working hard on redesigning the icons of the 4diac IDE.
As this is the first major revisit of the existing icons, we had to change a lot. Major motivations for the redesign were to increase readability and consistency throughout the icons.
Icons Done
This is the list of icons already redesigned.
Function Blocks
Application
Basic Function Block
Composite Function Block
Service Interface Function Block
Simple Function Block
Subapplication typed Function Block
Subapplication untyped Function Block
Type Library
Data Type
System
System
System Configuration
Device
Device
Resource
Event/Data/Adapters
Event
Event in
Event Out
Data
Data In
Data Out
Adapter
Adapter In
Adapter Out
Interface
ECC
ECC
ECC Action
ECC State
ECC Add State
ECC Algorithm
All these icons are Work in Progress, they may be subject to change.
Cheers,
The 4diac Team

We are very proud to announce the Eclipse 4diac 1.14.0 release!
With Eclipse 4diac 1.14.0 we provide you with a large set of improvements in 4diac IDE and 4diac FORTE:
- 4diac IDE:
- System file content is shown in one single editor with bread-crumb navigation
- The infinite drawing canvas was replaced by an incremental growing canvas. This gives better feedback on the size of the network or ECC.
- Possibility of expanding subapps for showing subapp content in-line with its parent
- Inside untyped subapps the subapp's comment is shown at the top of the editing area
- Typed subapps can now contain untyped subapps
- The content of typed subapps can be watched as part of the instance similar to a composite fb in a dedicated viewer
- Parse errors are shown as errors in the problem view which is added to the system perspective
- A default CMakeList.txt file can be generated during export
- Reworked simulated device manager to better show currently running simulated devices
- Implicit upcast are now allowed during connection creation (e.g., INT to DINT)
- Transition conditions can now directly be edited in ECC graphics
- A struct can be created by selecting several interface elements of a subapp
- Many bug fixes and smaller improvements:
- Text labels in diagrams are not cut off any more
- Boot-file and FM generation is again available
- Improved automatic layout generation
- Modernized function block appearance with a drop shadow
- Several issues in the type library leading to broken projects and FBs
- 4diac FORTE:
- Improved timer handler to use less resources, which should lead to less jitter
- CMake modules have now an option to be enabled per default
- Several compile/portabilty issues where fixed: Modbus, Windows XP, ming64, Piface
All in all we could address 150 issues in the work for the new Eclipse 4diac version. A full list of all bugs addressed in this release can be found on the 1.14.0 release page.
As always please download, test, and report any issues. For users of the previous releases a simple Help -> Check of Updates should upgrade you to 1.14.0.
Cheers,
The 4diac Team
PS: With Eclipse 4diac 1.14.0 the 4diac IDE requires at least Java 11 installed on your machine! If you download the official 4diac IDE package a correct Java version is already included. Many thanks to the Eclipse JustJ project for that support.
PPS: Windows 10 users: Windows 10 Defender significantly slows down Eclipse and therfore also 4diac IDE. The reason is Windows 10 Defender scanning the JAR files. The problem has been reported to Microsoft here. Until then, a workaround to this problem is to add 4diac IDE root directory to Windows 10 Defender's exclusion list, detailed steps are shared here.
Note: This is not just an Eclipse 4diac issue on Windows 10.

Your patience is paying of. In the last weeks we could fix a few major issues in 4diac IDE. One clearly visible example you can see below. Thanks to Bianca's detective skills we where finally able to fix the cut of texts when zooming in or out of our graphical editors.
Cheers,
The 4diac Team


In the last two weeks we noticed a few major issues in the release version of 4diac IDE. As we want to further investigate this we have to decided to further postpone the 4diac 1.14.0 release to May 3rd.
We are sorry for the inconvenience. 4diac 1.14.0 will have an amazing list of new features. So it is definitly worth the waiting.
Cheers,
The 4diac Team

We are proud to announce the first maintenance release for Eclipse 4diac 1.13 providing 12 bug fixes for 4diac IDE. This include fixes for the virtualDNS handling, corner cases in the new selection feedback and in the 4diac FORTE code exporter. A full list of all fixed issues can be found here.
As always please download, test, and report problems and bugs.
For users of the previouse releases a simple Help -> Check of Updates
should upgrade you to 1.13.1.
Cheers,
The 4diac Team