0% found this document useful (0 votes)
976 views15 pages

Release Information CODESYS - V3.5 SP6 Patch 4

Info codesys

Uploaded by

Ana Maria C
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
976 views15 pages

Release Information CODESYS - V3.5 SP6 Patch 4

Info codesys

Uploaded by

Ana Maria C
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Release Information

CODESYS
Profile: V3.5 SP6 Patch 4
Release Date: 28.05.2015

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

CONTENTS
Seite
3

General

1.1
2

Responsible for the release


Important Information

3
4

Compatibility Information

3.1
3.2
4

Compatibility Information for End Users


Compatibility Information for OEMs
Known Restrictions

5
8
11

Features and Changes / Addressed Defects

12

Release Information

13

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

3/15

CODESYS

General

This document contains information on a product version which was released in compliance with our quality
guidelines.

1.1

Responsible for the release

Name

Role

Dieter Hess

Product Manager / CEO

Kevin Ketterle

Manager Product Development (Base Technology)

Hilmar Panzer

Manager Product Development (Application Technology)

Thomas Zauner

Manager Product Development (Systems)

Monika Gottwald

Quality Assurance

Responsibilities of the undersigned


Product Management
(Confirmation that the content of the version to be released meets the requirements of the Product
Management)

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

Product Development
(Confirmation that the version to be released was developed in compliance with the relevant process
description)
Quality Assurance
(Confirmation that the version to be released was released in compliance with the relevant process
description)

Kempten, 28.05.2015
____________________(Dieter Hess)
____________________(Hilmar Panzer)
____________________(Kevin Ketterle)
____________________(Thomas Zauner)
____________________(Monika Gottwald)

Note: If you are updating from a version older than this release, then please ensure that you read the release
information documents for all releases since your version.

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

4/15

CODESYS

Important Information

Defective Libraries in CODESYS V3.5 SP6 Patch 2


The IoDrvProfinet, IoDrvEthernetIP and RPC libraries were damaged in the build for CODESYS V3.5 SP6 Patch
2. Therefore, these libraries cannot be compiled at this time.
This causes unrecoverable compile errors to occur when the EtherNet/IP and PROFINET fieldbuses are used
with the latest versions of these libraries.

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

Therefore we urgently recommend you use V3.5 SP6 Patch 3 or newer.

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

3
3.1

5/15

CODESYS

Compatibility Information
Compatibility Information for End Users

LMM: Wrong warnings are shown when there are compile errors (CDS-41523)
Any of the missing library warnings might be a hint to the user for fixing the compile errors.
The code might also contain references to POUs or global variables in libraries marked as optional, so warnings
for those libraries also cannot be filtered in the message output.

Compile: Negative string lengths reported as error (CDS-6656)


New error C0362 introduced for strings with size expressions evaluating to negative values

LMM, Compiler Version: Delete compiler versions < 3.4.0.0 (CDS-39898)


Compiler versions < 3.4.0.0 can no longer be selected by the user.

SysComWin32: Automatic port detection (CDS-42524)


To fix this issue, the compare algorithm for the following setting was slightly changed:
[SysCom]
Windows.CheckWithPortName.0=<String>
In older versions the friendly name of the adapter must contain <String>, now it must start with <String>. Please
check, if you have to adapt your settings in your gateway / runtime system configuration file.

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

RTE: New Microsoft Feature "FullMemoryDiagnostic" destroys code/data memory at runtime (CDS-41643)
RunFullMemoryDiagnostic is disabled by default, as it potentially leads to a system crash if another system is
running on a non-Windows-core.

Library SysFileAsync (CDS-37782)


CmpAsyncMgr now removes an asynchronous job always at the end of the job execution. Therefore, the job
does not have to be removed at the end by the caller manually.
If you use SysFileAsync23.library in your PLC application:
You have to update to SysFileAsync23.library v3.5.6.0 (as well as SysFileAsync.library v3.5.6.0) to avoid
unhandled jobs in multiple, parallel, asynchronous file operations.

PROFINET Editor: Integrate IRT Scheduling (CDS-38577)


This is a preview to be released with V3.5 SP7.
To enable the preview, add the following to the controller devdesc:
<Appearance>
<ShowEditor>PNIOControllerParameters</ShowEditor>
<ShowEditor>PNIOTopologyConfig</ShowEditor>
<ShowEditor>ParameterEditor</ShowEditor>
<ShowEditor>StatusPage</ShowEditor>
<ShowEditor>DeviceInformation</ShowEditor>
</Appearance>

