# Pass Codesys recipes between two controllers that are not on the same network

**URL:** <https://www.wago.community/t/pass-codesys-recipes-between-two-controllers-that-are-not-on-the-same-network/2795>\
**Category:** CODESYS\
**Tags:** codesys, cc100\
**Created:** [June 30, 2026, 5:55pm UTC](https://www.wago.community/t/pass-codesys-recipes-between-two-controllers-that-are-not-on-the-same-network/2795 "2026-06-30T17:55:44Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![colsen](https://avatars.discourse-cdn.com/v4/letter/c/0ea827/32.png) [@colsen](https://www.wago.community/u/colsen)\
**Post date:** [June 30, 2026, 5:55pm UTC](https://www.wago.community/t/pass-codesys-recipes-between-two-controllers-that-are-not-on-the-same-network/2795/1 "2026-06-30T17:55:44Z")

</div>

Codesys 3.5.21.3 using WebVisu on a CC-100.

I have a client that is hoping that he can download a recipe from my recipe manager in one PLC and upload it to another. The two PLCs are not on the same network. My research is pointing me to using a button in WebVisu with a file transfer command. But I’m not having any luck with this working. Here is a screenshot to further clarify what I have setup:

 ![image](https://us1.discourse-cdn.com/flex016/uploads/wago/original/2X/9/915c3e45a2b4d9948fca3282b0cc7ab0f062df1c.png)

When running the command, I get an error code of 7.

I was pointed to something that says that the Linux running on the CC-100 requires a line or two added to the CODESYSControl.cfg file in order to change some security settings for file transfers. Here are the lines I added to no avail (every change I’ve made still results in error code 7):

CmpWebServerHandlerV3

AllowFileTransferServices=1

CallVisuServiceDirectly=0

CmpWSServer

AllowFileTransferServices=1

This might be completely the wrong approach and there might be a better/easier way. I don’t love having to edit the .cfg file for every PLC I program but if that’s the only way, so be it. I know that it’s possible to maybe do this using FTP but my clients need something much simpler and intuitive. FTP would be way above the common users’ abilities.

---

<div class="post-metadata">

**Author:** ![WagoIcard](https://sea2.discourse-cdn.com/flex016/user_avatar/www.wago.community/wagoicard/32/1508_2.png) [@WagoIcard](https://www.wago.community/u/WagoIcard)\
**Post date:** [July 7, 2026, 6:58am UTC](https://www.wago.community/t/pass-codesys-recipes-between-two-controllers-that-are-not-on-the-same-network/2795/2 "2026-07-07T06:58:14Z")

</div>

Hello,  
Depending on the FW number the place have changed.  
First, Look in those files:

> /etc/codesys3.d/CmpWSServer.cfg

> /etc/codesys3.d/CODESYSControl.cfg

> /etc/codesys3.d/RtsCore.cfg

if you have the line:

> AllowFileTransferServices=0

Next if you found the line, change the 0 to 1, save it and reboot the PLC.  
If you don’t have the line search for the header:

> [CmpWebServerHandlerV3]

If you find the header, add

> AllowFileTransferServices=1

after the header,  
If you don’t have the header, in the file

> /etc/codesys3.d/CODESYSControl.cfg

add

> [CmpWebServerHandlerV3]  
> AllowFileTransferServices=1

And restart the PLC.

After you have done this you will need the right function blocks in the project.  
Here is the official sample program from codesys:

> **[CODESYS Forge - Visu File Transfer Example / Home / Home](https://forge.codesys.com/prj/codesys-example/visu-file-trans/home/Home/)**
>
> Transfer files between a CODESYS PLC and the CODESYS web visualization

---

<div class="post-metadata">

**Author:** ![colsen](https://avatars.discourse-cdn.com/v4/letter/c/0ea827/32.png) [@colsen](https://www.wago.community/u/colsen)\
**Post date:** [July 13, 2026, 10:25pm UTC](https://www.wago.community/t/pass-codesys-recipes-between-two-controllers-that-are-not-on-the-same-network/2795/3 "2026-07-13T22:25:29Z")

</div>

This worked great. This is essentially what I was doing but apparently there is a /etc/codesys3.d/CODESYSControl\_User.cfg file and that is where it needed the line added. I had found a CODESYSControl.cfg in a home directory and made the change but I’m guess that the CODESYSControl\_User.cfg file in the etc directory overrides whatever is in the other file. Thanks for the help! It got me to where I needed to be.
