On this page we provide you answers and questions all about the hard- and software product portfolio.

Any further questions that could not be answered?

Send us an e-mail with the reference "FAQ".
We will handle your request immediately.

Technical support   |   T +49.7121.894-183   |   F +49.7121.894-100  |  support-controls@berghof.com


> General
> Webinterface
> USB-Update



1. What is the meaning of EC, ECC, DC, ET, EIO, XR, EC-IO?

These abbreviations denote the family name of the corresponding products and they have the following meaning:

  • EC: Ethernet Controller - A PLC which can be expanded with additional modules, mostly EtherCAT
  • ECC: Ethernet Compact Controller – A plc with onboard I/Os 
  • DC: Dialog Controller – A plc with an integrated LCD unit to show the CODESYS Target-Visualisation
  • ET: Ethernet Terminal – Display panel which can be used as VNC-Viewer or embedded Web-Browser
  • EIO: EtherCAT Input/Outputs – Slim modules with digital inputs and/or outputs which can be attached to an EC plc or any other plc using a bus coupler
  • XR: XR - Designation for multifunctional EtherCAT modules and DC add-on cards which combine digital and analogue inputs and outputs in one unit
  • EC-IO: EtherCAT Compact Inputs/Outputs – A module with digital inputs / outputs which can be connected to a plc without the need for a bus coupler


2. What is PPC, MX6?

These abbreviations are the names of the processor architecture used in Berghof plc’s, they stand for:

  • PPC: Power PC CPU – This CPU is used in all CODESYS V2.3 compatible plc’s and in the EC1000 V3
  • MX6: Cortex A9 CPU – This CPU type is used in all DC2000 and ECC2000 plc’s

These two designations are used here at Berghof to distinguish between the old and new plc products, these names can also be found when looking for new firmware versions in the download section on the homepage.

3. Which interfaces are supported?

Berghof plc’s support many common communication interfaces used in machine automation. These interfaces can often be accessed on a lower level or through the CODESYS V3 system using build-in wizards to configure and setup the various communication protocols.

  • Ethernet: TCP/IP, UDP, EtherCAT, Profinet, Modbus TCP, FTP, Ethernet/IP, OPC UA
  • CAN: CANL2, CANopen, J1939
  • RS232/485: COML2, Modbus RTU
  • ProfiBus Slave: Using the E-I/O ProfiBus Slave module
  • USB: Can be used for firmware updates and device configuration or to plug-in storage media to archive data, a maximum of 8 USB devices is possible
  • SD-Card: An SD-card can be used as a fixed storage medium to extend the capacity of the controller up to 32GB of data, depending on the controller model

4. Can I expand my storage capacity?

The internal memory of the plc cannot be expanded directly, however it is possible to use removable media devices to gain additional storage space. Most Berghof controllers have an SD card slot and all current models have at least one USB port. The SD card can be used as fixed storage medium which stays in the controller all the time, the USB port allows to connect up to 8 USB removable devices using a self powered USB hub. The storage device must be formatted with the FAT32 file system.

5. Can PLCs without a display have a visualisation (HMI)?

Yes, this is possible; all displayless Berghof controllers have an integrated VNC server which acts as the Targetvisualisierung. To show the Targetvisualisierung usually a Berghof Ethernet Terminal is used which has an integrated VNC client but nearly every other VNC client can be used to view the visualization. Alternatively the Webvisualization can be used to or any HTML5 capable browser.

6. What resolutions can be used for the Target Visualization?

If a controller without display outputs the visualization via a Berghof Ethernet terminal, it is important to adjust the VNC output resolution to the resolution of the used E-terminal model. Display Controller do have this setting, its resolution is fixed and corresponds to the resolution of an Ethernet terminal of the same size.

