Cogent DataHub Release Notes
Below are the release notes for the DataHub.
You can also find the release notes at:
C:\Program Files (x86)\Cogent\Cogent DataHub\README.txt
or
C:\Program Files\Cogent\Cogent DataHub\README.txt
Current Version of DataHub is 11.0.3 - Full Details of that and prior releases are below.
Version 11.0.3 - July 7, 2025
DataHub Bugs Fixed:
[DATAHUB-2059] - Cannot write to a sparkplug metric with certain configurations[DATAHUB-2104] - Remote Config does not show the correct list of security policies and modes for a UA server[DATAHUB-2118] - OPC HDA does not handle multiple points in a single batch[DATAHUB-2129] - Cannot change "log to file" options in Remote Config event log[DATAHUB-2130] - Old settings.sqlite causes Security plugin to fail on startup[DATAHUB-2132] - DataHub crash when loading an OPC configuration created by V6.4[DATAHUB-2133] - MQTT broker allows anonymous connections when configured to require authentication[DATAHUB-2134] - MQTT broker stops accepting connections after a malformed Sparkplug message[DATAHUB-2135] - Remote Config writes a log file that it should not[DATAHUB-2136] - Write to PI Historian fails if any value cannot be converted to PI type[DATAHUB-2143] - Sparkplug application cannot write to metrics with # or + in the name[DATAHUB-2144] - Permissions fail when a client subscribes to Sparkplug points while Sparkplug is disabled in the broker[DATAHUB-2149] - PI external historian connection writes boolean with the wrong type.[DATAHUB-2158] - Crash when an ODBC transaction produces a long error message[DATAHUB-2160] - OpcUaSupport.g method AddMethod()third argument does not interpret path strings[DATAHUB-2162] - Remote Config runs out of memory when script log is paused[DATAHUB-2163] - Some attempted writes from the MQTT broker are ignored[DATAHUB-2164] - MQTT broker disconnects a client that sends an unauthorized message[DATAHUB-2169] - MQTT client over-counts subscriptions and generates an error[DATAHUB-2171] - Memory leak when stopping a Gamma ODBC thread[DATAHUB-2172] - Advanced parser PointNameModifier function is not applied.[DATAHUB-2178] - Kafka Certificate location error when no path is specified[DATAHUB-2179] - OPC A&E server disconnects a client if more than 50,000 conditions are all defined at once.[DATAHUB-2182] - Branch points occasionally show as value points in the data viewer[DATAHUB-2188] - OPC A&E attributes are not always generated correctly[DATAHUB-2190] - OPC UA A&C alarms fail with item IDs with colons in the name[DATAHUB-2191] - Possible crash when tunnel fails due to permission denial.[DATAHUB-2192] - Invalid WebSocket key sent when tunnelling[DATAHUB-2193] - Possible crash when shutting down a processing thread[DATAHUB-2195] - Add a web server option to accept X-Forwarded-For headers[DATAHUB-2201] - SASL login to Kafka fails[DATAHUB-2206] - REST historian fails to write values after the first when writing one-by-one[DATAHUB-2209] - MQTT Sparkplug EoN client does not disconnect when its primary application disconnects[DATAHUB-2220] - Add an OPC DA option to suppress uninitialized points[DATAHUB-2221] - Remote Config HDA does not show Items in Selected Server[DATAHUB-2224] - set_canonical command does not work correctly from a cfg file[DATAHUB-2231] - Bridges set by Remote Config do not propagate their canonical types from the source to the destination[DATAHUB-2232] - MQTT broker sometimes rejects a connection with "PROTOCOL" error[DATAHUB-2234] - OPC UA connections are not always cleaned up when a subscription or session fails during initialization.[DATAHUB-2242] - MQTT broker does not close ports if it has an error in initialization[DATAHUB-2243] - MQTT client does not transmit items that do not exist at connection time[DATAHUB-2244] - MQTT broker sends messages for uninitialized points[DATAHUB-2247] - OPC UA client sends large message when reading engineering units[DATAHUB-2254] - AVEVA PI external historian cannot write after tunnelling store and forward[DATAHUB-2256] - Gamma freeze_writes does not remember the "force" flag[DATAHUB-2259] - Gamma creates non-existent points on a call to datahub_read[DATAHUB-2267] - LDAP: Allow the user to explicitly query with exact name[DATAHUB-2269] - Cannot import a Modbus configuration from CSV[DATAHUB-2274] - Data viewer in Remote Config not displaying data correctly[DATAHUB-2277] - OPCAddItem2 command returns wrong exit code when adding the same item twice[DATAHUB-2278] - Add the ability to convert qualities in incoming Sparkplug messages to OPC qualities[DATAHUB-2279] - DCOM AppID is set incorrectly in some cases[DATAHUB-2282] - HDA Classic external historian client generates a duplicate dictionary key error[DATAHUB-2283] - HTTP /config/data endpoint does not check data permissions[DATAHUB-2284] - PI Historian write fails when duplicate point is selected
DataHub Features:
[DATAHUB-2187] - Add attribute filtering to OPC A&E client connections
[DATAHUB-2207] - Add the ability to select a Rest Authenticator in the Rest External Historian
[DATAHUB-2262] - Add support for Modbus Serial (RTU)
DataHub Improvements:
[DATAHUB-2148] - Support changing the OPC friendly name through settings.cfg
[DATAHUB-2150] - Add canonical type to the JSON point representation
[DATAHUB-2194] - Improve Gamma calls to OPC UA methods
[DATAHUB-2196] - Remove the Advanced button from OPC UA A&C configuration
[DATAHUB-2210] - Add an option to tunnels to reconnect periodically in data diode mode
[DATAHUB-2222] - Add ability to specify Partition Key in Event Hubs Historian
[DATAHUB-2226] - Change redundancy to allow value-carrying branch points as switching triggers
[DATAHUB-2228] - Allow branches to act as redundancy switch points
[DATAHUB-2229] - Provide a way to extend internal queues in OPCUA to preserve more superseded values
[DATAHUB-2236] - Adjust lifetime and keepalive times on OPC UA connections
[DATAHUB-2237] - Improve the start-up speed of the web server
[DATAHUB-2238] - Add support for the OPC UA Historizing property
[DATAHUB-2241] - Add a settings.cfg option to stop remote config from using a TCP link license
[DATAHUB-2246] - During Security initialization, confirm FipsAlgorithmPolicy is disabled
[DATAHUB-2261] - Suppress receiver responses in data diode mode
[DATAHUB-2270] - Add a point count to the Remote Config data viewer title bar
WebView Bugs Fixed:
[DATAHUB-2051] - Sporadically, WebView fails to load controls when launched from Remote Config
[DATAHUB-2181] - WebView color palette control is visible in Kiosk mode
[WVNET-588] - WebView does not receive points from domains created after WebView starts
[WVNET-589] - WebView alarm control shows an extra condition alarm
[WVNET-591] - Value is not reset after a binding expression produces an invalid value.
[WVNET-596] - Starting Elfinder causes error
WebView Improvements:
[WVNET-585] - Clear TOTP field after a failed login attempt
Version 11.0.2 - October 25, 2024
DataHub Bugs Fixed:
[DATAHUB-2047] – v11 Uninstaller does not remove files when run in 32-bit windows
[DATAHUB-2060] – Installing 32bit DataHub over a running 64bit DataHub service does not complete successfully
[DATAHUB-2068] – TOTP QR code does not work with Google Authenticator
[DATAHUB-2069] – HDA Classic external historian does not reconnect if the server stops and restarts
[DATAHUB-2077] – Sporadic crash when opening the native properties dialog at start-up
[DATAHUB-2081] – DataHub crash when configuring bridging
[DATAHUB-2083] – MailSend does not work with CRAM-MD5 authentication
[DATAHUB-2085] – A whitespace character causes DataHub to stop responding when entered with a license key
[DATAHUB-2087] – Add a Command function to advanced parser scripting
[DATAHUB-2089] – DataHub crashes when adding an external historian using Remote Config
[DATAHUB-2094] – MQTT advanced parser publisher does not handle multiple points correctly
[DATAHUB-2095] – WebView will not load its control DLLs on the first launch
[DATAHUB-2097] – Add support for Sparkplug compression
[DATAHUB-2098] – Sparkplug clients ignore the maximum update rate setting
[DATAHUB-2099] – Change MQTT plain-text numbers to be locale-invariant
[DATAHUB-2101] – Web App Manager encountering ERROR: Invalid file name in request
[DATAHUB-2103] – MQTT sampling with no aggregator consumes memory
[DATAHUB-2105] – Crash after a long time running a script that writes to data points
[DATAHUB-2113] – Web server SSL connections sometimes hang for 10 seconds during connection
DataHub Improvements:
[DATAHUB-2093] – Add ToUnixTime and ToJsonTime to advanced parser scripts
[DATAHUB-2096] – Add a selection for message encryption mode in OPC UA client connections
Version 11.0.1 - July 5, 2024
DataHub Bugs Fixed:
[DATAHUB-2063] - Selected points in external historian are not shown in Remote Config
[DATAHUB-2066] - Arrays in OPC UA always have bad quality
[DATAHUB-2067] - MQTT broker does not work if MQTT client is not installed
Version 11.0.0 - July 2, 2024
DataHub Features:
- New Security Mechanism
- Role-based permissions
- TOTP (Time-based one-time passwords) for multi-factor authentication
- Authentication using LDAP and Active Directory
- Authentication using local Windows user name
- Domain-specific permissions
- IP Address-specific permissions
- Protocol-specific permissions
- Limit anonymous connections by domain, IP address and protocol
- Data diode mode
- Software data diode mode ignores all incoming data
- Works through any data diode that supports TCP emulation
- New external historian support
- OPC HDA Classic
- Apache Kafka
- Azure Event Hubs
- ODBC Historian
- Store-and-forward from ODBC
- Upgrade MQTT broker and client to MQTT V5
- OPC DA can serve a single data domain without adding a domain prefix to item IDs
- Export to CSV
- Any interface with CSV Import now also includes CSV Export
- Data browser improvements
- Origin column - identifies the connection that set a value
- Point deletion - delete points that are no longer in use
- Right-click menu - copy name, copy value, copy as JSON, delete
- Cogent DataHub for Azure
- Edit Azure firewall rules from Remote Config
- Add a custom DNS name for easier management
WebView Features:
- Improved page load times
- Improved memory usage
- Page caching to improve page switching times
- Multiple open pages in design mode
- New page viewer control for page-within-a-page
- New script editor dialog for faster script authoring
- Bulk editing of many control properties
- Bulk change of strings and data point bindings
- Control browser as list and tree for easy control identification
- Line and arrow controls
- On-screen rotation handle
Version 10.0.5 - June 7, 2024
DataHub Bugs Fixed:
[DATAHUB-1739] - PI interface is creating the wrong points when point mapping
[DATAHUB-1822] - ASP Document Definition Example not working for Multiple Points
[DATAHUB-1885] - Language lingers in v10 External Historian Forwarding Strategy dialog
[DATAHUB-1892] - "Accept on incoming plain TCP connection failed" message during tunnel connection
[DATAHUB-1902] - Remote Config displays String types as Any(String)
[DATAHUB-1904] - Remote Config script log sometimes does not show messages
[DATAHUB-1929] - Can not connect DataHub MQTT Sparkplug client to DataHub MQTT broker
[DATAHUB-1950] - ODBC scripting does not map tables with implicit catalog requirement
[DATAHUB-1973] - Local Data Viewer not differentiating capitalization
[DATAHUB-1978] - Issues with OPC UA Configure Nodes, when selecting Domains
[DATAHUB-1999] - Sparkplug EoN connection repeats properties unnecessarily
[DATAHUB-2001] - Sampling fails for all points if some points are not numeric
[DATAHUB-2004] - MQTT broker displaying some of the datapoint hierarchy flattened in data viewer
DataHub Improvements:
[DATAHUB-1862] - UA application certificate password in Remote Config should be replaced with asterisks
WebView Bugs Fixed:
[WVNET-233] - Browse Server menuitem should only be enabled when elFinder is running
[WVNET-568] - Uploading a file from elFinder throws exception.
Version 10.0.4 - April 12, 2024
DataHub Bugs Fixed:
[DATAHUB-1673] – SQLite query could produce fatal exception if lock times out
[DATAHUB-1797] – Notification plugin generates ACK points with GUIDs for names
[DATAHUB-1807] – OPC UA can reverse the order of incoming messages in rare cases
[DATAHUB-1809] – MQTT advanced parser does not recover after an invalid message
[DATAHUB-1811] – The S-Sharp ASP processor does not accept single-quotes in the literal portion of the document
[DATAHUB-1813] – Sparkplug application is sending an incomplete rebirth request
[DATAHUB-1819] – The “read” command responds with a garbage message on some errors.
[DATAHUB-1820] – WebSocket can connect and push data without Connectivity.Connect permission
[DATAHUB-1823] – Remote Config Tunnel: changing Data Flow Direction does not change rest of Radio Buttons accordingly
[DATAHUB-1824] – Notification scripts are run too frequently in some configurations
[DATAHUB-1833] – Import of tag names from CSV file fails when “Split point names on character” is disabled
[DATAHUB-1838] – Status updates fail in External Historian and InfluxDB in Remote Config if MQTT is not installed
[DATAHUB-1839] – Point picker not disabled in External Historian when forwarding is enabled
[DATAHUB-1840] – Changing a forwarding strategy in Remote Config requires restart of DataHub
[DATAHUB-1844] – MQTT Broker throwing exception and crashing when invalid input is published
[DATAHUB-1852] – Attaching an OPC UA application certificate does not persist through Remote Config
[DATAHUB-1863] – Notification states ignoring “only trigger on good quality” flag – potentially breaking change
[DATAHUB-1864] – OPC UA does not preserve node description from external UA servers
[DATAHUB-1865] – MQTT sampling not using window size correctly – potentially breaking change
[DATAHUB-1866] – DLL signature should be valid even though the signing certificate has expired
[DATAHUB-1867] – OPC UA server endpoint should not be case sensitive
[DATAHUB-1870] – Point names with + and # produce illegal MQTT topic names
[DATAHUB-1873] – Authentication fails for HTTP notifier and PI Historian
[DATAHUB-1874] – Some functions fail when the computer name contains non-ASCII characters
[DATAHUB-1887] – Cannot delete stored bridge transforms in Remote Config
[DATAHUB-1888] – Store & Forward cache directory button does not function in RC
[DATAHUB-1890] – RC crash when DH disconnects and then refresh RC
[DATAHUB-1895] – 10.0.4 is crashing from unsuccessful OPC DA client connection
[DATAHUB-1897] – New Script dialog unusable in Remote Config
[DATAHUB-1899] – Add a limiter to the MQTT broker to avoid a never-ending event loop when busy
DataHub Improvements:
[DATAHUB-1682] – DataHub should automatically use a new certificate when the certificate file changes on disk
[DATAHUB-1692] – Upgrade MQTT library to Mosquitto V1.6.15
[DATAHUB-1694] – Make engineering units and description available to MQTT
[DATAHUB-1795] – Add sorting to the lists in the OPC UA Server Status dialog
[DATAHUB-1800] – Add client information to the MQTT advanced parser
[DATAHUB-1801] – Upgrade Grafana to version 8.3.3
[DATAHUB-1802] – If A&C receives an unknown event type, treat the event as BaseEventType instead of ignoring the event
[DATAHUB-1803] – Make points from decomposed MQTT messages available as individual MQTT topics
[DATAHUB-1806] – Change the MQTT broker to override the SSL cipher list from the registry
[DATAHUB-1818] – Discard unrequested OPC DA keepalive messages instead of signaling an error
[DATAHUB-1821] – Setting the Sparkplug data point prefix to a colon splits the Sparkplug hierarchy into one domain per group
[DATAHUB-1825] – Allow alarm acknowledgements even when the alarm does not require it
[DATAHUB-1843] – Add a point to an A&E domain that indicates whether the connection is currently established
[DATAHUB-1850] – Add an option to OPC UA A&C to append the node ID to condition name
[DATAHUB-1869] – Improve performance of the Remote Config data viewer with large point counts
[DATAHUB-1880] – Update OpenSSL to version 1.1.1w
WebView Bugs Fixed:
[WVNET-553] – WebView about screen too wide
Version 10.0.3 - October 5, 2023
DataHub Bugs Fixed:
[DATAHUB-1602] - Web Server does not (re-)initialize properly when deleting licenses triggers switch to demo mode
[DATAHUB-1631] - Null reference exception when removing a full license
[DATAHUB-1708] - Missing timestamp and bdSeq members in Sparkplug NBIRTH messages
[DATAHUB-1725] - OPC A&E does not correctly update filters when you change them in a running connection
[DATAHUB-1726] - OCS4D error when launch WV from RC
[DATAHUB-1729] - WebView logins could produce a spurious error in the script log
[DATAHUB-1730] - Scripting crash calling open() with an invalid file mode
[DATAHUB-1732] - DataHub service crashes during STOP
[DATAHUB-1733] - Alarm events from pedantic UA A&C servers (Siemens S7) are ignored
[DATAHUB-1734] - A&C event is ignored if the A&C server sends a null comment or message field
[DATAHUB-1740] - MQTT advanced parser publish preview does not understand pathData
[DATAHUB-1741] - GetChildren internal call returns a null value for the first child
[DATAHUB-1743] - MQTT advanced parser editor in Remote Config does not contain common functions list
[DATAHUB-1744] - Tunnels do not enforce their maximum message length
[DATAHUB-1746] - MQTT broker does not recognize + as a wildcard at the end of a topic
[DATAHUB-1751] - MQTT publishes topics for valueless branch points
[DATAHUB-1753] - External historian configuration can be corrupted when written
[DATAHUB-1761] - OPC UA server crashes due to thread race with multiple clients connecting and disconnecting
[DATAHUB-1763] - DataHub does not update the value when a new canonical type is set on a point
[DATAHUB-1764] - Funky placement of DataHub gear icon on taskbar
[DATAHUB-1766] - MQTT broker rejects subscriptions for topics beyond 200 characters
[DATAHUB-1767] - MQTT advanced parser default Publish does not work if no Receive schema is defined
[DATAHUB-1770] - OPC UA server rejects connections when client certificate contains unexpected fields
[DATAHUB-1771] - MQTT client sends branch points in snapshot mode
[DATAHUB-1773] - Binary message encoding may cause a crash for point names above 128 characters
[DATAHUB-1779] - MQTT client skips messages when the socket becomes full
[DATAHUB-1782] - Remote Config crashes when dealing with an OPC UA CSV file with duplicate entries
[DATAHUB-1783] - MQTT client does not drop a point that cannot be transmitted due to broker message length limit
[DATAHUB-1789] - MQTT client does not honor the Maximum Update Rate setting
[DATAHUB-1793] - Database native interface has a drawing glitch
[DATAHUB-1794] - A&C methods (ack, confirm, etc.) are missing from browse results
DataHub Improvements:
[DATAHUB-1625] - Add a stateless OPC A&E event type to notifications
[DATAHUB-1684] - Produce an understandable error when a historian is configured to forward from itself
[DATAHUB-1685] - Eliminate the DLL approval step in RC and WebView if the DLLs are properly signed
[DATAHUB-1727] - Add string manipulation functions to Notification and MQTT advanced parser
[DATAHUB-1731] - Add the ability to save the script log to a file
[DATAHUB-1742] - Add a GetChildren call to S-Sharp code when creating ASP in the MQTT advanced parser
[DATAHUB-1745] - Add the ability to send byte arrays to a socket using the .NET API
[DATAHUB-1747] - Web application manager does not store its configuration until it exits
[DATAHUB-1750] - Add a script function to the MQTT advanced parser to get a list of registered points
[DATAHUB-1752] - Add commands to the External Historian to allow script access
[DATAHUB-1754] - Change the label of Primary application ID in Sparkplug client interface
[DATAHUB-1755] - Add an option to set the token lifetime in Google IoT / Clearblade connections
[DATAHUB-1769] - Change the way numbers are coerced to DATE type
[DATAHUB-1774] - Add support for BitConverter to S-Sharp scripting
[DATAHUB-1775] - Change S-Sharp mapping of "Array" from List<object> to Array
[DATAHUB-1780] - Improve MQTT broker performance
[DATAHUB-1781] - Add freeze_write function to Gamma to improve performance on high-volume point writes
[DATAHUB-1785] - Improve performance and reduce latency in MQTT client
[DATAHUB-1788] - Change queuing in tunnels to reduce memory usage in high load situations
WebView Bugs Fixed:
[WVNET-514] - TrendChart y-axis label orientation
[WVNET-519] - Difference in rendering TextLabel between Silverlight and WPF
[WVNET-520] - WebView fails to start if the log folder is inaccessible or not writable
WebView Improvements:
[WVNET-513] - Entering a Point binding requires specific mouse capture position
Version 10.0.2 - February 16, 2023
DataHub Bugs Fixed:
[DATAHUB-1044] - DataHub crashes if a configuration file is corrupted
[DATAHUB-1653] - MQTT connection to AWS IoT not reading certificates correctly
[DATAHUB-1656] - OPC server produces S_FALSE when querying a specified list of properties
[DATAHUB-1657] - OPC A&E does not correctly propagate dates in condition attributes
[DATAHUB-1658] - OPC UA byte arrays are incorrectly converted to strings
[DATAHUB-1660] - Web server does not correctly serve file names containing UTF-8 characters
[DATAHUB-1661] - Race in Content Manager that causes WebView pages not to update on change
[DATAHUB-1665] - Sorting OPC UA connections in Remote Config causes connections to be duplicated
[DATAHUB-1666] - Remote Config OPC DA manual selection dialog displays checkboxes
[DATAHUB-1667] - InfluxDB V2 connection produces a missing DLL error
[DATAHUB-1668] - Memory leak in the data viewer window
[DATAHUB-1671] - Modbus TCP does not support IPV6 connections
[DATAHUB-1674] - MQTT messages using the advanced parser send boolean values incorrectly
[DATAHUB-1675] - DataHub cannot connect to Kinesis via VPC endpoint
[DATAHUB-1677] - Database query crash when converting a non-timestamp string to a numeric timestamp
[DATAHUB-1679] - The Configure Template dialog in Notifications does not appear in the task bar.
[DATAHUB-1680] - CSV import for external historian is slow with large point lists
[DATAHUB-1681] - The MQTT advanced Parser dialog does not appear in the task bar
[DATAHUB-1686] - Potential crash or inversion when connecting as a Sparkplug B EoN device
[DATAHUB-1687] - Memory leaks when stopping and restarting connections in several plugins
[DATAHUB-1689] - OPC UA A&C client incorrectly treats some alarms as branches and ignores them
[DATAHUB-1691] - Very rare crash when multiple clients read data at the same time
[DATAHUB-1693] - OPC UA client connections do not handle node browse names containing colon characters
[DATAHUB-1695] - OPC UA server sets UserTokenPolicy's SecurePolicyUri to Basic256 and blocks clients that aren't using encryption
[DATAHUB-1696] - Alarms created by Notification plugin cannot be acknowledged with incomplete info
[DATAHUB-1699] - Points created by the Modbus plugin should have concrete types
[DATAHUB-1701] - Thread race condition where external historian can cause a crash
[DATAHUB-1702] - WebView cannot log in when the operating system is using the Turkish language
[DATAHUB-1703] - Web server produces time headers in local locale, not invariant locale
[DATAHUB-1704] - Remote Config cannot handle email and database configurations containing unprintable characters
[DATAHUB-1705] - UA manual node selection stores the branch incorrectly - cannot delete nodes
[DATAHUB-1706] - The DataType NodeId associated with Data Viewer datatype Any() is NULL - should be BaseDataType
[DATAHUB-1712] - OPC DA server is visible even if OPC DA support is not installed or not licensed
[DATAHUB-1713] - Possible crash when modifying OPC UA server configuration
[DATAHUB-1715] - OPC UA server creates the wrong hierarchy when creating a new point requested by a UA client
[DATAHUB-1718] - OPC UA generates an event when alarm information becomes Not Connected
[DATAHUB-1719] - Notification throws an error when building an alarm from multiple inputs
[DATAHUB-1720] - Sparkplug application client stops sending updates after NBIRTH/NDEATH/NBIRTH sequence
[DATAHUB-1721] - Sparkplug connections add bdSeq point to the data set
[DATAHUB-1722] - Sparkplug broker disconnects a client unnecessarily after a value change command
DataHub Improvements:
[DATAHUB-1669] - Add sampling to the MQTT client connection
[DATAHUB-1654] - OPC UA server connection configuration is too small for a 1366 x 768 screen
[DATAHUB-1655] - Add an option to transmit DDE using system floating point separators
[DATAHUB-1659] - Add content type JSON and encoding UTF-8 to Azure IoT Hub MQTT messages
[DATAHUB-1663] - Reduce CPU usage in the native data viewer window
[DATAHUB-1676] - Improve throttling when connecting MQTT brokers with usage limits
[DATAHUB-1678] - Change the OPC UA server to allow publishing intervals of 1ms or more in steps of 1ms
[DATAHUB-1683] - Update OpenSSL to version 1.1.1s
[DATAHUB-1690] - Change Sparkplug B to write more efficiently with large payloads
[DATAHUB-1698] - Strip the organization name from user names and treat all user names as Local
[DATAHUB-1710] - Change the OPC UA model to use HasComponent instead of HasProperty for leaf nodes
WebView Bugs Fixed:
[WVNET-355] - ListBox SelectedItem is returning ToString() instead of the native Type
[WVNET-500] - Double clicking on page name in Page Explorer does not open the page
[WVNET-501] - WebView File Browser does not open fully and gives error message
[WVNET-507] - Wpf Toolkit generates a pop-up error message due to an invalid cast once in a while
[WVNET-510] - Blinking a symbol causes all other symbols to blink
[WVNET-511] - WindTurbine demo page is not working ("Specified cast is invalid" script error)
Version 10.0.1 - June 24, 2022
DataHub Bugs Fixed:
[DATAHUB-1110] - ETK uses errno instead of h_errno for calls to gethostbyname
[DATAHUB-1468] - Not able to log Event log messages in Remote Config - Skkynet DataHub
[DATAHUB-1477] - MQTT broker terminating on start-up - Skkynet DataHub
[DATAHUB-1483] - Engineering units are not transmitted over all tunnels
[DATAHUB-1503] - Skkynet DataHub - OPC UA Computer Name/IP field initialized with Application Resource Name
[DATAHUB-1505] - Skkynet DataHub temporarily opens firewall ports while initializing the first time
[DATAHUB-1506] - Skkynet DataHub - Grafana startup error message
[DATAHUB-1510] - Skkynet DataHub 'Launch WebView' button fails in Remote Config
[DATAHUB-1512] - Disabling a feature in Remote Config emits ERROR to event log
[DATAHUB-1521] - In RemoteConfig, user should be able to enable/disable listeners on MQTT Broker ports
[DATAHUB-1528] - MQTT broker does not correctly write text and binary format from points to MQTT topics
[DATAHUB-1541] - Log quickly fills with ERROR messages when Azure file server is unavailable
[DATAHUB-1547] - Templates/Scripting folder is not removed during uninstall
[DATAHUB-1551] - Exception converting native point to .NET point
[DATAHUB-1552] - Error while starting historian log for point
[DATAHUB-1553] - DataHub garbles incoming WebSocket data if the sender uses continuation frames
[DATAHUB-1556] - Cannot connect to AVEVA Historian when modifying point names
[DATAHUB-1557] - OPC UA cannot read alarms from PVSS UA Server
[DATAHUB-1558] - OPC UA A&C reports an error and fails to retrieve conditions from a misbehaved server
[DATAHUB-1559] - OPC UA A&C incorrectly sets the "Ack Required" flag in some circumstances
[DATAHUB-1565] - OPC UA window update timer exceeds thread limit and crashes DataHub
[DATAHUB-1566] - REST historian connection does not have an option for all points, or one at a time
[DATAHUB-1568] - Calls to the security database sometimes fail with "database is locked" messages
[DATAHUB-1569] - Historian connections do not throw away old values when the buffer limit is exceeded
[DATAHUB-1570] - Remote Config does not properly display the forwarding strategy dialog
[DATAHUB-1572] - OPC UA client creates branch data points for non-existent nodes in some cases
[DATAHUB-1573] - Possible OPC UA server crash when two clients subscribe to the same nodes at exactly the same time
[DATAHUB-1575] - Remote Config cannot create an MQTT client connection without advanced parser configured
[DATAHUB-1577] - MQTT advanced parser throws an error when given invalid JSON schema
[DATAHUB-1578] - Remote Config crashes if given invalid CSV field data
[DATAHUB-1579] - Web server tab does not appear in Remote Config if web server is not licensed.
[DATAHUB-1581] - Remote Config does not show newly created groups in the OPC UA advanced domain settings
[DATAHUB-1582] - Remote Config does not see all ODBC DSNs
[DATAHUB-1584] - Remote Config crashes if given CSV data containing a comma
[DATAHUB-1586] - MQTT broker uses the wrong point name with Sparkplug B when slash/dot conversion is disabled
[DATAHUB-1587] - Remote Config data viewer input treats strings as numbers incorrectly
[DATAHUB-1588] - Remote Config opens the 64-bit DSN editor, even for 32-bit DataHub
[DATAHUB-1589] - OPC DA client does not subscribe for shutdown advise from the server
[DATAHUB-1590] - OPC A&E crashes when a server sends the wrong number of attributes
[DATAHUB-1593] - Error messages sometimes produce "Message too long" message
[DATAHUB-1595] - Do not serve an index page if an HTTP folder request does not end in a slash
[DATAHUB-1596] - Fix issues with client-side certificates for outbound MQTT connections
[DATAHUB-1597] - CSV import crashes RC if the system has .NET Framework 4.6.2 and earlier installed
[DATAHUB-1598] - DataHub MQTT does not accept the Azure server certificate
[DATAHUB-1599] - MQTT Broker thread crashes with an out of range index error
[DATAHUB-1600] - OPC UA server does not handle point values of DbNull
[DATAHUB-1601] - Breaking Change: MQTT connection over SSL does not validate the server certificate
[DATAHUB-1603] - InfluxDB does not handle NaN and Infinity values
[DATAHUB-1604] - MQTT message format is invalid JSON if value is NaN or Infinity
[DATAHUB-1606] - NAN values not tunneled, not visible in Remote Config, not writable in Gamma
[DATAHUB-1607] - MQTT CA Root certificate configuration should not be required
[DATAHUB-1609] - Notifiers like email can block while sending, delaying other processing
[DATAHUB-1610] - OPC UA server does not send updates when only timestamp changes, even if forced in DataHub
[DATAHUB-1611] - MQTT broker sends data to the wrong client when using array JSON format
[DATAHUB-1612] - MQTT client cannot connect to Amazon IoT Core
[DATAHUB-1614] - OPC A&E Details do not include the Message field
[DATAHUB-1617] - ODBC query does not preserve milliseconds in timestamps
[DATAHUB-1618] - OPC A&C does not transmit recurring events on the same source
[DATAHUB-1619] - OPC UA client sometimes fails to connect over HTTPS on startup
[DATAHUB-1620] - DataHub crashes when disabling an MQTT client connection that has terminated due to lack of license
[DATAHUB-1621] - Installer does not install all DLLs for Remote Config with .NET 7 or earlier
[DATAHUB-1623] - Crash when MQTT client ID is set to an empty string
[DATAHUB-1624] - Sparkplug B uses the wrong data type for R4 values
[DATAHUB-1626] - OPC UA server fails to transmit some conditions with specific start-up order
[DATAHUB-1632] - Cannot assign a passworded PFX certificate to OPC UA using Remote Config
[DATAHUB-1634] - Gamma datahub_command for get_client_stats can crash DataHub
[DATAHUB-1635] - get_client_stats command does not filter by label for some plugin threads
[DATAHUB-1636] - OPC UA client connection may not start after changing its label
[DATAHUB-1638] - "Edit Port" and "Copy Endpoint to Clipboard" buttons in OPC UA (Remote Config) remain enabled when no protocol is selected
[DATAHUB-1639] - OPC UA A&C conditions update only once after connecting with certain start-up sequences
[DATAHUB-1643] - Remote Config displays the wrong point name when presented with an ambiguous data model
[DATAHUB-1649] - Tunneling between computers in different locales sets floats in arrays to zero
DataHub Improvements:
[DATAHUB-1472] - Add an option to historians to rewrite point names before storing them in the historian
[DATAHUB-1531] - Improve the accuracy of the External Historian snapshot timer
[DATAHUB-1536] - Make it clearer to the user that Skkynet DataHub installs with InfluxDB V1
[DATAHUB-1554] - Add Content-Encoding directives to the web server when serving a file
[DATAHUB-1567] - Add a mechanism in external historian to write when only the timestamp changes
[DATAHUB-1571] - Web server: Do not add raw POST data to the query arguments for non-form POST operations
[DATAHUB-1583] - Report OPC A&C shelving state and suppressed state as OPC A&E attributes
[DATAHUB-1585] - Improve MQTT error reporting when a connection is refused
[DATAHUB-1591] - Allow blank fields when importing Modbus configuration from CSV
[DATAHUB-1594] - Add support for ECDSA client certificates in MQTT client connections
[DATAHUB-1616] - /regservice option should set the service to automatically restart on failure
[DATAHUB-1628] - Improvement To MQTT Advanced Parser UI
[DATAHUB-1629] - MQTT Broker crashes when acting as Sparkplug B smart Broker, with certain Sparkplug B configuration.
[DATAHUB-1637] - Update OpenSSL to revision 1.1.1o
[DATAHUB-1642] - Change OPC UA A&C client to retrieve all event types, including custom types
[DATAHUB-1648] - Add an option in UA to convert property children of non-value nodes into values instead of properties
WebView Bugs Fixed:
[WVNET-449] - WebView cannot log in to an HTTPS server with an invalid certificate
[WVNET-451] - Alarm control does not clear stale information when the connection is lost
[WVNET-452] - Various WebView commands require DesignMode permission...and should not
[WVNET-453] - ControlToolbar is visible in when starting in KioskView
[WVNET-454] - Changing the input on a symbol also changes other unrelated symbols
[WVNET-456] - High/Low and Rising/Falling indicators have no icon in the toolbar
[WVNET-457] - PointDataTable is very slow to populate
[WVNET-460] - Problems with the symbol control
[WVNET-473] - Filtered data table cannot display some data types
[WVNET-475] - Add Reset UI and Restart
[WVNET-476] - Copying a symbol throws an exception in some circumstances
[WVNET-477] - Copying a symbol does not copy the selected visual symbol
[WVNET-478] - Animation Options demo page throws an error
Version 10.0.0 - December 15, 2021
External Historian Support - In addition to the built-in historian, DataHub can now store time series data to InfluxDB V1, InfluxDB V2, Influx Cloud, AVEVA Historian, AVEVA Insight, OSIsoft PI, REST servers and Amazon Kinesis. Where applicable, these historians can be used for data visualization in QuickTrend and WebView, and for retrieval via OPC UA Historical Data Access.
Store-and-Forward for Historical Data, MQTT and Amazon Kinesis - Time series data can be stored in InfluxDB and then forwarded to MQTT, Amazon Kinesis, or another historian through DataHub tunneling. This ensures that data is transmitted even in the event of a network failure.
Tunneling Support for Historical Data - DataHub tunneling can now act as a transmission path for historical data. This allows you to synchronize data from a protected operations network to a central historian without opening any incoming firewall ports in either the operations or IT networks. Neither network is exposed to external attack due to DataHub's unique multi-hop historical data transmission technology, allowing historical data to reliably traverse a DMZ.
Installation of InfluxDB V1, Chronograf and Grafana - The DataHub installer includes a copy of InfluxDB community edition, Chronograf and Grafana, along with a user interface that allows you to quickly configure and launch each of these applications. You can use the versions shipped in the DataHub installer, or connect to your own installation of InfluxDB locally, on your network, or in the cloud.
OPC UA Alarms and Conditions - DataHub now supports OPC UA A&C (Alarms and Conditions) client and server interfaces, and converts between OPC UA A&C and OPC Classic A&E. This includes support for alarm acknowledgement, alarm source aggregation, tunneling and redundancy.
Alarm Generation - DataHub now implements sophisticated alarm generation. Specify different types of alarms, like multi-state, stateless and simple processing. This includes the ability to generate OPC A&E and OPC A&C alarms from real-time data, including state lifecycle and acknowledgement. The alarm generation system uses scripted conditions and actions to enable a wide variety of tests, such as multi-tag mathematics and sliding window statistical analysis (like variance, average and slope). Alarms can be specified as patterns to match all similar devices in a system with a single configuration, allowing you to configure alarms for all your similar devices with a single configuration.
Notification of Alarms via SMS, Email and Social Media - The new notification system allows you to change data values, send email, call a web hook, or send any notification (SMS, WhatsApp, Line, etc.) supported by Twilio in response to an alarm. This includes both alarms generated by the DataHub alarm generator and alarms generated externally by OPC A&E or A&C servers.
MQTT Speed and Scaling - DataHub version 10 replaces the MQTT client and server implementation with Mosquitto, a trusted high-speed MQTT library with excellent protocol support. This allows the DataHub broker to simultaneously handle up to 5000 connections, with much lower CPU requirements than the version 9 implementation.
Sparkplug B for MQTT - DataHub's MQTT implementation now supports Sparkplug B. This is a protocol layered on top of MQTT intended to provide plug-and-play interoperability among MQTT clients. DataHub's broker not only supports Sparkplug B, but also adds capability to work around some limitations of Sparkplug B to help ensure that data representations are up to date and accurate under any network conditions. DataHub MQTT client connections can act as Sparkplug B primary applications, non-primary applications or edge-of-network devices. This allows you to easily convert any supported protocol to and from Sparkplug B.
Multiple JSON Format Support for MQTT - Most MQTT devices produce JSON messages, but with different JSON packet definitions. DataHub version 10 introduces support for any number of distinct JSON packet definitions using "JSON Schemas". This allows you to define the kind of messages each type of device will generate, and DataHub will automatically determine which schema a message belongs to. For each message schema you can define custom parsing and processing steps to extract data from any JSON message of any complexity. You can also define how to format a message to write back to the device, even if the device expects messages in a format different from its output schema.
CSV Import for Data Point Configuration - Several DataHub features can now be partially configured through CSV files. This is particularly helpful when configuring a large number of OPC items for a connection. Features supporting CSV import include: OPC UA client, OPC DA client, Bridging, MQTT client, Modbus and Historian.
WebView Undo/Redo and File Browser - Desktop WebView includes a number of enhancements, including Undo/Redo support for most editing operations. In addition, WebView now includes a browser-based file browser that allows you to upload, arrange, modify and delete your WebView pages and assets on the DataHub server.