PROFINET IO Master Stack (CDS-35127)


A combination of CIFX-based and 3S Controller in the same project is possible, but some IDE functions (using
communication to PLC) do not work reliably:
Status Page: Diagnostic data and alarms are not shown.
Scan Dialog: Functions Get I&M-Data and Reset to Factory do not work.

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

6/15

CODESYS

CAN Download: Implement Network Scan (CDS-19463)


CmpBlkDrvCanServer and CmpBlkDrvCanClient now support network scan.
Therefore, some incompatible changes were necessary:
- New PLCs are not compatible with old gateways anymore.
- Default network interface name for CmpBlkDrvCanServer was renamed from Canbus0 to BlkDrvCanServer.
- NodeID in configuration file of Gateway will now be used on bus. Please check that there are no NodeID
conflicts.
Furthermore, some new settings were introduced:
- Capability to overwrite the default network interface name
- More than one instance of BlkDrvCanClient is possible.
- Task priority and cycle time of blockdriver can be changed in the configuration file (slowest supported cycle
time is 100ms).

SM: SMC_SetControllerMode does not interrupt the ongoing movement when switching to position mode from
lower mode (CDS-41439)
The interrupt behavior of SMC_SetControllerMode has changed when switching to position mode from current,
velocity, or torque mode to position mode.
Previously, SMC_SetControllerMode did not interrupt an ongoing movement. Depending on the order of
execution of the function blocks, this could lead to jumps in the set position.
The new behavior is that SMC_SetControllerMode will interrupt an ongoing movement when switching to
position mode and the axis is switched on (bRegulatorOn and bRegulatorRealState). The only exception is
MC_Stop, which will not be interrupted by SMC_SetControllerMode.

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

SMC_SetControllerMode itself can be interrupted only by MC_Stop. In this case, it will create the new error
SMC_SCM_Interrupted.

Libraries, Online Change: Online Change for libraries needed (CDS-41378)


Until now (compiler version < 3.5.6.0), a library has been identified by name, vendor and version. If one of these
library attributes is changed, then the library will be a new, different library. The result is that all types in the new
library are incompatible to the types in the previous library. In other words, a function block FB in a library
1.0.0.0 is a different function block in library 2.0.0.0. If the library changes and an online change is performed,
then all instances of this function block are initialized and a copy code is not produced for these instances.
Hence, the values are lost.
As of compiler version >= 3.5.6.0, this behavior changes. If all references to a library have the same version,
then this version is ignored for the identification of the types in the library. Therefore, if the library is attracted
with a newer version, then the types in the library will match the types of the last download or compiler. For
example, the same function block FB in the above example will be identified as the same function block, even if
the library version changes. If the FB changes, then copy code will be produced for all instances. If the FB does
not change, then all instances will be unaffected by the online change.
Please note: If the same library is attracted with different versions, then the version will be important to identify
the types, and online change will have the old behavior.

Visu, Online change: Evaluate and implement complete re-initialization after online changes affecting the
visualization (CDS-37646)
The mechanism that determines how the visualization implements the online change has been completely
reworked to achieve the expected stability. This improvement applies to compiler versions >= 3.5.6,
visualization profiles >= 3.5.6 and runtime systems >= 3.5.5. Older combinations will still use the old
mechanism.
For users working with the visualization, the effect is that all active visualizations will close and restart (for the
target visualization) or restart after a temporary communication error (for web visualization and remote target
visualization) when an online change affecting the data layout of an application is executed. In addition, the new
mechanism tightens the requirement to execute calls to visualization methods (programmatic selection,

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

7/15

CODESYS

programmatically opening dialogs etc.) only from the VISU_TASK. As this requirement was also present before,
due to unimplemented thread safety in the visualization libraries, this is not a compatibility problem.
On multitasking systems, the required name for the task running the visualization is VISU_TASK. Otherwise, a
compilation error will be issued with further information.
On single-tasking systems supporting the visualization and online change, the online changes can delay the
execution of the IEC task for a longer time than before.
For customers working with the VisuElement Toolkit, please refer to the respective section in the toolkit
documentation.

Visu, Styles: Create additional modern style (flat style) (CDS-39404)


Requires both compiler version >= 3.5.6.0 and visualization profile >= 3.5.6.0
Visualization styles:
When using a customized style, it is recommended to add the following new style entries and use them in the
appropriate element properties in order to change the style from the customer style to the flat style without
changing the intended appearance. The new style entries are recommended also for adding visual elements to
any visualization. (The sample style can be used as guideline.)

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

Table element selection color:


New elements will use the stylecolor "table selectioncolor".
In existing elements with used selection and an changed selectioncolor: the color also will be used with the flat
style.
In existing elements with no used selection: there will be no selection with the flat style too.
In existing elements with used selection but unchanged selectioncolor: The selection used to be not visible, as
the selectioncolor white was used. When the flat style is used, now the white selection will be visible.
To have a selectioncolor, that fits to all styles, change the colorvalue to the styleentry "table selectioncolor".
Colors:
BasicElement-Alarm-Fill-Color
BasicElement-Alarm-Frame-Color
BasicElement-Fill-Color
BasicElement-Frame-Color
-> used for the colors for basic elements
Dialog-BackgroundColor
Dialog-ButtonColor
Dialog-HeaderColor
Dialog-ScrollbarColor
-> to change the look for the dialogs like numpad or keypad
Element-Bar-GraphColor
Element-Bar-ScaleColor
-> used for the barelement
Element-Button-FontColor
-> for the button and time selector
Element-Meter-ArrowColor
Element-Meter-LabelFontColor
Element-Meter-ScaleColor
-> for the meter
Element-Potentiometer-LabelFontColor
Element-Potentiometer-ScaleColor
-> for the potentiometer
Element-Table-SelectionColor
-> for the table

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

8/15

CODESYS

Arbitrary Values:
Dialog-UseHeaderColor
-> for the dialogs, see explanation in example style
Element-Meter
Element-Potentiometer
-> for the positioning of scale, see more details to different values in example style

Visu: Semi-transparent drawing (CDS-17581)


With the new feature transparent, drawing semi-transparency can be configured by several elements, such as
the fill color of a rectangle or a polygon. For the web visualization, a target setting does not have to be set. For
the target visualization, the feature must be activated by the device description because additional functionality
is necessary in the device.
The following setting must be set in the device description:
<ts:section name="visualization">
<ts:section name="TargetConstraints">
<ts:setting name="SupportSemiTransparentDrawing" type="boolean"
access="visible">
<ts:value>1</ts:value>
</ts:setting>

3.2

Compatibility Information for OEMs

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

All Platforms: Implement SysCpuGetContext() + SysCpuGetCallstackEntry2() (CDS-21148)


This feature can be used only with the following:
- Compiler version >= 3.5.1.0
- On the following platforms, a compiler definition must be specified in the DevDesc to enable a back trace on
stacks in the runtime system code (external library calls). See CDS-23192:
ARM, CortexM3, MIPS, PPC, SH, x86-64 and x86/WindowsCE
<ts:section name="codegenerator">
<ts:setting name="compiler-defines" type="string" access="visible">
<ts:value>generate_exceptioninfo</ts:value>
</ts:setting>
</ts:section>
- Runtime system >= v3.5.6.0

Implementations:
- New interface function added to detect the call stack out of an external library call:
RTS_RESULT CDECL SysCpuGetCallstackEntry3(RTS_I32 bIecCode, RegContext *pContext, void
**ppAddress);
- SysCpuHandlingOS have to implement the following new helper function:
RTS_UINTPTR *SysCpuSearchOnStack_(RTS_UINTPTR *pSP, RTS_UINTPTR pattern, RTS_RESULT
*pResult)
- If SysCpuGetCallstackEntry2(RTS_I32 bIecCode, RTS_UINTPTR *pBP, void **ppAddress) at the OS
implementation returns ERR_NOTIMPLEMENTED, we do a generic back trace on the stack in
SysCpuGetCallstackEntry3()
Known Issues:
- On WinCE / ARM, an exception in an external C-function cannot be caught by the runtime and it still leads to
crashes (CDS-41404).

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

9/15

CODESYS

Watchdog: In the logger, the OmittedCycle watchdog must be separated from "normal" CycleExceed watchdog
(CDS-40328)
To separate an OmittedCycle watchdog from a "normal" watchdog, the following new exception number is
provided (e.g. in the event CMPID_CmpApp :: EVT_CmpApp_Exception as ulException parameter):
RTSEXCPT_WATCHDOG_OMITTED_CYCLE | RTSEXCPT_WATCHDOG
See SysExceptItf.h for details.
NOTE:
Therefore, if you are not interested in the OmittedCycle watchdog, you have to disable this info to obtain only
the RTSEXCPT_WATCHDOG exception with:
if ( SysExcptIsException(ulException, RTSEXCPT_WATCHDOG) )
...<-- here we handle the watchdog exception independent of the type
In the logger, an OmittedCycle watchdog is now separated from "normal" CycleExceed watchdog.

QNX: Allow tick rate <> 1ms (CDS-38789)


new CODESYSControl.cfg setting
[SysTask]
QNX.SetSystemTick=0
0: The runtime will not change the QNX system tick.
1 (default): The runtime system will set the QNX system tick to 1ms on startup.
If EtherCAT distributed clocks are used, the runtime system may change the system tick at runtime
NOTE: EtherCAT distributed clocks will not work if changing the system tick is disabled by this setting.

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

GACs: Update all referenced GACs to newest version and remove old GAC versions from setup (CDS-40305)
The setup now installs only the newest version of each GAC.
Every customer has to ensure that all GACs referenced by OEM plugins are part of the OEM packages or of the
OEM installation.

CmpBlkDrvCom/CmpBlkDrvUsb: Needs up to 60 seconds until a removed COM port is detected (CDS39807)


Only relevant for OEMs with their own implementations of SysCom or their own miniport driver for
CmpBlkDrvUsb:
Now the CmpBlkDrvCom evaluates the result of the function SysComRead(). Please check that SysComRead()
returns a valid result code in all cases. All error codes different from ERR_OK and ERR_TIMEOUT will be
handled as errors and the CmpBlkDrvCom will close the communication interface. The same is true for
CmpBlkDrvUsb and the result of the miniport drivers Read() function.

CmpSchedule: Improvement of watchdog handling needed to avoid deadlocks in external library calls CDS38927
If a watchdog exception occurred in an external library call, we do not suspend the IEC-task immediately. In this case, we
mark the task to suspend, set a breakpoint at the exit of the external library call, and let the task run out of the external
library call. If we reach the breakpoint, we suspend the task here.
This feature can be used only with the following:
- Compiler version >= 3.5.6.0
- In the DevDesc, you have to specify the following setting (see CDS-41052):

<ts:section name="codegenerator">
<ts:setting name="breakpoint-mark-after-external-call" type="boolean"
access="visible">
<ts:value>1</ts:value>
</ts:setting>
</ts:section>
- On the following platforms, a compiler define must be specified in the DevDesc to enable
back trace on stack in runtime system code (external library calls). (see CDS-23192):
ARM, CortexM3, MIPS, PPC, SH, x86-64 and x86/WindowsCE
<ts:section name="codegenerator">

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

10/15

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

<ts:setting name="compiler-defines" type="string" access="visible">


<ts:value>generate_exceptioninfo</ts:value>
</ts:setting>
</ts:section>
- Runtime system >= v3.5.6.0

3S-Smart Software Solutions GmbH

CODESYS

CODESYS Inspiring Automation Solutions

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

11/15

CODESYS

Known Restrictions

Component

Description

Return of licenses (License


Manager

Not supported for device licenses

64-bit RTE

CANopen on 64bit version is not


supported.

64-bit Control Win

Setup available in customer


download area

64-bit Libraries

Missing 64-bit support for


fieldbus libraries

CDS-27530, CDS-27547, CDS27543, CDS-27532

CmpHilscherCIFX: 64bit driver

CAN, DeviceNet and EthernetIP


are not available for this release
for 64-Bit Targets. This portation
is covered by separate jiras
(CDS-27545, CDS-41339 and
CDS-41343).

CDS-29568

CmpSchedule: Improvement of
watchdog handling

This improvement does not work


on Linux and on VxWorks PPC

CDS-42284

WebServer: SSL support

Not supported on Control RTE


and Control RTE x64, QNX and
VxWorks

CDS-29361

OpenSSL

Available for webserver as a


runtime component, no support
for RTE, QNX and VxWorks

CDS-39063

Profinet I/O Master Stack

Detach/Reconnect Profinet
Saves from network: If this is
repeated several times with a
large number of slaves,
connection fails (CDS-42267)

CDS-35127

Only one controller instance per


PLC possible (CDS-41822 +
CDS-41780), in case of RTE the
used network interfaces have to
be of the same type (CDS37463)
A mix of CIFX-based and 3S
Controller in the same project is
possible, but some IDE functions
(using communication to PLC)
do not work reliable:
Status-Page: Diagnosis-Data
and Alarms are not shown.
Scan-Dialog: Functions Get
I&M-Data and Reset to
Factory dont work.
QNX

3S-Smart Software Solutions GmbH

The QNX runtime is not available


at the time of the release.

JIRA ID

CDS-26049

CODESYS Inspiring Automation Solutions

12/15

CODESYS

Features and Changes / Addressed Defects

The link below leads to an Excel sheet which contains information on the new implementations and changes in
the current version:
Key, Summary, Description, Resolution, Priority, Issue Type, Components, Target User Group, Fix Version,
Release Note
Special release information for OEM partners can be found in the RID note with the filter Target User Group for
OEM or OEM and End User.
Features and Changes_Addressed Defects CODESYS V3.5 SP6 Patch 4.xls

OPC UA Server (CDS-5499)

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

An OPC UA server is now available as a runtime system component. The OPC UA server actually
supports the "Micro Embedded Device Server Profile". OPC UA will ship by default with CODESYS Control
Win V3, CODESYS Control RTE V3 and CODESYS Control for Raspberry Pi.

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

13/15

CODESYS

Release Information

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

This chapter describes the tests conducted during the release of the above mentioned version and the
corresponding results.
Test

Environment

Result

CAN

RTE

Passed / Released

Compatibility

Passed / Released

Compatibility - Internal
(Autotest)

Passed / Released

Compatibility (Autotest)

Passed / Released

Compatibility Libraries
(Autotest)

Passed / Released

Compatibility RTS

Passed / Released

Compile (Autotest)

x86

Passed / Released

Compile (Autotest)

PPC

Passed / Released

Compile General (Autotest)

Win7/64 Bit

Passed / Released

EtherCAT

Control RTE

Passed / Released

EtherCAT (Autotest)

Control RTE, Ethernet Chip Intel Pro 100


Control RTE, WinXP/32 Bit

Passed / Released

EtherCAT (Autotest)

Linux, PPC

Passed / Released

EthernetI/P (Autotest)

Standard Ethernet
ControlWin

Passed / Released

Example Applications
(Autotest)
FBD

Passed / Released
Win8/32 Bit

Passed / Released

FBD_Codegen

Passed / Released

Flow Control - LD/FBD

Passed / Released

IEC Variable Access (Autotest)

Passed / Released

IO Configuration

Passed / Released

IO Configuration (Autotest)

Passed / Released

LD

Passed / Released

LD_Codegen

Passed / Released

Licensing Gate (Autotest)

Passed / Released

Monitoring

Passed / Released

Monitoring (Autotest)

Passed / Released

Online Change (Autotest)

WinControl V3

Passed / Released
Passed / Released

Online Help - Patch


OPC Server UA

ControlWin

Passed / Released

OPC Server UA

Control PPC

Passed / Released

3S-Smart Software Solutions GmbH

CODESYS Inspiring Automation Solutions

OPC Server UA

14/15

Control Raspberry PI

Passed / Released

Performance - Internal
(Autotest)

Passed / Released

Performance (Autotest)

Passed / Released

Performance (Autotest)

Passed / Released

PLC Handler

Win7/32 Bit

Passed / Released

PLC Handler (Autotest)

Windows

Passed / Released

Profibus - Online

NetX

Passed / Released

Profinet (Autotest)

Control RTE APIC Win7/32 Bit


IEC-Stack

Passed / Released
Passed / Released

Quality Gate
Runtime - Full (Autotest)

Win7, Control Win

Passed / Released

Runtime - Full (Autotest)

Control RTE, Win7/32 Bit

Passed / Released

Runtime - Full (Autotest)

Control RTE 64 Bit, Win7/64 Bit

Passed / Released

Runtime - Full (Autotest)

Control Win, Win7/64 Bit

Passed / Released

Visualization - Online - Quality


Gate

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

CODESYS

Visualization - Online
(Autotest)
Visualization - Online
(Autotest) - Quality Gate
Visualization - Online
(Autotest) - Quality Gate

3S-Smart Software Solutions GmbH

Target Web Visu


Web Server: Control Win
Browser: Chrome, Win7
Target Visu
Runtime: ControlWin, Win7

Passed / Released
Passed / Released

Win7, Control Win, Target Visu

Passed / Released

Win7, Control Win, Integrierte Visu

Passed / Released

CODESYS Inspiring Automation Solutions

15/15

CODESYS

Document Release
Monika Gottwald

QA

20.05.2015

Reviewed

Benjamin Schurr

QA

28.05.2015

Released

Benjamin Schurr

QA

28.05.2015

Template: Vorlage_tecdoc_Release_Information_V1.0.dotx

Created

3S-Smart Software Solutions GmbH

You might also like