Griffin AI Toolkit Release Notes
2.5.7 (10/24/2024)
- Updated Python Call component to retain results across refresh
- Added an option in the Python Call component to restart the Python process for every call. This should resolve any memory issues with the Python process
- Updated Report component to support different page sizes and to switch to landscape mode
2.5.3 (05/28/2024)
- Fix a bug in the start component where time based trigger was not triggering at the correct time
- Recover automatically when historical data stored for charts are corrupt
- Allow HTML message type in SendMail component
- Add ability to rotate Chart X Axis tick labels by 45 degree or vertically
- Add ability to use string variable for file name in CSV FileIn component
- Fix Camera Capture component to support Stream and Image link
- Change model cluster folder to be under models directory
2.5.2 (02/17/2024)
- Make variables in live charts and table to be case insensitive
- HeatMap – Add support for bilinear interpolation and add option to flip x or y axis
- Fix a bug in genetic trainer where if DCC is not valid, the fitness function doesn’t work
- Update Mail sender to use Jakarta Mail API implementation
- Update Python interface to close Python processes properly
2.5.0 (01/11/2024)
- Add a new Modbus server that is directly integrated with the Griffin Mem Database
- TableView or Matrix view if configured to show different color based on value, will display the background color in Report
- Added HeatMap component to display heatmap chart
- Griffin can be installed in any folder other than c:\griffin
2.4.7 (12/21/2023)
- Added IotaWatt data link
- Added the ability to remove rows easily in Matrix customizer
- Added option to wrap search in Find dialog
- Added the ability to log read data link values to time series database
- Improve HTTP component to parse JSON response with array values
2.4.6 (12/4/2023)
- Added Java Open Computer Vision Libraries (Increases the installer size to 300MB)
- Added a new data link for REST API (JSON data)
- Added a Live Camera Capture component
- Removed code to copy tools.jar to JRE (Not required anymore with OpenJDK)
2.4.5 (11/22/2023)
- Fix a bug in PythonCall where sometimes if a parameter is set as optional, it stays optional even if value is entered.
- Fix a bug where if all values in a Line chart are same, the PDF file generated doesn’t get updated
- DataIn and QualityCheck component now checks for NaN value and marks them as BAD
- Allow String values in Report CSV component
- Add ability to create a new file in FileOut (start a new file instead of appending)
- Add ability to load CSV file to Matrix
2.4.1 (6/14/2023)
- Added IEC61850 Data Link.
- Add MQTT Data Link
- Fix a bug where FileOut (CSV output) was using locale specific symbols causing issues in Locale where “,” (comma) is used as decimal separator instead of “.” (period)
2.3.27 (4/20/2023)
- Add JSON Parser component to parse JSON string from a file or a string variable.
- Add POP3 Mail receive component
- Handle null values in multidimensional data passed between Python interface
- Fix a bug in FileIn component where empty fields can cause exception.
2.3.22 (3/12/2023)
- Add support to pass MixedMatrix to PythonInterface as multidimensional data variable type
- Update H2 to the latest version.
2.3.19 (12/18/2022)
- Add ability to load CSV data into Matrix and MixedMatrix
- Update FileIn to handle string values with comma in it (as long they are within quotes)
2.3.18 (12/6/2022)
- Fix a bug in Matrix configuration import/export
- In Optimizer component, allow use of initial input values in custom constraints and custom cost functions
2.3.16 (11/7/2022)
- Add support for n-dimensional array in Python call
- Fix a bug where invalid tags in Griffin DB can cause the Griffin DB service to not start
2.3.15 (10/20/2022)
- Add ability to export and import Matrix/MixedMatrix configuration to a CSV file
- Fix a bug in DataOut where tag valid period beyond certain period was not working
2.3.14 (9/11/2022)
- Add OpenSCADA OPC DA library option to support legacy links
- Update JFreeChart to the latest version to address better memory performance
- Update CSV File reader to be closeable interface
2.3.12 (9/7/2022)
- Add an option to exit and restart application
- Fix command line batch files for start/stop application and data links
- Update JSoup library for better memory performance
2.3.11 (8/27/2022)
- Add an option to override historical time in DataOut
- Add StringMatrix support
- Add support to refer Matrix & FIFO Matrix column as array
- Fix a bug in CSV File Input where when it is not configured and saved, the application cannot be opened again
- Update Quality Check component to continue on BAD port when the variable is invalid.
- Update PythonCall component to recognize Python exception and restart the Python process
2.3.5 (6/13/2022)
- Fix a bug in variable support in messages. Text like “Text < <VariableName>” should work now.
- Add a new Custom SQL Query component. User can enter the SQL query and can parse the results.
- Add application component count information under Dashboard->Applications->View->Application Info
- Add a limited Free license option. Free license limits the application to 250 components per application, no premium components (Optimization) and a maximum of 1000 I/O counts.
2.3.4 (5/17/2022)
- SQLRead component now has an option to replace null with a value
- Update the SQL Server JDBC driver library to the latest version
- Use Windows authentication for SQL Server when username is empty
- Use SQL Connection pooling for SQL components
- Allow string constants in String Copy operation
- TableView component now supports String columns
- Added a new MixedMatrix component that allows string and numeric columns
- Added a HTTP component to do GET, POST and PUT REST APIs
- Added a Teams component to post messages to a Microsoft Teams Channel
2.3.3 (5/10/2022)
- Fixed a bug in OPC UA data link where unsigned byte was not handled correctly
- Fixed a bug where String copy operation was not working for string array
- Added support for string type values to be written to historical DB (InfluxDB)
- Fixed a bug where Matrix variable chooser provided “Values” variable under column name
- Fixed a bug where String arrays displayed two values variables in variables chooser.
2.3.2 (4/19/2022)
- Update Steam IF97 library to the latest version and add other unit systems (Engineering and IF97 Default Unit)
- Update DataOut component to optionally save data to InfluxDB time series database
- Fix a bug in GeneticTrainer where sometime it doesn’t run any trainers
- Sort Tag browser in DataOut component
- Fix a bug where historical data for LineChart and XYHistChart was not loading
2.3.1 (3/29/2022)
- Fix a bug in Process Manager where application start stop interface was not working in some cases
2.3.0 (3/27/2022)
- Improve performance for scanning application, links, genetic trainer and model folders
- Improve Griffin DB performance. Add a new listener based interface to support web interface
- Remove OpenSCADA OPC link library and standardize on Native JNI implementation
- Switch log4j from v1 to v2. Note: the older v1 version was not vulnerable to the recent log4j vulnerability
- Display bad values in tag browser as BAD instead of 0
2.2.11 (2/10/2022)
- Fixed a bug in SQLRead component with reading rows as an array
- Added the ability to specify the variable type when reading data in SQLRead.
- Fixed a bug where old SQLRead that was reading CHAR[1] type column as a integer was not working anymore.
2.2.10 (2/03/2022)
- Added Pareto mode for Optimizer.
- Made memory improvements when working in sub-second thread cycle
2.2.9 (1/17/2022)
- Fixed a bug in SQL Components where String type SQL columns were processed like number type.
2.2.8 (1/11/2022)
- Updated OPC UA data link to use BrowseNext function to query more tags in case the OPC server returns a limited set of tags.
2.2.7 (12/21/2021)
- Fixed a bug in the FIFO component editor where the scrollbar was not scrolling all the way .
- Fixed a bug in the Repeater component where the RepeaterIndex variable value was set to the last value +1 after the repeat loop is complete. This was causing some errors in the log about GUI update of variables failing.
- Fixed the Python Call component to detect the Python process exit and restart the process.
2.2.6 (12/08/2021)
- Added a JavaCall component to write custom Java code within the component.
- Added a FIFO Array component that can maintain a FIFO for a list of variables.
- Added support for Matrix variables to be accessed with Column index and Row index from other components.
- Added support for Matrix values to be passed between Python code and Griffin application
2.2.5 (10/26/2021)
- Add a Python Call component to make calls to Python functions
- Add an “Always” option for application retries
- Add an option in StringOp component to find a text in a string array
- Fix a bug in Genetic Trainer where top results were not correctly sorted sometimes
2.2.4 (10/6/2021)
- Fix a bug in OPC UA Data link where if it is started before the server is available, it never makes the connection
- Update String Operation component to convert a string to number
- Update DateTime component to convert string to datetime. DateTime component also generates a timestamp string
- Add documentation for String Operation component
- Fix a bug where older design files failed to open
2.2.3 (10/1/2021)
- OPC UA Data link now displays the full tag path. Manual add in OPC UA will now use full tag path.
- OSI PI Data link now supports String value type
2.2.2 (9/27/2021)
- OPC UA Data link now supports all reading and writing to tags of type numeric array, string and string array
- DataIn and DataOut components can now read and write numeric array, string and string array type values
- Fix a bug in components variable check was case sensitive causing some components to be highlighted in amber.
- Added the “Retained” message option for MQTT publish component
- Add an option to Repeater component to repeat based on a selected array size
- Added a String operation component for string manipulation
- Fix a bug in the CSV file timestamp parser where some invalid time can cause date like 8/2/21 to be parsed as in year 21 instead of year 2021.
- Fix a bug where datalink of type Modbus slave cannot be created.
- Fix a bug where sometimes components are highlighted in red even when they are configured properly.
2.2.1 (9/12/2021)
- Components will be highlighted in amber color if they use variables from components that are not connected to a logic.
- MQTT component now supports plain text and JSON message format in addition to SparkPlug. JSON message can be used to exchange Griffin variables between Griffin applications running on different servers using a MQTT broker.
- Show tags in sorted order in DB Browser
- Increase the default memory limit for runtime application to 6GB
- Fixed a bug in Linear Interpolation component where invalid result variable was not tagged.
- Added a “Restore application defaults” option on Tuning screen (TableView)
- Fixed a bug where old deleted components (like ModelDCC) remained in the application
- Double click on variable chooser dialog will automatically selects the variable
2.2.0 (9/6/2021)
- Added a new event triggered thread type and a Trigger Event Thread component
- Added MQTT component to publish and subscribe to Sparkplug B IoT messages
- Added Genetic Trainer Component
- Fix an issue where sometimes the component are highlighted as not configured.
- Improve performance of loading historical data during application startup
- Increase default memory limit in processmanager.cfg file
2.1.9 (6/4/2021)
- Fix a bug where the “Auto save after training” was not saving compound neural network with the trained flag.
- Improved the model load time
2.1.8 (5/2/2021)
- Update Modbus link to make update time validation optional and configurable.
2.1.7 (5/6/2021)
- Fix a bug in FunctionStart component where parameters gets stuck with the same value.
2.1.6 (5/2/2021)
- Fix FIFO Matrix component to be used by third party library
2.1.5 (4/29/2021)
- Updated Repeater to support loop while a condition is true
- Fix a bug in Steam and StdDev component where when the name of the component was updated, the live variables failed to update
- Add a visible attribute to the Griffin HTML tag used in Report component. This allows blocks of charts or tables to be visible based on a condition variable.
- Update data link to detect failure in write only links for restart
2.1.4 (3/4/2021)
- Updated FileIn component to stop at end of file. Added a new output port to FileIn for end of file or error
- Updated FileOut to have a column type and allow timestamp, string and number variable for column values.
- Fixed PI link to open PI link configuration saved with older version (15.x)
2.1.3 (2/9/2021)
- Added Correlation component that performs Pearson Correlation on CSV data file or Matrix columns.
- Fixed a bug in Genetic trainer where error messages may be displayed on the console window when opening the results before any models are saved.
2.1.2 (2/4/2021)
- CurveLookup can be done on an array to generate an array result
- Fixed a bug in Genetic trainer where results may not show up in some configuration settings.
2.1.1 (1/30/2021)
- Added Covariance equivalization as an input/output normalization
- Fixed Genetic Trainer ranking issue
2.1.0 (1/23/2021)
- Add OPC UA data link
- Update OSI PI Data link to support explicit login
2.0.12 (1/17/2021)
- Update Modbus data link to check write time from DCS master to set BAD status for stale values
2.0.11 (1/2/2021)
- Fix a bug in Native OPC where only value was set to BAD and status was still good.
- Update OPC documentation for Native OPC link type.
- Update log4j and apache commons library to latest version
- Make Native OPC as the default
2.0.10 (12/27/2020)
- Native OPC now uses OPC Server cache to read data just like OpenSCADA. This should resolve any performance issue on the OPC server with Native OPC link type.
- Native OPC can be directly configured to use a particular login credential if needed. The “Griffin Service Manager” service “Run As” credentials doesn’t have to be modified.
- Native OPC can now be used for both COM based OPC servers (localhost) as well as DCOM based OPC servers (remote computers). For remote computers, credentials can be configured on the OPC link configuration
- Native OPC now uses JNI to make the native COM/DCOM calls, this eliminates additional processes (griffinopcread and griffinopcwrite)
- Folder permissions are set so no the background service has full access to the C:\griffin folder.
2.0.9 (12/7/2020)
- Automatically remove spaces and other characters not allowed in Grffin DB tag when configuring a data link.
- Fixed a bug where additional “Clustering only inputs” that was deleted was causing a model from being added to a hybrid model
- LineChart and XYHistChart history can be cleared by right clicking on the chart and selecting the “Clear History” context menu
2.0.8 (11/5/2020)
- Log Viewer will continue to display logs even if the application is stopped and restarted. No need to close and reopen Log Viewer when restarting the application
- Fixed a bug where some error logs were going into model_editor.log
- LineChart and XYHistChart history data will be held in a database file instead of memory. This reduces the memory usage of the background runtime application engine.
- Move errors showing up in servicemanagerwrapper.log to the appropriate application log
2.0.6 (10/20/2020)
- Add diagnostic window to Modbus Slave Hub link type
- Delete application runtime folder when deleting application
2.0.5 (10/6/2020)
- Add an option to File Input Link to wait for new rows to be added to the CSV file
2.0.4 (8/29/2020)
- Add an option to ParametericTest to keep repeating the tests.
- Added weather component
- When overwriting model files, use a temporary file to avoid race condition where the optimizer can load the model before the model file is completely saved by the retrained.
2.0.3 (8/19/2020)
- Fix a bug where long model name strings were logged during retraining
- OPT will not fail if free inputs are bad.
- Fix a bug where auto start applications were not started after a reboot sometimes because the Griffin DB Service was started after Griffin Service Manager
- Fix a bug where genetic trainer result stored with older version failed to open in the newer version
- Added an option to OPT to check the model test error before optimizing. If the test error is greater than a threshold, the OPT will fail. For submodels, if the test error is greater than a threshold, the submodel is not used and the default model is used.
- Add an option to override reuse weights when model test error is greater than a given threshold.
- Saving model is done to a temporary file and then renamed to the correct filename. This is done to avoid any race condition where the optimizer can open the model before it is fully saved by the retrainer.
- Add an option to drop old submodels if there are not enough data in the new training file (< min patterns per cluster)
- Fix an issue where downgrading to older 16.x breaks the older 16.x version. The workaround for version 2.0.2 and older is to delete the pm.ser file under c:\griffin\runtime
- Fix a bug where FileOut will close even if it is misconfigured
- Copy and paste will now work on Genetic Trainer Input min/max configuration dialog.
2.0.2 (8/9/2020)
- Fix a bug where old models saved with version 14.x cannot be opened
- Sign all .exe within the installer to avoid any anti-virus flagging
- Fix a bug where version number was not displayed
2.0.1 (7/2020)
- Initial version with license manager