Service Pack 1 for UniLogic, 1.41.xx
This Service Pack provides the new functions and bug fixes listed below.
New Functions
| Redfish |
Redfish Update and Task Services Support: UniStream PLCs now support the Redfish UpdateService and TaskService, enabling asynchronous firmware and UniLogic application updates via standard Redfish actions. Supports application, firmware, and combined updates, including staged updates. Firmware and software inventories are exposed through Redfish URIs, with runtime service control available via Ladder logic. Redfish Object Project Configuration:
Redfish Events and Alerts Support:
Certificate Handling Updates:
Mutual TLS (mTLS) Support:
Cooling Model Updates:
Valve Control:
Licensing Support:
Additional Enhancements:
|
REST API: You can now select text/xml as both Content Type and Accept for REST API requests.
In addition, the predefined XML and JSON types have been standardized to use application/xml and application/json.
UniLogic now supports the GSM-KIT-50 modem for reliable SMS send and receive functionality over a 4G network.
IO-Link now supports a new temperature analog Hub; ULK-08AIRT-M2P6 - IO-LINK HUB, 8AI Temp, MI2, IP67
BACnet Server: You can now use a searchable drop-down list in the Units property when defining BACnet I/Os attributes, enabling faster selection from the full BACnet units set.
HMI Editor Additions: Use the new Bitmap Grid widget to display PLC-controlled, grid-based graphics on the HMI. The PLC writes color values to a buffer and triggers a redraw to render deterministic and repeatable visual content.
Note: Supported on iMX6 platforms only.
UniApps: Network>Ethernet>Debug: Enhancements to network storm handling introduce a unified Debug interface, allowing configuration of Storm Detection Sensitivity and Traffic Rate Limits for improved protection and analysis.
System>Storm Detection Struct: A new system struct has been added to improve network storm debugging.
- The struct records details of the last packet received before a storm is detected, including MAC address, IP address, IP packet type, and the first 100 bytes of raw packet data.
- The struct adds storm counters, with Ethernet MIB counters updated periodically on IMX25/IMXRT platforms.
RTC: UniLogic now supports Network Time Protocol (NTP). A new Ladder function, Sync Clock Using NTP, has been added to synchronize the PLC time using a specified NTP server and optional time zone offset. The UniStream Panel network is implementing this functionality.
VNC Client now includes an Auto Stretch function that optimizes display scaling for seamless viewing across different screen configurations, improving "All-in-One" performance on Built-in & USL controllers. This enhancement reduces rendering overhead and boosts system efficiency. The scroll bar has also been improved for easier navigation.
To enable Auto Stretch, navigate to UniApps>System>Network>VNC Client and select Stretch.
Bugs fixed in this patch
UniLogic might crash when compiling projects if tag names were changed without revalidating operand assignments. This occurred in two scenarios:
- Web Server projects, where renamed tags caused crashes or invalid HTML links.
- Projects using Custom Controls, where renamed tags led to invalid or null operand references.
HMI:
- The PDF Viewer did not load properly when the file was missing, showing the initialization screen due to a path resolution error (filename not appended to the directory). This issue could cause the HMI to collapse when interacting with the PDF element.
- In certain cases, the HMI could freeze on power-up when reading the MAC address via the HMI Service, leaving the touch screen unresponsive and the alarm banner stuck.
- An HMI overload could occur due to an EGL context crash, resulting in repeated errors and a black screen on USP-104-B10 controllers.
Alarms:
- UniLogic allowed creating an empty Alarm Group which caused alarms not to be identified correctly.
- When using the Alarms module with 'Display Mode: Simple', the Alarm Summary list failed to load and caused the HMI to freeze.
- The Alarm Status View widget did not display any text in the Name column.
- The Alarm Summary list failed to indicate active alarms.
WebServer:
- Accessing the WebServer resulted in an Error 500 (Internal Server Error) message.
- Using a Hyper Link element configured with a constant link (#"/"), caused the WebServer to display Error 500.
- Timers on web pages configured with editable preset values (read-only unchecked) caused an internal server error.
REST API:
- When a POST/PUT request was created with a JSON or XML content type and included content tags, duplicating the request and changing its content type to text/plain or octet-stream might cause UniLogic to crash—either immediately upon opening the duplicated request or after saving and reopening the project.
- Special characters such as $ in query parameters were not handled correctly, causing requests to fail.
- REST requests could remain stuck in "IN PROGRESS" when the target URL did not respond as expected, requiring a PLC reboot to recover. A new timeout mechanism was added.
- When creating a POST request with a JSON payload, the Content Parameters section did not provide a buffer option, preventing large payloads or tokens from being sent.
Redfish:
- In certain cases, the pump speed (RPM) value in the Redfish interface did not update, even though the corresponding tag displayed the correct value.
- In certain cases, the PLC could incorrectly report 'Too Many Registrations', when the Redfish server resets.
Certain 'Load Screen' actions could cause a QML crash, resulting in an indefinite hourglass and preventing the screen from loading. The issue was caused by incorrect User Control syntax.
The Power Flow color selection drop-down menu was unavailable.
In certain cases, UniLogic might crash when changing the PLC model in projects containing linked Data Tables.
COM Module Ports: The 'Time from First Byte' and 'Number of Bytes Waiting' struct members were not updated by the firmware on US15-B10-B1 controllers.
UniLogic might crash when using the 'Set Value' action within a Custom Control.
BACnet Server: Connection to the server failed when the PLC time zone was set to a negative value.
BACnet Client:
- Ethernet: Aperiodic requests could take 3–7 seconds to complete when multiple devices were present on the network.
- MSTP: MSTP responses could be extremely slow (~20 seconds or more) or not received at all under certain network conditions, even though devices responded normally in external tools.
- The BACnet Client Send Request Ladder element supported only UINT8 indexes, while the client tag list allowed indexes up to 1023. Setting values above 255 caused failures.
Motion: Importing the VFD diagnostic application caused a compilation error.
MQTT: The 'Last Will' message payload was sometimes sent incorrectly, resulting in partial or corrupted text being received by the broker.
Load UDTF from File: Updated status message -5: File not found. Verify and correct the file path.
UniApps: The 'Ignore Popups' setting did not display the Enable/Disable check box as expected on US15-B10-B1 controllers.
Copying and pasting a 'State Machine Button' could cause UniLogic to crash.
Downloading retained tags via UniStream Management → Download Retain Tags could fail after adding non-retained tags to the application. The issue occurred even when the new tags were unrelated to retained data.
UniLogic could remain stuck in a status polling loop after successfully formatting an SD card via UniStream Management → Format SD.
OPC UA:
- Changing the PLC IP address did not update the OPC UA Server Certificate, preventing clients from connecting after the IP change.
- After updating to version 1.41.213, some PLCs could fail to connect to the OPC UA server, returning a -9 error (Internal Error, Contact Support).
UAC: Compiling a project with UAC enabled could cause UniLogic to crash if a Custom Control element on a screen was configured with Level = None.
RTC: In certain cases, PLC Date/Time errors may appear during startup or after synchronization due to a timeout while retrieving the public IP as part of the time-API request.
Ethernet/IP: EDS files (version 1.41.212) were incorrectly parsed, causing Input and Output data definitions to fail during import.
UniLogic might crash when formatting SD cards larger than 32GB directly from UniApps.
Modbus:
- When converting a remote slave from Modbus TCP to Modbus Serial, compilation could fail due to an invalid Slave ID error, even after the Slave ID was updated to a valid range.
- Remote slaves imported into the project were correctly displayed in the Modbus configuration; however, their associated struct tags were not available for selection in the Modbus Aperiodic Ladder Function block.
- In certain cases, modifying the Modbus Master configuration would cause the PLC to become stuck during download and could only be recovered by rebooting the controller.
- In US5-B3-R18 configurations using Modbus slave Ethernet with multiple US5-B5-TR22 units, restoring power could cause Modbus communication to stop and the HMI to become unresponsive, requiring an Ethernet disconnect and PLC power cycle to restore operation.
FTP Server: In certain cases, when using USP series controllers, file uploads to the server failed regardless of the related configuration checkbox state.
SNMP: When using SNMPv3, traps sent from UniLogic PLCs could be received by trap watcher tools but not decoded, resulting in unreadable trap data and misleading statistics, where SNMPv2 received counters were incremented while SNMPv3 counters remained unchanged. This occurred when authentication and privacy were enabled but not properly enforced. The fix enforces correct SNMPv3 authentication and privacy handling.
Web Server: When setting values in a BIT Array via the Web Table, updates could appear successful but revert after a few seconds.
The VNC Client could display a cursor at the top-left corner on iMX6 platforms even when Cursor → Disable was selected.
----------------------------------
UniLogic 1.41.xx introduces a brand new powerful software feature to broaden your project potential: BACnet Client. This feature complements the existing BACnet Server support, enabling UniLogic PLCs to communicate with BACnet-compatible devices via both Ethernet and Serial MS/TP. Both communication methods can operate concurrently.
The BACnet Client allows integration with multiple BACnet servers and supports both periodic and aperiodic data exchange. Configuration is straightforward and integrates with Ladder logic, enabling seamless data transfer between UniLogic and building management systems.
This release also introduces performance enhancement: Improved Compilation Time. This upgrade delivers faster and more scalable compilation by resolving key performance bottlenecks. Through comprehensive optimization and the introduction of parallel processing across multiple system components, download times have been reduced.
| BACnet Client |
This feature complements the existing BACnet IP Server support with BACnet MS/TP and BACnet IP client functionality, enabling seamless integration with building management systems through straightforward configuration that integrates directly with Ladder logic. Note that BACnet Client requires a license purchase, available from your Unitronics' sales representative. Unitronics offers you a One-hour Trial Offer, to enable you to explore this new exciting feature. Note that each time you power up your controller, you can restart the One-hour Trial Offer. To learn how to activate the Trial Offer, refer to the BACnet Client topic in the UniLogic Help. Note that BACnet Client is available for the UniStream Built-In and UniStream PLC series. |
||||||||||||||||||||||
| NEW in Remote URB I/O |
Hardware Configuration now offers new I/O modules to our line of URB Remote I/O: These models use 18 RTD (push-in) terminal blocks instead of the existing 20 pins (URS-08RT-2 and URS-08TC-2).
|
||||||||||||||||||||||
| Improved Compilation Time | This enhancement addresses performance bottlenecks that were causing extended download times, delivering faster and more scalable compilation processes. | ||||||||||||||||||||||
| OPC-UA |
OPC-UA Authentication Enhancements:
OPC-40082-2 for Plastic/Rubber Industry (EUROMAP 82.2) Hot Runner Device (HRD) Support:
|
||||||||||||||||||||||
| REST API |
|
||||||||||||||||||||||
| SD Card Management Improvements |
|
||||||||||||||||||||||
| UniCloud Asset Registration |
You can now register PLCs, create assets, and activate UniCloud communication directly from UniLogic.
|
||||||||||||||||||||||
| Alarms |
Alarms now support several new features:
To reduce panel RAM usage and enhance performance, the default values for Alarm configuration have been modified to limit the number of Alarm rows in both Summary and History widgets, to a maximum of 32. A compile warning message has been introduced for projects in which these limits exceed 32.
The terminology in the Alarms Properties Window has been updated to improve clarity:
These changes are visual terminology updates only and do not affect existing functionality. |
||||||||||||||||||||||
| New Default Project Options |
The latest update introduces the ability to configure existing project options as default global settings, improving consistency and efficiency when creating new projects. These settings can be accessed under Project > Options, which simplifies the setup process for new projects.
|
||||||||||||||||||||||
| Global Tags | You can now quickly find the desired tag type using a searchable combo box in the Tag Editor. When selecting a type, a filter text box appears if there are 7 or more available types, allowing case-insensitive filtering with highlighted matches. The drop-down resets upon reopening, ensuring a streamlined selection process. | ||||||||||||||||||||||
| Password-Protect ALL Project Elements via Solution Explorer | You can now secure your entire project with a single action by right-clicking on the Project in the Solution Explorer, selecting Protect All, and establishing one password for comprehensive protection—later, simply right-click the Project again, choose Unprotect All, and enter your password to unlock all elements simultaneously. | ||||||||||||||||||||||
| New HMI Elements |
|
||||||||||||||||||||||
| Web Server | You can now secure your PLC web applications with HTTPS protocol support, bringing improved security and data protection to your web server communications. | ||||||||||||||||||||||
| LF: Store Not Bit | Use this Ladder function to invert the state of an input bit and store its logical NOT value into a destination bit. | ||||||||||||||||||||||
| LF: Gray Code to Decimal | Use this Ladder function to convert data received in Gray Code format into its equivalent decimal value. |
Additional Features
Connection Cancellation: You can now cancel PLC connection attempts that are in progress. When initiating a Download or going Online with a PLC that isn't properly connected, you'll find a new Cancel button on the "Connection Verification" dialog.
Motion: CAM Table enhancements and system updates.
FTP Client: Added support for selecting FTP Transfer Modes (Passive/Active) and specifying custom Port or Port Ranges for Active mode.
Via Hardware Configuration, you can now configure VNC Server settings to include visible pointer control and touch input functionality, ensuring compatibility with UniCloud.
User Access Control: We've introduced an improved user session control feature in the UAC properties, Auto Logoff and Return to Home Screen. Note: to enable this functionality, you must enable 'Set Touch bit' at UniApps>Network>VNC Server>General.
Find and Replace: This functionality, accessible from Ribbon > Edit > Find and Replace OR by pressing CTRL+H, is being enhanced to allow more flexible type replacements while maintaining logical compatibility. Note: incorrect replacements may result in compilation errors, therefore, verify that the proposed replacement maintains the intended logical flow and data integrity of the program.
Message Composer: You can now use constant values in the Decimal Point Location field for Number Variables in scanned messages.
Options > Localization: This version includes German language localization.
Buffers: You can now create and use buffers size up to 8192 bytes (8 KB).
UID-0808THS counters now support INT32 (signed) format, enabling proper counting in both directions without underflow when pulses move backward. Note: projects using UID-0808THS counters with modules running boot version 1.1 or lower cannot be upgraded to this version or higher.
Bugs Fixed in this version
ForEach Loops:
-Copying and pasting Ladder elements within a ForEach loop could create a duplicate "Current Item" variable (e.g., "Current Item_1") if the type was different, causing the loop to become unusable.
-using "Current item" in a 'Copy buffer to tag' function within a 'For Each' loop caused compilation errors.
Custom Control:
-UniLogic enabled assigning a Writable Parameter tag of a different type in the HMI than the type defined in the Custom Control (CC). Note: This fix may cause compilation errors in existing projects where the Writable Parameter tag type in the HMI does not match the type defined in the CC. You should review and update your projects accordingly.
-When using a Message Box with a Set Bit action on a button inside a Custom Control, the message box did not function correctly if the bit tag was passed as a parameter.
Calendar Widget Date Range Extension: The date range has now been expanded to support selections through December 31, 2037.
The FTP Server now supports usernames containing backslash characters.
FTP Compare File: In some instances, the function would complete successfully (with the FTP server variable indicating completion) but fail to populate the status variable in the main application.
Data Sampler:
- The Sample Time column in CSV files used period ('.') as decimal separator even when comma (',') was selected in Data Sample structure. Note: This setting is specific to the Data Sampler's internal number formatting and is unrelated to the CSV Delimiter setting in regional options.
- active .usmp files were not properly backed up during system powerup, preventing data loss during power cycle events.
HMI:
- In certain cases, Password Box and Numeric Password Box widgets would lose their authentication-specific action properties (succeeded/failed options) when copied between HMI screens, incorrectly displaying generic input actions (press/release/click) instead.
- In certain cases, copying and pasting a Linear Gauge with an INT32 Value (Range Bar) on the same screen caused a compilation error.
- in certain cases, when entering Online mode, HMI lines would disappear.
HMI/Web Elements: Copy-paste and repositioning of grouped HMI/Web elements no longer cause incorrect misaligned placement after editing in the property grid, downloading to PLC, or reopening the project.
CAN Layer2: US15 received its own transmitted CAN messages, causing undesirable behavior in certain cases.
The VNC Touch Bit now remains ON while a screen button is being pressed and turns OFF only upon release.
Modbus: Using the Write/Read Multiple Registers function with a Modbus serial slave set to Version 2.0 caused data overlapping, where read addresses incorrectly displayed values intended for write addresses.
Project-level Global Action 'Safe Remove SD' could incorrectly trigger an 'SD Lock' and delete SD card contents.
ST Logic: Comparing negative values multiplied by an expression (e.g., variable x) returned incorrect results.
Alarm Summary checkbox status column no longer displays a double check mark.
UniLogic would crash during project compilation when a TC8 module was connected through an IO Adapter in US15 projects.
EtherCAT: Initialization Status may return status 4, Initialization Failure, when using more than 4 total cyclic and virtual axes combined. A compilation error has been added to prevent runtime failures and provide clear feedback.
OPC-UA client: The system incorrectly used the hostname instead of the static IP in certificates, even when no hostname was configured, causing "BadHostname" errors during client connections.
Corrected object addresses for Stopper Torque and Blocking Time parameters in CANopen Homing Methods.
In certain cases, PLCs could not go online due to unsupported cipher suites causing TLS handshake failures.
UniApps, Auto-Sync: PLC time synchronization failed due to cached API output.
UID-0808THS: Incorrect actual position displayed during PTO back-and-forth movement.
Data Tables: When the 'Show Array Member Names' checkbox was enabled, names were not displayed and toggling the option had no effect.
UCR Router: Initialization might fail if the password contained special characters or if the model was incorrectly identified.