ET1003:QVGA320x2403,5 Zoll (ECC2xxx/EC1000)
ET2004/DC2004:WQVGA480x2724,3 Zoll (ECC2xxx)
ET1005:VGA640x4805,7 Zoll (ECC2xxx/EC1000)
ETx007/DC2007:WVGA800x4807 Zoll (ECC2xxx/EC1000)
ET1010:VGA640x48010,4 Zoll (ECC2xxx/EC1000
ET2115:WXGA1366x76815,4 Zoll (ECC2xxx)
PC VNC Client:SVGA800x600 (ECC2xxx/EC1000)
PC VNC Client:XGA1024x768(ECC2xxx)

7. Where can I get CODESYS + Target?

Depending on the customer's order a storage device is included with the delivery of the Berghof plc, on which the current target and the matching version of CODESYS can be found. Alternatively, it is also possible to register on the Berghof website and apply for access to the closed download area, where you can download the current target, firmware and the matching CODESYS version at your digression.

The Target Package must be purchased once separately and is not for free!
Only cusotomers that have purchased the Target license verifiably will gain access to the closed download area.

8. Where can I find manuals for the Berghof devices?

Depending on the customer's order a storage device is included with the delivery of the Berghof plc, on which the corresponding hardware manuals, data sheets and other manuals can be found. Alternatively, it is also possible to register on the Berghof website and get access to the open download area, where you can download all available manuals and data sheets.

9. Why you should not use the latest version of CODESYS during the initial setup?

A Berghof release always appears as a set consisting of a Target, a firmware and a matching CODESYS version as a kind of closed or bundled system. The Berghof target is always linked to specific library and compiler versions. These versions are the prerequisite for the system to function. If only the latest version of CODESYS is used in which required library - and compiler versions are newer than the target requires, the correct function of the program can no longer be guaranteed.

10. Should you update your system?

It is generally recommended that if you have a stable running system, which meets your needs, do not update or change it. Berghof maintains and update its systems continuously and an upgrade to an official release can be carried out.

11. When can I update my system?

The system should only be updated with official releases from Berghof. Upon an official release all registered customers in our database receive a change notification via email. Then, the updates can be easily downloaded via the Berghof Download area from our homepage.

12. How do I update correctly?

A clean performed updating is essential for the project to function properly after the update.
When updating, the procedure is as follows.

  • Firmware update of the PLC
  • Update of the installed CODESYS version with the new official Berghof CODESYS version
  • Installation of the new Berghof Target using the Package Manager
  • Update of the project (target, devices, compiler version, libraries, visualization profile, etc.)
  • Save the project under a new name with the new CODESYS version

13. Can I update without consideration?

In general, an update of the system is possible, provided it is an official Berghof release.
However, it is also recommended to install a CODESYS update first on a separate computer or in a VM in order to carry out initial tests. The project update should be done with a copy of the project and tested for function in general first. If all works out, the project copy can be set as the new main project.

14. My firmware version is different to my target version?

If the firmware version is newer than the installed Targetversion, this represents no problem; our firmware versions are downward compatible and should work without problems with older Target & CODESYS versions.
If the firmware version is older than the installed Targetverison a login and download of the application is not possible.
In this case either the plc has to be updated or an old Targetversion has to be used. In most scenarios an update of the plc is recommended.

15. Can I update my CODESYS version with an unofficial release?

This question depends on how the project will be used after the update of CODESYS.
Is an official released version of CODESYS already installed, an update can be performed as long as the project is not upgraded after the installation of the new CODESYS version. All settings in the project have to remain the same.

This way it is possible to profit from bug fixes and new features if they are compatible with the same target. However if a new project is created, CODESYS will use the newest version of any available device description, the latest version of any available library, the newest compiler and visualization profiles.

All these settings have to be manually changed to the versions required by the CODESYS Target for Berghof plc’s.

Proceed with great caution if an existing project is to be updated with a CODESYS version not release by Berghof. In these cases it is recommended to use another computer first or work with a VM. Always create a backup of your project before making any changes. With such a testing environment all aspects of an update can be checked and tested.

To our knowledge an update to a higher patch within the same service pack poses no problems, but updating to a higher service pack version can result in incompatible projects which have to be re-worked in order to get them to work. For example if new visualization elements are introduced, these will not work on a Berghof plc without a firmware update.

In general Berghof recommends using only CODESYS versions release by Berghof to get the best compatibility. If an update or a special feature is needed, contact the Berghof Customer Support team (support-controls@berghof.com).

 We are happy to help you out.

16. What is a target?

The target can be described as a link between CODESYS and the Berghof plcs, which allows CODESYS to recognize a Berghof plc correctly and to communicate with it. Components of a target package are device descriptions for the plc, device descriptions for I/Os and device specific external executables or libraries for use in projects. The target is always linked to certain standard libraries of CODESYS which must be installed to be able to successfully log into a controller. For this reason, the target must always be used in conjunction with the matching CODESYS version.

17. How do I setup a Berghof PLC for the first time?

For an initial setup of a Berghof control CODESYS is not needed. It is recommended to have the manual at hand, however, the basic connection instructions can be found on the housing of the controller.
The controller requires a 24V DC power source to be able to run.
The wiring of a 24V cable to the connector for the 24V on the controller must be done manually by the user. Please ask our sales team if all needed connectors are supplied with the controller. All power sources must be turned off during of wiring.

18. How do I switch on a Berghof controller?

The plc does not have a power switch, this means if you connect 24V DC to the power connector the plc turns on automatically and if the power is cut, the plc is off.

19. Does the Berghof PLC has a power reserve?

Berghof controllers have a small power reserve of about 10ms if the power supply is interrupted. This prevents the plc from restarting if the power is interrupted and returns within this time frame.

20. What will happen if I switch polarity of the power supply of a Berghof PLC?

Nothing will happen, Berghof plc’s have a built-in polarity protection and the device simply remains off. The device will not be damaged.

21. I have setup the PLC and it is power on, what`s next?

The next step is setup the IP adress of the pc or laptop to one in the same subnet as the plc and then enter web interface to change all settings as needed. After that it is time to open CODESYS, create or open a project and login into the plc.

22. Does the Berghof PLC have LED signals?

If the rare case should occur, that a plc is not responding after turning it on, and no form of communication is possible, there is still the possibility to read the system state from the LEDs. The LED signals are based on either the System or the CODESYS states. As long as the CODESYS runtime is not active the LEDs are controlled by the Firmware, as soon as the CODESYS runtime is activated the LEDs are controlled only by the runtime.

23. What is the meaning of the LED signals?

System States:

RUN/STOP (yellow/off)Description
offBootloader active
offLinux bootup active
yellowSystem is powered with undervoltage (from FW 1.6.0 and newer)
yellow 1x blink, 2s pauseMaintenance mode active
yellow blinking slow intervall (1s)USB update active
yellow blinking fast intervall (400 ms)Device runs in RAM (firmwareupdate active)
yellow 2x blinks, 2s pauseDevice need reboot (e.g. USB update done)
red or green For PLC devices: CODESYS running, see CODESYS states
greenFor visu terminal: Visu (VNC/WEB) active

CODESYS states:

RUN/STOP (green/red)
ERROR (red)Description
redoffAt least one PLC application is stopped
redoffAll PLC applications are stopped
greenoffAll PLC applications are running
redredAt least one PLC application stopped due to error
red blinking -Preparing for RESET COLD
?offWait for peripheral (e.g. Retain/Undervoltage, Ethernet Initialization, ...)


24. How can I connect the PLC to my PC?

For everyday use the plc has an Ethernet port which can either be connected to the PC directly or to a network switch. For a direct Ethernet connection no special cable is needed, all Berghof plc’s support the auto-crossing feature. However the Ethernet settings on the plc and on the PC have to be correct in order for both devices to be able to connect.

25. The PLC has multiple Ethernet-ports, which one do I use?

For plcs that have more than one Ethernet-port, the standard Ethernet-interface (ETH0) is always the first port.
For the models DC2xxx and ECC21xx it is the port named X4.
For the models ECC22xx it is the port namd X10, alternatively the ports X11 and X12 can also be used as X10-X12 are the ports of an integrated switch which is built in in the plc, so all the ports X10-X12 run over the same Ethernet-interface.

26. Why are there multiple ethernet-interfaces?

The second Ethernet-interface (ETH1) or X5 on the models DC2xxx and ECC21xx and X13 on the models ECC22xx, is primarily used as a filedbus-interface. In the default configuration this interface is always preconfigured to EtherCAT.

27. Is it possible to use the second Ethernet-interface as a standard network - or service-interface?

This is possibile with some restrictions.Both interfaces (ETH0 a. ETH1) are independent from another and can be configurated seperately (s. 1.36  a. 1.37).If no Ethernet based fieldbus is required, it is possible to reconfigure the second Ethernet Interface as a standard network interface. However, only IP and the netmask are configurable, gateway and DNS is not supported. But for simple network communication in closed network without routers and for direct connections to the PC as a service- and programming-interface, this basic functionality is enough.

28. What is the default IP address?

If you have a Berghof display controller, the current IP address of the first Ethernet port is shown on screen.
Every Berghof PLC is shipped with a default IP address.
The default address is: 169.254.255.XX
Where XX denotes the last two digits of the device serial number.


Exception 1: If XX = 00, then the IP address is
Exception 2: If XX = 0X, then the IP address is 169.254.255.X, X is the last digit of the devices serial number.
The network mask is always set to

Please note that for a successful connection to a PC, the PC also needs to have an IP address with the range of 169.254.255.xxx and the network mask must be Both devices cannot have the same IP address!


29. What can I do if I forgot the IP address of a PLC?

Usually this is a problem with controllers without a display. It may happen that the IP address of a plc is forgotten or no longer known. There are two options to gain access to the plc again. The most common method is to start the plc in maintenance mode, which restores the controller’s default IP address no matter which IP address was set before. The default IP address is only active as long as the maintenance mode is active. After a reboot the old network settings are used again. So the network settings have to be changed while the maintenance mode is active.
The other option is to use the Berghof USB update functionality (s. from 1.63). to change the network configuration of the plc to a known setting. However the USB stick has to be prepared first with a special folder structure and files from Berghof which will be recognized by the plc.

30. What is the maintenance mode and how can I activate it?

The maintenance mode can be compared to the safe mode of Windows. In this mode only a barebone system is started on the plc, the application and other services remain deactivated.
To activate the maintenance mode, the plc has to be turned off and then the following steps have to be performed:

  • Press and hold the button S1 (Run/Stop).
  • Now the plc has to be turned on.
  • After a short wait the Run/Stop LED starts to blink slowly.
  • The button can be released.
  • The first ethernet port (eth0) of the plc has now the default IP address for as long as the maintenance mode is active. The web interface should now be reachable again via a known IP address.
  • After a reboot all changes made through the web interface to the plc’s configuration while the maintenance mode was active carry over into normal operation of the controller.
  • The plc can now be used again.

31. How can I reset my PLC to default configuration?

The PLC can be reset to default configuration in the two following ways:

  • You use the web interface menu “Configuration Reset” (s.1.43).
  • You use the USB update script (s.1.69).

32. How can I transfer files manually onto my Berghof PLC?

The most convenient method to transfer files manually on the plc is by using FTP. For that the FTP Server must be activated in the plc config (s.1.41). To connect to the FTP Server of the PLC a FTP Program (CoreFTP, FileZilla, TotalCommander) must be used, it is not possible to access the FTP Server via browser or explorer. The FTP address is the IP of the plc, the standard port for FTP is 21. To log in the “root” user and the matching password (s. 1.42) have to be used.
After the connection is established, you will be located in the “root” folder inside the main directory of the plc, from here it is possible to browse through the file system of the plc similar to a PC.
It is very important to be catious not to change any of the basic directory and file structure on the plc, in the worst case the CODESYS Runtime will not be executed anymore.
The relevant filepath for the normal user is ”/flash/plc/applications/”, in this directory everything application related is stored, e.g. CODESYS Config., Bootapplications, Visu files, Logging files etc. Also all files created by the application without a specific filepath will be found here. Over the FTP Program it is then possible to create new sub-directories, to load selected files from the plc or to write new files on the plc.

When using the FTP file transfer the transfer-type has to be considered. Only when using the ‘binary’ transfer-type the files will not be changed. If the transfer-type ‘ascii‘ is selected the files will be changed resulting in corrupted files on the plc or PC.

33. How do you transfer new font files onto the Berghof PLC?

To transfer fonts onto the plc, the needed font file (*.ttf) has to be loaded into the anticipated directory on the plc.
The anticipated directory for fonts is „/flash/plc/applications/fonts/“. The “fonts” subdirectory is not generated by default on the plc and has to be created manually by the user before loading the first font file onto the plc.
For that connect to the plc via FTP (s. 1.32), and navigate to the “applications” folder, and create a new sub folder and name it “fonts”. After creating the “fonts” folder load the wanted font files (*.ttf) into “fonts” and restart the plc (s. 1.46).
After the restart the newly loaded font file can be seen listed in the Fonts overview in the Webinterface (s. 1.55).

The system requires that the file extension of the font file names are in lower case letters, otherwise the system will not recognise the font files when it starts.
For example: the Arial Unicode MS fonts has to be named „ARIALUNI.ttf“, not „ARIALUNI.TTF“ nor „ARIALUNI.Ttf“, file names with these spellings will not be found.


34. What is the web interface?

The web interface is the web based configuration menu of nearly all Berghof controllers. A web server is running on the plc which allows the use of HTML5 compatible browser to change the configuration of the plc. Depending on the plc model some or all of the following configuration options are available: network settings, sc card, VNC, FTP, clock, user management and more. It is possible to view the system and plc logs and check the activity of the device. Furthermore firmware updates can be done this through the web interface as well as system resets and starting and stopping of the application on the controller.

35. How can I reach the web interface?

To reach the web interface of a Berghof plc with a web browser both devices, the development computer and the plc, have to be in the same network. If this is the case the web interface can be reached by entering the IP address of the plc into a browser and a login screen with the Berghof logo should appear. After a successful login the configuration menu of the plc’s web interface is shown.

36. How can I change the IP adress using the web interface?

To change the IP address of a plc, first you have to login into web interface.
In the left side menu under Configuration click on the menu entry Network to reach the network settings.
To change the IP address of the plc write the new address in the textfield under the section ETH0. Do the same thing with the netmask text field, put the network mask here. Leave the Mode setting on static. Are all changes complete, click on the Save button to save the changes permanently.
The plc has to be restarted for the new IP address to take effect.


37. What can be changed over the web interface in the network configuration?

The network configuration is devided into three sections:

Common configuration, here the networkname of the plc can be set as well as the DNS Server addresses.


Primary ethernet-interface of the plc:
In “Mode” you can differ between:
„static“ for a fixed configuration,
„dhcp“ for a dynmiac configuration over a DHCP Server,
„inactive“ for deactivating the ethernet-interface.
The “IP Address”, the “NetMask” and the “Default Gateway” can be freely changes as parameters.


Secundary ethernet-interface, which is primarly used as a fieldbus-interface for EtherCat.
Additionally the same modes as for ETH0 can be selected. ETH1 can also be used as a regular Ethernet-interface, but only with basic functionality, there is nor parameter for a Gateway and the common DNS Server parameters are not used.

38. How can I change the time over the web interface?

Date (Timezone: UTC)

This is the the Real-time-clock of the plc, which is also used as the UTC timezone.
If timezones are of no relevance inside the application, the time can be changed here directly.
To change the Real-time-clock, just edit the values inside the textfields and save the changes via the Button „Change Time and Date“. After the time change the plc does not have to be rebooted.


Additionally it is possible to the a timezone for the time.
The timezone is seen as an offset value to the UTC.
It has to be considered that CODESYS always reads back the real-time-clock for timestamps when using system functions.
The offset of the configured time zone has to be added manually by the programmer. To set a timezone, select the required timezone from the dropdownlist and and save the changes via the Button „Change Timezone“. The plc does not have to be rebooted.

39. How can I change the VNC resolution over the web interface?

In the VNC menu you can change the resolution and the color depth on the plc. These setting can only be found on Berghof Ethernet Controllers (EC/ECC). You select the required value for resoluation and colodepth out of the dropdownlist and save the changes via the Button „Change“.

The plc has to be rebooted so that the changes take effect.

40. How can I change the display settings using the web interface?

The menu entry Display allows you to change the settings of the build-in display of Display Controllers (DC2xxx). In contrast to the VNC settings of other plc models, there is no resolution to choose. The native resolution of the display will be used which is specified in technical documents of the device.

This setting allows changing the display brightness. The value can be chosen from the drop down list and saved with a click on the button “Change”. 

Touch Calibration:
A click on the button “Delete Calibration” will delete the touch screen calibration data. A reboot is needed to activate the calibration routine on the Dialog Controller. Follow the instructions on screen.

Splash Screen:
The splash screen is the image that is shown when the Dialog Controller is turned on and can be changed using this option. The image file must be a PNG file (max. 32bit colors) and should not exceed the screen resolution of the device. Using the button “Browse” a window opens which allows you to choose the image file on the pc. A click on the button “Send” will transfer the image to the controller and at the next reboot the new image will appear on the screen.

41. How can I activate the FTP server using the web interface?

Every Berghof PLC has an integrated FTP server. The menu entry FTP-Server in the Configuration menu allows the user to choose from a drop down list to either “enable” or “disable” the FTP server.
A click on the button “Save” saves the changes and after a reboot the changes will be active. Any FTP client program can be used to simply transfer files from and to the plc, however no encrypted (sftp) connection is possible.

42. How can I change the user passwords using the web interface?

Berghofs PLCs have a set of predefined standard users with different access levels. This is relevant for the login onto the web interface, FTP and SSH. To protect the PLC from unauthorized access, you can change the passwords for the different users in the menu “User Management”. The user names cannot be changed. To change the password you click into the textfield next to the matching user and type in the new password. To save the new password you click onto the symbol with the green arrows located in the “Change” column.
The password has to be changed for every user. After the changes are done, a reboot is required.
Berghof advices all costumers to change the standard password after receiving their hardware in order to prevent any unauthorized accesss.

43. How can I reset the configuration using the web interface?

If it is required to reset the already changed configuration back to defauft, you go to the menu “Configuration Reset” in the web interface. You check the box at “Reset all Settings to factory defaults” and push the button “Reset Module”. Afterwards the plc has to be rebooted. Also, when executing a “Configuration Reset”, only the configuration is set to default, an application or other files that are on the system flash memory remain unchanged.

44. How can I look at system information using the web interface?

The system information can be seen easy in a comfortable overview in the menu "System Info" in the web interface.
Following Informations are displayed:

  • Part-Name
  • Part-Number
  • Hardware-Revision
  • FDT-Version (device description)
  • Firmware-Version
  • Supported CODESYS-Version
  • Installed licenses
  • System Operation Time
  • Time since last system bootup
  • Overview CPU Temperature
  • Overview System Temperature
  • Memory (RAM) usage


45. How can I perform an update using the web interface?

Berghof PLCs provides the option in the web interface to perfom updates belated. By that it is easily possible to install a firmware or a license on the plc afterwards. All update files for our PLCs are so called “TGZ” archive files, which can be acquired from the downloadarea of our homepage or from the Technical Support.

In the web interface menu “Package Update” you push the “Browse” button which opens a file dialog, in this file dialog you have to state the filepath to the needed TGZ file. With the “Send” Button the archive is  now downloaded onto the PLC. After the archive has been fully transfered onto the PLC, an information overview for the transferred archive and what it includes, appears. By pushing the “Start” button the Update procedure is initiated, depending on the size of the TGZ file the update may take from several seconds to two minutes to finish. Never turn off the PLC during the update procedure. During the update procedure it might happen that the browser loses the connection to the PLC, this is no problem just refresh the browser manually and the update procedure will reappear. When the message “System has to be rebooted” appears, it is indicated that the update is completed. Afterwards the PLC has to be rebooted, for the update to take effect.


46. How can I reboot the PLC using the web interface?

For the majority of the configuration or when performing an update, the PLC has to be rebooted for the changed to take effect. In order to not turn off the power every time to perform a reboot, this feature can be found in the web interface of the PLC.

In the menu “System Reboot” you can initiate a reboot by pushing the button “Reboot Mnodule”. The message Rebooting module, session will be closed…“ will appear and after about 30 sec. you can be redirected to the login page by klicking on “Back to Login”

47. Can I influence the behavior of the application using the web interface?

Generally, only CODESYS V3 together with the project file has the possibility to actively take influence on an application saved on the PLC. But Berghof PLCs also offer the basic functionality for application control over the web interface. It is possible to start, stop, reset and delete a saved application. Additionally it is possible to only delete the retain memory, to create a backup of the whole application folder and further options. Optionen.

48. How can I start, stop and reset my application using the web interface?

In the menu "PLC Control" of the webinterface you can find the control elements for the application. The control interface is
divided into four different units. The first unit shows the current runtime state of the application.
Following stati are possible:
The top unit shows the current runtime status:

  • AS_RUN : Application present and running
  • AS_STOP: Application present and stopped
  • AS_NONE: System booted without application
  • AS_NO_APPLICATION: Confirmation after successful "Reset Origin"
  • EXCEPTION_XXX: Application stopped with exception, XXX stands for the cause of exception

The two middle units contain the control elements for the application

  • Start All Applications: Start all present applications
  • Stop All Applications: Stop all present applications
  • Reset Warm:      Application is reset and stopped, retain variables remain
  • Reset Cold:        Application is reset and stopped, retain variables are also reset
  • Reset Origins:     Application is deleted, all other files in the application folder on the PLC remain

The last unit includes the options to delete certain areas of the application.
Following options can be chosen:

Erase CODESYS application, configuration and all files in the PLC folder: deletes the whole content inside the application folder located of the flash memory of the PLC, including CODESYS configuration files. 
Erase CODESYS retain area: resets only the retain memory, the application and files inside the application folder remain unchanged.

49. What are the settings in PLC Configuration?

The menu "PLC Configuration" offers extended settings concerning the application functionality and make the PLC more diverse

PLC application on SD-Card:

This setting, once activated, allows running the application from an SD card instead of the internal flash memory. The application and all needed files will be stored on the SD card. This setting helps if the application gets to big and no longer fits into the internal memory or if an easy swap of a plc is needed. Simply insert the SD card into a new plc, activate this setting and the application starts normally.

Warning! This feature can only be used with a specially prepared SD card from Berghof. Normal SD cards from the local electronics store will only be recognized as massstorage device, but not as a system device. If this option is activated without a proper SD card being present, the CODESYS runtime on the plc will not start and it is not possible to load an application! However the web interface will remain active and the setting can be disabled.

XBIO Watchdog is triggered by code in application:

This setting allows deactivating the automatic watchdog trigger for the onboard I/O and instead it has to be triggered from the application. This option is intended for adavanced users only and is for special circumstances only. It is recommended to leave this setting unchecked..

50. How can I find out which application is running on the controller using the web interface?

The menu "PLC info" (PLC-Manager -> Application INfo) reads the application information from the application on the controller and
shows it to the user. With one glance it is possible to see which application is currently running on the plc:

The follwing information is always displayed:

Applicationname:Name of the application of the CODESYS project
Status:The current state as shown in "PLC Control"
Project ID:The ID which was generated by the system
Projectname:This name is taken from the project file name
Projectprofile:CODESYS version which was used to compile the project
Exception (ID):Additional information if there was an exception error in the application

The following information has to be entered manually into the project information inside the CODESYS application in order for the web interface to display the contents:

Projectauthor: Person or company who made the application
Projectversion:Version number of the application
Projectdescription:A short description of the application to let the user know what it does

51. Can I use the web interface to find out which files are present in the application folder on the controller?

Berghof plc’s use Linux as operating system on which the CODESYS runtime is executed. Because of this there is a filesystem present on the controller just like on a PC. All relevant files needed to run an application on the plc are stored in one folder, the so called application folder. The web interface offers the possibility to display all files which are located in the application folder even if they are located in sub-folders. Additionally it is possible to click on each of those files and download them through the browser and store them locally on a PC or Laptop for example. However it is not possible to upload a file to the plc this way, this is done differently (s. 1.32).

52. How can I create a backup of my application using the web interface?

Berghof PLCs have functionality to create a backup image from a running application.This image can be used to restore the application back to a running state in case an error should appear or to equip multiple with the same application. The restore can be performed either over the Berghof USB update script (s. 1.71) or directly over the web interface (s. 1.53). CODESYS is not needed for the restore.
By clicking on the Button “Download folder from PLC”, the plc is going to prepare a TGZ-archive for download. Depending on the size of the application folder this process may take from several seconds up to several minutes. After finishing the archive creating the webinterface will show a hyperlink to the file “plcapplication.tgz”, which can be downloaed

53. How can I restore my application with a backup using the web interface?

To restore an available backup image using the web interface the plc has to be in state “AS_STOP”, otherwise the button “Upload folder to PLC” will be deactivated. When the plc is in state “AS_STOP” you can click on the button “Upload folder to PLC” and the web interface will show the menu “Package Update”. By using the “Browse” functionality you select the “plcapplication.tgz” and download it to the plc with “Send” and by “Start” you begin the restore (s.1.45). Please consider that the saved application on the plc will be overwritten. When files are in the application folder and in the image, the image file will overwrite the existing files without prompt! Files tha are in the application folder but not in the image will be kept, but might be without any functionality depending on the application. After the upload of the backup image is finished a restart must be performed for the changes to take effect.

54. Can I delete all files in the application folder using the web interface?

The last function at the end of the file list in the menu “Application Files” is a deletion of all files in the afore mentioned list. The button “Clean Folder” just like the Upload button is disabled as long as the plc has the state “AS_RUN”. The plc application has to be stopped first (PLC Manager à Control à Stop all Applications) and the button “Clean Folder” can be clicked and after a confirmation the deletion of all files will commence, there is no going back after that.

The main difference between “Clean Folder” function and the option “Erase CODESYS application and all files in the plc folder” (s. 1.48) is, that the “Clean Folder” function does not delete the CODESYS configuration files within the application folder. Custom settings will remain active.

55. How can I check which fonts are on my Berghof PLC using the web interface?

In the menu “Font Files Download” of the web interface it is possible to list the fonts which are currently on the plc.

The menu is divided into two sub units.

The standard fonts of the plc are listed in “System Fonts”, these fonts are installed on the plc by default and can always be used. It is not possible to change or delete the system fonts.

The fonts that were copied in “PLC Fonts” by the user onto the plc are listed in “PLC Fonts”, this list can be extended with new fonts as long as there is enough free memory on the plc.   


56. What diagnose functionality do i have using the web interface?

Berghof PLCs offer different diagnose functionilaty for the whole plc system over the web interface.
There are diagnosing loggings for the CODESYS runtime, plc system, hardware interfaces and memory.
As all loggings are displayed in Linux-format it might be difficult for unexperienced users to understand these logs.
Therefore the plc offers the option to create an image of all the relevant logs in case of an error. This log image can then be sent to Berghof for further analysis.

57. What information is the PLC Diag page showing me?

In the “PLC Diag” menu you can see the logging information of the CODESYS Runtime. Everything CODESYS related as login or logout, application download as well as information of the running application.
Is there an error, where e.g. the plc suddenly stops, it is possible to see the cause in the “PLC Diag”.

58. What information is the System Log page showing me?

On the “System Log” page you can see the logging information of the plc system, which is divided into two categories.
The upper half “System Log” shows the standard linux console, the information displayed here might be relevant outside the CODESYS runtime, as for the bootup, Systemstate, network access, debugging information, etc. The “System Log” is used for extended information gathering in case of faulty behavior of the plc.
The lower half “System Diag” shows the logging of the whole plc system. It records informations like, retain access, state changes in the CODESYS runtime, time stamps of bootups and power fails and every user action over the web interface or over the hardware button on the plc.


59. What information is the Ethernet page showing?

The “Ethernet” page displays information of the ehternet interfaces on the respective Berghof PLC. Again, the information is displayed Linux-format.
You can read information like the MAC-address, configured IP, netmask as well as received and transmitted bytes, etc.


60. What information is the CAN page showing?

The “CAN” page displays information of the ehternet interfaces on the respective Berghof PLC. Again, the information is displayed Linux-format.
You can read information like the BUS-Status, configured Baudrate, as well as received and transmitted bytes, etc.


61. What information is the File System Usage page showing?

The “File System Usage” page displays information of the available memory on the respective Berghof PLC. Again, the information is displayed Linux-format. The relevant information for the user is the available flash memory of the plc, which can be seen in the picture inside the green frame. You can check here the, for the user available flash memory, and how much capacity is used and unused. 

In case of a plugged in SD-Card, an extra log will be added, which is framed blue in the picture, this log has the same information as the log for the flash memory.

All other logs are only relevant for the system and can be ignored by the user.


62. How can I create a System Log image archieve using the web interface?

In order to provide useful support, in case an error occurs with an unknown cause at the first sight, Berghof PLCs have the functionality to create an image archive of the whole diagnosing log.

This archive can then be sent to Berghof for further analysis.

To create the archive you have to open the “System Dump” page in the web interface. Here you just have to click on the button “Create and Save Dump File” and the plc start the archive creation automatically.

The creation might take several minutes. After the archive is created the download dialog of your browser will open automatically and the archive can be saved on a pc.



63. What is the USB update script?

The USB update script is a Berghof exclusive feature which allows the user to perform config updates, application upates, file copies on the plc or firmware updates by using only am USB thump drive without the use of the web interface or CODESYS.

64. How do I use the USB update script?

The USB update script is a predefined folder structure inside the main update folder “usbupdate-mx6”.

Which actions will be perfomed is defined inside the “usbupdate.ini” INI-file. This is INI-file is preconfigured, the user only has to define the actions that should be perfomed with “yes” or “no”.Every sub folder inside the main folder stands for one function, if additional files are needed for this function; they must be loaded into the respective sub folder. Depending on the subfolder there might be additional INI-files for extended configuration, which need to be edited, too. On chapter 1.66 - 1.71 you can see how the individual functions can be configured.    After the USB update script files have been edited, the whole “usbupdate-mx6” main folder has to be copied into the root directory of an USB thumb drive. It has to be considered that the USB thumb drive must be formatted with the FAT32 file system in order to be recognized by the PLC. The USB thumb drive then, has to be plugged into the USB port of the PLC. When the USB thumb drive is plugged, power on the PLC. If a PLC with display is used you will see linux console output on the display indicating that the USB thumb drive has been recognized and that the USB update script is active.If a PLC without display is used, you have to check the state LEDs of the plc. If the USB thumb drive has been recongnized correctly and the USB update script is active, the Run/Stop LED starts blinking orange.After the whole script has been run through, the PLC will reboot automatically, then USB thumb drive can be removed then. 


When using the USB update script, basic knowledge of the structure and syntax of INI configuration files is necessary! A falsly configured INI-file can cause that the USB thumb drive has no effect, that individual configurations are not performed or that the PLC will have a wrong configuration which might lead to unexpected incidents. Further information to the structuce of INI-files can be found here: https://en.wikipedia.org/wiki/INI_file

65. What is the usbupdate.ini and how do I use it?

The “usbupdate.ini” is the main configuration file for the USB update script. Here you set which functions of the USB updates should be performed and which should be left out.
The “usbupdate.ini” is divided in five sections and in every section there it at least one key.
For every section and every key, there is a short description in English.
Almost every key inside the “usbupdate.ini” has either “yes” or “no” as a value, indicating if the function should be performed or not. Some keys will need a filename as a value.
The following five sections are available:

  • [firmware]:        Settings for a USB Firmware Up - or Downgrade
  • [webtheme]:     Settings to exchange the company logo inside the web interface
  • [splashscreen]:  Settings to exchange the shown picture at the bootup of a PLC with display
  • [sysconfig]:       Settings to perform a system configuration
  • [plcapp]:           Settings to perform an application update or a file copy

Every section is related to a folder with the same name insider the “usbupdate-mx6” main folder. Every file that is needed for the each of the functions has to be copied into the related sub folder. As the “usbupdate.ini” is technically a regular textfile, that has a special textformat it can be edited with every texteditor tool. It is recommended that you use an editor tool that recognizes the INI-format and that shows the text format correctly, like the Notepad++.

Every section and the keys inside the section are, except the file names, independent from each other and can be combined freely. Still, it is strongly recommended to not change the order of the functions and keep the default order.

With the free configuration it is possible to create an USB update that changes only on setting, or copies files onto the PLC afterwards without doing an application update. The user can choose the functionality freely and can also create different USB updates for different purposes.

The functions can be set easily by working through the “usbupdate.ini” and enter either “yes” or “no” at the keys.

After the all settings are edited as wished, you save the “usbupdate.ini” and copy the neseccary files into the section sub folders.

66. Which settings can I edit in the firmware section?


The firmware section includes two keys:

  • do_update: Firmware up/downgrade -> yes/no
  • firmware_name: Exact filename of the firmware file -> e.g. firmware_mx6-plc_1.5.0.tgz
    The firmware file must be located inside “firmware” subfolder

67. Which settings can I edit in the webtheme section?

Die Webtheme-Section includes one key:

  • do_update_webtheme: exchange logo in the web interface -> yes/no

The logo must be a gif-picture, has to be named “logo.gif” and must be located in the “webtheme” subfolder.
The logo will be automatically scaled when shown in the web interface, but we still recommend create the picture file in a resoluation that fits the requirements.