AS4 to AS6 conversion tool

Hello

I have made, as an unofficial sideproject, a tool that does automatic conversion of AS4 to AS6 projects:

AS4_to_AS6_ConversionTool

It is not perfect yet, and probably never will be, but in my own opinion, it does give one quite a good headstart in converting an AS4 project to AS6.

Documentation and userguide is in the repository. If anyone is intererested, you are welcome to test it out, and give feedback. And you are also welcome to contribute to the development of the tool.

2 Likes

Hi there,

I haven’t looked into it in detail but from the Readme alone it looks like it’s basically the same as the as6-migration-tools ?
If so, I suggest putting effort into that instead of another tool :slight_smile:

Michael W - Then you have not looked closely :slight_smile:

This tool does the actual conversion of the project. Completely (as much as currently possible).
As far as I know, the migration script does little more than an analysis, and replace the string and math
libraries, and some OPC UA updates,

This updated OPC UA structures, converts mappService components and rebuilts mapp hiereachies, replaces runtime and libraries with 6.x versions.
It also does not require the source project to be version 4.12. For simple projects, it works 100%, and allows you to
convert for instance an AS4.9 project to A6 in less than 2 minutes. An then it compiles and runs in AS6.

Of course there are things that are not handled, and which cannot easily be handled. Like conversion of Safety Release
to mappSafety, or complex rewriting of code because of deprecated libraries.

I know the other tool quite well. I believe this solution is superior. The migration script began
implementation back in the summer 2025, and I started this in december. A lot has happened
in to world of codegeneration in those 6 months.

I simply went with GitHub - BRDK-Internal/AS4_to_AS6_ConversionTool: AS4 to AS6 conversion tool. Replacement AS6 library pack can be downloaded here: https://abb-my.sharepoint.com/:u:/p/mads-ravn_pedersen_dk/IQD6GnOHao4pQYgsskb2J0ozAZQ3WCFLRfN-QG6DeJNaiME?e=Q6BnRd which looks identical to what the other tool does.

Maybe adding the full conversion as a helper script to the other tool would be an option, then? Combining the efforts, using the same codebase and GUI, etc… would be benefitical imo.

1 Like

I agree that we should try and focus on only one path.

But just to give you (and others) an idea of what we have built, here is a demonstration
video:

conversionDemo2.mp4

This is a real customer project, although not one that is very complex. I convert it fully to
AS6 in the less than 6 minutes the video lasts, including compilation and download to the simulator.
The only thing missing, is setting the default mappView user, which is why the bindings of the HMI
are not working in the test.

So basically, less than 10 minutes total work, and this customer project is ready to commision on
AS6.

1 Like

Hi @mads.andersen, I will try to connect developers of these two tools together and let’s discuss the possibilities we have. For others, stay tuned! :slight_smile:

1 Like

Thanks @pedersenm for your effort, I have to convert a prj made with AS 4.11 + mapp legacy + ACP10…I’ll update you about the result.
———–
First I need to replace the obsolete hw, nothing new, I like the blocking red message.

Ciao
Valerio

3 Likes

I don´t think it can convert mapp legacy components, but give it a try and see how it gets you :slight_smile: