Release notes for version
This article contains the release notes for logi.CAD 3 version 3.23.0.
Up-to-date informationen within online-version
Please check the online-version (provided under http://help.logicals.com/) whether new pieces of information have been added since this user manual (as PDF/HTML/Word) has been published; e.g. the release notes quote new problems or there are new articles in the troubleshooting- or FAQ-section.
The online-version of the release notes for logi.CAD 3 is available under: https://help.logicals.com/lco3docu/latest/user-documentation/de/release-notes-fuer-version – Use the version picker (above the
table of contents) to switch to the relevant version of
logi.CAD 3.
Release-Notes for previous versions of logi.CAD 3 are provided in the online-version under https://help.logicals.com/lco3docu/latest/user-documentation/en/release-notes-fuer-version only.
General information
About compatibility: |
If you have used a previous version of logi.CAD 3 and you want to use the current version, see "Are my projects upwards and downwards compatible?" for important information. Recommended, if you are using projects that have been created in a previous version of logi.CAD 3: Clean the imported projects.
|
On the Log4j security vulnerability: |
See "Is the IDE affected by the Log4j security vulnerability (December 2021, CVE-2021-44228, Log4Shell)". |
About system libraries: |
|
About the illustrations in the IDE documentation: |
Depending on the configuration of your logi.CAD 3 version, the FBD-editor and its elements might be displayed differently in your logi.CAD 3 version than illustrated in the IDE documentation. This is the case, if logi.cals or the system integrator has changed the styles for the FBD-editor. Subsequently, the illustration in the IDE documentation are symbolic images and the representation in your logi.CAD 3 version takes precedence for the valid representation. In case of doubts, please contact logi.cals or your system integrator. See "Color and style for FBD-elements determined by data type" for details. |
General information for runtime system and target systems
About t he →runtime system : |
If you are using logi.CAD 3 version 3.23.0, install and use the version 5
.17.0
of the runtime system.
If you are using an older version of the runtime system, it might not be possible to successfully connect to the target system from within logi.CAD 3 (see troubleshooting article "No connection to the target system, but there are error messages)". |
About →Raspberry Pi : |
See the tutorial "Putting Raspberry Pi into operation" which version is recommended by logi.cals for usage. |
New features in logi.CAD 3 version 3.23.0
This section informs you about the latest new features for this version.
ID |
Component |
New feature |
50673 |
Validating an application |
The existing rule Connections from an output of a function block are not allowed to a VAR_IN_OUT variable has been renamed to An output of a function block must not be assigned to a VAR_IN_OUT variable. Likewise, the description of the rule and the message reported for the respective rule violations has been adjusted. The behavior of the rule itself has not been changed. |
57018 |
Artifact identity |
The new feature "artifact identity" provides the ability to check all relevant artifacts regarding their identity and integrity. With this feature enabled, one identity per artifact (also known as artifact identity) is automatically created when the artifact is saved in a qualified editor of the IDE. If the artifact is created or modified outside the IDE, the IDE informs you of the non-matching artifact identity during the following actions:
The feature assists in ensuring that only checked changes to the relevant artifacts of an application are loaded onto a target system or provided in a library. The feature is especially useful when developing safety-related applications and is usually enabled, provided and possibly enhanced by system integrators. Details about the feature: See
"
Checking the identity and integrity of artifacts
"
|
57969 |
Access control |
Use the new feature "access control" to regulate access to individual features of the IDE. Mind the following: When access control is activated, it applies to all projects that are newly created in the IDE version. See "Controlling the access by using the access control" and the articles below it for details about the feature, how to activate it, and how to use it. |
58943 |
System blocks |
Now you can use blocks from the new library PLCopen Safety in your applications. Observe that the library PLCopen Safety is not provided in all variants of the IDE. |
59547 |
FBD-editor |
If you want to create a new variable in the FBD-editor, you can use the new command Variable(s)... The command opens the dialog for creating variables, which you may already know from the list of declared variables. After you have specified the data for the variables (e.g. the name and the data type), click OK. Then position the value field with the new variable in the drawing field. You can find the new command in the context menu for the drawing field under Create. |
59594 |
List of the declared variables |
The dialog for declaring variables has been improved as follows:
|
59655 |
Building the application |
Previously, it was only possible to build the application for a resource because the Build Application button in the Instances view was only enabled when a resource was selected. Now the button is also enabled when a configuration is selected in the Instances view. Hence you are able to build the applications for the resources of a configuration in one go. |
59792 |
Safety parameter editor |
The safety parameter editor has been revised for IDE version 3.23.0. The most important changes are:
The current behavior of the safety parameter editor is described in the section " Hardware parameterization using the safety parameter editor " . |
59828 |
Validate application |
The standard package of the IDE provides 4 new rules:
By default, these rules are not activated so the behavior to date is still valid. As usual for rules, you can change the configuration of rules. |
59936 |
PLC-object |
The limit for the target system parameters in the PLC-object has been increased from 1024 characters to 4096 characters. |
60048 |
ST-editor, interface, building the application |
If an →interface uses complex data types, such as →structured data types, the relevant Include statement for the data type is now inserted into the auto-generated H-file. In order for an existing project to be affected by this change, you need to clean the existing project. By cleaning, the H-file with the Include statement is created again. |
60061 |
Safety-relevant applications, system blocks |
The following blocks of the system library Standard are supported when using a version ≥ 3.23.0 that is qualified for developing safety-relevant applications and/or libraries:
These blocks are not supported for previous versions. More information:
|
60072, part 1 |
Safety-relevant applications, system blocks |
The
SIZEOF block of the system library Standard is supported when using a version ≥ 3.23.0 that is qualified for developing safety-relevant applications and/or libraries. More information:
Moreover, the SIZEOF block has been revised as follows:
|
60072, part 2 |
System blocks |
The following blocks have been restricted in their usage:
Instances of function blocks with a →generic data type (such as ANY) cannot be used as inputs of these blocks anymore. If you do it anyway, there will be a linking error when building the application. As a consequence of the restriction, the following system blocks cannot be used as block input of the above-mentioned system blocks: LIMITER_O, LIMITER_U, FORCEMRK, MAX_HOLD and MIN_HOLD |
60335 |
Application navigator, global variables |
The IDE provides an easier method to declare an external variable (VAR_EXTERNAL) in the FBD-editor so that it is not necessary to know the name and data type of the basic global variable anymore. Just drag the global variables that are displayed under the folder Resource-Global Variables within the application navigator into the FBD-editor. Mind the following difference:
If the POU already contains an external variable with the same name, the IDE updates the respective external variable according to the specifications of the global variable. See " Declaring external variables by dragging and dropping global variables into POUs " for details. |
60586 |
Building the application, SDK API |
A suboptimal definition of the values for true and false has been improved: The defines LC__EL__true and LC__EL__false in the file lc3tdiectypes.h have been revised (this file is included in the SDK API of logi.CAD 3/logi.RTS). This does not change anything in the generated code, but it may change the binary code because the compiler might generate more efficient code due to the change. |
New features relating to the runtime system and target systems
ID |
Component |
New feature |
|
|
none |
Fixed problems in logi.CAD 3 version 3.23.0
ID |
Component |
Fixed problem |
56591 |
LD-editor |
A ladder diagram cannot be saved under a different name. |
59209 |
Data types, building the application |
A change in the automatically generated C/H file for a data type is not checked. |
59222 |
Build log |
Resizing of the build log does not work as expected. |
59237 |
Licensing |
A wrong license may be used, although the configuration variable -Dlc3.cm.serial is set correctly. |
59264 |
Creating custom libraries |
A PDF file within a library cannot be opened. |
59268 |
LD-editor |
The LD-editor for an LD-object already locked by a different user is not opened in a read-only mode. |
59272 |
LD-editor |
An expression for an input for a function block cannot be entered as expected. |
59356 |
Application navigator, global-object |
An exception might occur when a global-object is renamed in the application navigator. |
59755 |
ST-editor |
A changed physical address in a global-object might not be correctly considered for the C-code. |
59816 |
Test framework |
The test coverage is not calculated correctly due to an empty line after the statement. Partially Covered: Cannot analyze branch info: branch 0 was taken -1 times, branch 1 was taken 33 times" The information -1 times does not match the expectations. The reason is that the test coverage is not calculated correctly due to an empty line after the statement. |
59863 |
Test framework |
The test coverage for assignments with array elements may not match the expectations. |
59900 |
Test framework |
Comments within the ST-editor may be considered for the representation of the test coverage. |
60029 |
Application navigator, global-object |
The re-dragging of the global-object within the application navigator causes an exception. |
60109 |
Validating an application, building the application |
Vendor blocks or other library elements with the suppressWarning statement cannot be used within the application. |
60370 |
IDE Documentation |
The article "The structure of the needed H-file" in the English IDE documentation contains German text. |
60374 |
IDE Documentation |
The article "Showing/hiding not connected in-/outputs" contains wrong information. |
60453 |
Building the application |
Building an application might lead to linker warnings. |
60690 |
Test framework |
A test with a typed literal for an initial value is not executed correctly. |
60852 |
Test framework |
An exception is caused when executing a test if the POU is located in a namespace. Incomplete data acquisition (one or more variables do not exist in the PLC). (Error code: 0x10303 (66307).) |
Changes affecting the code generation
The following changes in logi.CAD 3 version 3.23.0 affect the automatically generated C-code (and thus the built application), even if you do not make any changes in the application yourself. Observe that when you load the application, the changed code will be loaded onto the PLC.
Change |
Starting with version |
More information on the change |
Changed specification -0.0 in the C-code (when -0.0 has been entered in the ST-code) SAFETY |
V3.21.0 |
See ID " 56121 " in the release notes of the specified version |
Inserted cast LC_TD_REAL or LC_TD_LREAL in the automatically generated C-code (when REAL#-0.0 or LREAL#-0.0 has been entered in the ST-code as typed literal)SAFETY |
V3.21.0 |
See ID " 55996 " in the release notes of the specified version |
Changed result when dividing the minimum value for a data type by -1 and for a return value of the same data type SAFETY |
V3.22.0 |
See ID "56417" in the release notes of the specified version |
Changed order for statements within an FBD network with a feedback loop (in the default configuration) SAFETY |
V3.22.0 |
See ID "57509" in the release notes of the specified version |
Changed order for statements within an FBD network with a feedback loop (in the case of -Dlc3.fbdPreserveFunctionOutputs=TRUE) |
V3.22.0 |
See ID "57550" in the release notes of the specified version |
Changed determination of the memory size for the SIZEOF block: new determination by the data type of the input IN, formerly: determination by the transferred element |
V3.23.0 |
See ID "60072" in the release notes of the specified version |
Restricted usage for the SIZEOF block, MEMCMP block, MEMCPY block and MEMSET block |
V3.23.0 |
See ID "60072" in the release notes of the specified version |
Improvement of a suboptimal definition of the values for true and false; This does not change the generated code but it is possible that a different binary code is generated. |
V3.23.0 |
See ID "60586" in the release notes of the specified version |
Note: The flag SAFETY means that the change must be taken into account in particular when developing safety-relevant applications. A change without this flag applies to a functionality/configuration which is not supported for the development of safety-relevant applications. |
Known problems in logi.CAD 3 version 3.23.0
ID |
Component |
Known problem |
49494 |
Application navigator, |
When several function blocks have been created in the same ST object, the command "Delete" in the application navigator deletes all function blocks in this ST object without any previous information. |
49498 |
Application navigator |
The command "Go Into" in the application navigator does not behave as expected. |
59175 |
Teaming up to create applications, vendor blocks |
The automatically generated H-/C-files for vendor blocks are not automatically locked. The editor for them is not opened in a read-only mode. |
59213 |
"Instances" view, vendor blocks |
The fingerprint of the application is not updated in the "Instances" view when changing C-sources. |
59774 |
Building the application |
Changed applications for PTK GCC 10.2.x may fail to build. ninja: error: FindFirstFileExA(c/:/prj/bur/saturn/runtime-spdesigner/counter1/src-gen): The filename, directory name, or volume label syntax is incorrect. Additional information: The problem occurs only if the platform toolkit does not contain the forceRebuild setting or the setting is set to FALSE. |
60255 |
FBD-editor, "Problems" view |
The quick fix to resolve errors in the"Problems" view may not work.
Workaround: none existing |
60268 |
Test framework |
A test suite with a name that is too long cannot be exported to Excel. 'Exporting test suite to Excel' has encountered a problem. An internal error occurred during: 'Exporting test suite to Excel' Cannot invoke 'org.osgi.framework.BundleContext.getBundle()' because the return value of 'com.logicals.lc3.api.common.BundleInformation.getBundleContext()' is null Workaround: Shorten the name of the test suite. |
60703 |
Validating the application |
Syntax errors might be caused when using the content assist to suppress warnings for rule violations.
Workaround: none existing |
60726 |
IDE |
The changed file association is ignored for opening a data type from a library configuration. |
60771 |
Migration |
The migration of constants may cause an error in the target project. |
60776 |
LD-editor |
No emphasis is displayed when reconnecting existing link elements within the LD-editor. |
60783 |
Access rights |
A dialog for saving the changes is displayed by mistake. |
60825 |
Interface editor |
The preview of the interface editor is not updated correctly when undoing the creation of a value field. |
60829 |
Interface editor |
It may not be possible to undo the creation of a comment field within the interface editor. |
60833 |
Interface editor |
The deletion of elements within the interface editor may need to be undone twice. |
60996 |
Application navigator |
Renaming a program instance may also change the name of the PLC-object. |
61082 |
Access control |
It is possible to delete resources without the appropriate access control rights when using the quick access search bar. |
61094 |
Opening help |
The local help is not opened for the PLCopen blocks. |
61158 |
Access control |
It is possible to open the project settings without the appropriate access control rights when using the quick access search bar. |
If your problem is not listed in this list, check these sections: Troubleshooting and FAQ
Addendum: Known issues after the release of logi.CAD 3 version 3.23.0
This section was last updated on: 2023-12-13
For issues discovered after the release of logi.CAD 3 version 3.23.0, please refer to the release notes of the successor versions. Both the list of known problems and the list of fixed problems might contain descriptions of problems that are relevant for logi.CAD 3 version 3.23.0.
Issues that have been reported after the successor version has been released are listed below. This list is updated at regular intervals (see the date after the section heading). If you need more up-to-date information, please contact logi.cals .
ID |
Known problem |
60476 |
The order of 2 illustrations in an article of the IDE documentation is wrong. |
61086 |
It is possible to rename resources without the appropriate access control rights when using the quick access search bar. |
61162 |
The access control configuration of one project with the deactivated feature "Edit access control configuration" can be manipulated after copying files from a different project with activated feature. |
61171 |
The "Team Monitor" view does not determine the status changes on the team server at the expected interval. |
61175 |
It is possible to turn a folder into a namespace folder and vice versa without the appropriate access control rights to edit the application logic.
Workaround: none existing |
61179 |
An exception is caused when selecting the command "Access Rights..." in the application navigator. |
61183 |
It is possible to assign a USING instruction for accessing a namespace folder and delete this instruction without the appropriate access control rights to edit the application logic.
Workaround: none existing |
61187 |
The artifact identity is not created/updated when turning a folder into a namespace folder or assigning a USING instruction for accessing a namespace folder. |
61191 |
In case of the deactivated feature "Edit application logic", the file for the artifact identity is not created when saving an already changed editor under a different name. |
61203 |
An exception might be caused when importing an existing access rights configuration. |
61395 |
An exception is caused when creating a project, if the IDE was started with enabled access control and with the -noSplash option. |
62166 |
The online help, local HTML help, and PDF files might not contain the complete list of blocks with internal error diagnostics.
Additional information: The problem affects the online help prior to October 10th, 2023 but also local HTML helps and PDF files created for this release and/or previous releases. |
62735 |
A STRING variable cannot be changed in the dialog. |
62748 |
The list of the declared variables might still display the changed data type although the change for the data type has been undone. |
62759 |
Dragging and dropping a global variable with a physical address onto the POU within the application navigator creates a faulty external variable. |
62764 |
Information are not transferred to the external variable, if a global variable is dragged into the FBD-editor. |
62769 |
Deleting a global-object causes the PLC-object (containing a reference) to be highlighted as faulty. |
62839 |
Special characters within OLT fields are not evaluated as expected when debugging an application. |
62893 |
When pasting a value field with a variable for an existing FBD-element, the IDE documentation differs from the implementation.
In reality, the existing FBD-element is highlighted as faulty, namely the connector Motor1. |
63454 |
Overlapping lines prevent the clear determination of the connected FBD-elements.
|
106944 |
The initial value of declared variables might not be changed. |
106952 |
The application cannot be built if the characters * / are contained in a property field in FBD. The application for the PLC (resource "name1", platform toolkit "name2") cannot be created/loaded. Check the views "Error Log" and "Problems" for more information. An error occurred during compiling or linking the code image (error code: 1). Workaround: Do not use the characters * / in the string literal on the right side of the assignment operator ":=". |
106958 |
The application cannot be built if the characters */ are contained in a property field in ST. The application for the PLC (resource "name1", platform toolkit "name2") cannot be created/loaded. Check the views "Error Log" and "Problems" for more information. An error occurred during compiling or linking the code image (error code: 1). Workaround: Do not use the characters */ in the string literal on the right side of the assignment operator ":=". |
107041 |
A global-object can be renamed to an invalid name in the application navigator. |
107075 |
The call of a block can be enlarged, although this should not be possible. |
107232 |
The call of a function block in a value field is incorrectly highlighted as safe logic. |
107327 |
The global-variables-editor might not display the expected icon for some variables.
This means that the icon
or
is displayed for such variables in the global-variables-editor. But only the icon
should be used for this. |
107379 |
The IDE documentation differs from the implementation in a special case for replacing a block call.
Here is the illustration from the IDE documentation in which the value field with the access SR1.Q1 became faulty after a block SR has been replaced by a block TON: |
107391 |
It might not be possible to build the application due to a called method. The application for the PLC (resource "name1", platform toolkit "name2") cannot be created/loaded. Check the views "Error Log" and "Problems" for more information. An error occurred during compiling or linking the code image (error code: 1). After the attempt to build the application, the messages are displayed in the Problems view. Here are the messages for the customer scenario in which the problem occurred: 'LC_VD_GAUC_TESTARRAYGLOBALVAR' undeclared (first use in this function) expected expression before 'LC_TD_FunctionBlock_APPLICATIONCOREx2EFB_TESTFB' expected expression before 'LC_TD_FunctionBlock_APPLICATIONCOREx2EFB_TESTFB' implicit declaration of function 'LC_GV_ACCESS_ARRAY'; did you mean 'LC_GV_ACCESS_FB'? [-Werror=implicit-function-declaration] Workaround: none existing |
107403 |
Moving/copying a subfolder into a namespace folder does not update the namespace for the included objects. |
107419 |
Objects in nested namespace folders do not have a nested namespace. |
107430 |
Undoing/Redoing the delete action for all sections does not work as expected. |
107660 |
Information about particular DiagCode is not included in the HTML help for 3 PLCopen blocks.
Additional information: The information is not included in the HTML help for V3.23.0 and V3.23.1. However, it was added to the online help as of V3.23.1 in the middle of November. |
108185 |
Wrong C-code is generated, if you call a function block instance declared as an in-out variable. Subsequently, it is possible that memory on the PLC is overwritten. Example
FUNCTION_BLOCK MyFBwithIO VAR_IN_OUT iMyFB1 : MyFB1; (* The function block 'myFB1' is used as type for the function block instance declared as in-out variable. *) END_VAR iMyFB1(); (* Here the function block instance is called. *) END_FUNCTION_BLOCK FUNCTION_BLOCK MyFB1 ... END_FUNCTION_BLOCK Workaround 1: Do not declare a function block instance as an in-out variable. |
Checksum for components of logi.CAD 3 version 3.23.0
This section is not relevant for logi.CAD 3 version 3.23.0 .
Component |
Version |
Checksum |
Description |
logi.CAD 3 IDE |
version 3.23.0 |
--- |
|
system library Standard |
version 3.5.0 |
--- |
|