Version 09/10/2018

  • Removed the service restart buttons from the services page as they are no longer effective now that the services are launched internally to the supervisor process.

  • Event system state on the logic flows page was superimposed over the nic state icon. Adjusted css to fix.

  • Fixed an issue where saconsole buttons in html5 panels were leaving the inner button visible when the button was set to hidden.

  • Fixed a bug where if you saved a panel using legacy PanelDesigner and entered the name during the save instead of before the save and the name has a space, it would not get replaced with underscores and the panel would be undeletable due to an incorrect filename.

Version 09/07/2018

  • Fixed a bug in html5 panels where if editing two different panels on two browser instances, clicking save on one would cause a reload on both.

Version 09/06/2018

  • Fixed a bug with pasting copied custom user controls.

    • For example custom console buttons would appear with double inner buttons after saving pasted components.

  • Added some fixes for ampersand encoding and decoding in links where the links are exposed as values in the html5 panel property grids.

  • Fixed a bug where if you created a panel with bindings, then deleted the panel, then created the panel again with the same name and bindings, the binding logic flows would not get created the second time without a restart.

  • Updated production installer to ask about initial ip addresses for multiple production builds in the same network.

  • Bumped the font size in crystal fonts display up one size in Linux to look better under dotnetcore.

  • Added a bit of code to handle engine aes67 responses without the 5004 port.

  • Removed an unnecessary force of the nic name to Eth0/1 during boot.

  • Fixed a benign issue with setting network address with the cfontz display and console menu related to storing broadcast address and prefix values.

  • Fixed a bug where object translators could not be used in panel bindings.

  • Added a view button to the panel designer page which opens a running instance of the panel in a window.

  • Fixed a bug with the IFB changes that was not sending the correct syntax for ptt on the up state.

  • Fixed an issue with the flash property and legacy panel hardware mapping.

Version 08/28/2018

Important Note: Please review release notes for version relative to changes in the operating system as these also apply to this version.

  • Cleaned up presentation of lwcp objects and properties for Qor.

    • Some properties and objects were being presented based on similar objects in Fusion but do not apply in Qor.

    • They have been removed in Qor branches of the logic flows property tree and API.

  • Fixed an issue where monitor section properties were not being displayed in the Logic Flows simple tree.

  • Fixed an issue where monitor section objects and properties were sometimes not appearing after a restart until a button was pushed.

    • Note that many of the monitor section properties are read only and so will only be presented in relation to logic flow start points.

  • Fixed an issue with html panel faders outputting an incorrect value to xnode gain states.

  • Added correct numerical range for INGN and OUGN in attributes for SRC and DST.

  • Fixed the logic flow tree css so that properties line up under their parents more intuitively.

  • Added support for Element/Fusion fader IFB. Please review the beta documentation for important details on using these parameters.

Version 08/22/2018

  • This version is functionally equivalent to but with a new operating system and target framework.

  • Starting with we have had parallel development branches with a new operating system and target framework. This alternate version (referred to as the buildroot version) has been going through internal testing as well as testing with select customers for several months. The difference in this version is that the operating system has been completely reworked to be a purpose built version of Linux rather than being based on a stripped-down version of Debian. This gives us much more control over what exists in the operating system. Additionally any of the code based on dot net technologies has been reworked and recompiled to target the dotnetcore framework as opposed to the mono framework. We have done this to obtain the following advantages:

    • Better control over the operating system and an optimized build process.

    • Better control over the codebase.

    • Much smaller footprint on the disk (~300MB as opposed to ~600MB). This leaves more space for image files with panels, etc.

    • Smaller update packages (~100MB as opposed to ~200MB)

    • Significant performance improvements and lower cpu utilization under dotnetcore.

    • Improvements in memory consumption and management.

  • Subsequent releases will use this new operating system and codebase.

Warnings: Users of PathfinderCore PRO on the fanless engine platform (as opposed to vm beta testers) will see an initial increase after startup in memory consumption. This is due to the fact that this build moves from a 32bit OS to a 64 bit OS on the Fanless Engine platform. However we see much better memory management as the system runs.

The update package will make certain changes to the boot sector. Upgrading and downgrading of software will continue to work properly in all but one situation. If you upgrade a bank to .31 or later and then switch back to a pre .31 version and try to overwrite the .31 bank with a pre .31 software image, the write will work but booting into that downgraded bank will hang. Power cycling will then boot bank into the previous bank. In this case you can run a special update package that only fixes the boot sector. Note this only happens when running on a pre .31 bank and trying to downgrade a .31 bank to a pre .31 software image. Most customers will never experience this. We only expect to see this with systems integrators and support engineers who may need to be switching their software versions regularly to match that of their customers.

The repair update package can be obtained at Boot Sector Fix Fanless Engine or Boot Sector Fix VM

Version 08/22/2018

  • Fixed an issue with logic flows startup where external start point states were being requested numerous times if the same startpoint existed in multiple flows when it only needed to be requested once.

    • In some cases this was causing heavy analysis and long startup times for complex flows where certain start points were reused regularly.

    • Added a hash table to make sure requests only happen once after the initial flow objects are loaded.

  • Changed subscriptions in sapclients to use indexing for non-max depth subscriptions for better lookup performance.

  • Stopped the last evaluated property from being raised in logic flows to reduce subscription analysis.

  • Removed some unnecessary and noisy sap messages related to logic flows for faster response times and cleaner analysis.

  • Reworked LogicFlow Manager to handle logic flow internal changes directly rather than subscribing and passing them through the normal subscription matching process for better performance.

  • Added an option to combiners called RaiseOutput that takes two values: RaiseOutputOnSet(Default) and RaiseOutputOnChange.

    • This defines whether an analysis due to a change on a combiner input causes the rest of the flow to execute if no change to the combiner's output occurs.

    • When set to RaiseOutputOnSet, any change entering the combiner will cause blocks beyond the combiner to also be analyzed and set.

    • When set to RaiseOutputOnChange, blocks beyond trhe combiner will only be analyzed if the output state of the combiner changes.

    • This option can be very useful in certain situations to reduce analysis load.

    • See beta manual for more details on this feature.

  • Also added a write only property on Logic Flows folders called ChangeAllCombinerRaiseOutput which can be used via the API to set all combiners under that folder and its subfolders to one state or the other.

    • Note that if you change a combiner from the default RaiseOutputOnSet state to the new RaiseOutputOnChange state this will alter the stored init messages in a way where that flow will not be loadable by older versions of the software.

  • Added UI changes for the raiseoutput property in combiners.

  • Changed the watchdog ping startup delay to 10 minutes from 2 minutes for very large systems that have a great deal to load on startup.

  • Fixed the ChangePage functionality in html5 panels.

    • This was broken in and 29.

  • Fixed the occasional double click necessary to move between pages in Html5 Panels.

  • Removed Analog micro logging from php scripts.

    • This logger was accidentally left in place for debugging and was generating logs in the /tmp folder which is not managed by log rotation.

    • In the case of buildroot preview versions this was leaking ram since /tmp is a ramdisk in that version.

    • In the case of normal versions this was causing unnecessary space to be used on the cf card.

  • Fixed an issue where bindings on html5 panel controls were not being copied when a copy and paste took place.

  • Fixed a bug where changing the name of an html5 panel control with bindings would cause the bindings to get lost.

  • Fixed a bug in html5 panels where removing all characters from a control name would cause it to jump to the far left corner and if you then try to select it without first giving it a valid name (leave the name blank) it would become unselectable.

  • Fixed a bug with the new route locking where changing pages in the router was causing locked ios to show up with an unlocked icon even though they were still locked.

  • Fixed an issue where when editing a virtual router, the edit page would not return to the points tab.

  • Added additional version stamps to html5 user panel links to reduce browser cache problems.

  • Made the html5 panel designer save button wait for confirmation of successful save from the server before refreshing the page to allow for slow writes of large panels on cf cards.

  • Added the swap option to html5 panel button indicators.

Version 08/09/2018

  • Fixed a bug with users and new object messages where if a standard user with no rights to the created object was logged in, it could use an indi NONE message for all user socket responses instead of the correct message depending on the user's rights.

    • This was causing problems with clustering as well in some cases as an new NONE was being generated instead of the new object to the other node.

    • This only occurs randomly when a standard user with limited rights is logged in

    • Though it can occur consistently for a while depending on the order of the client returns when iterating through the clients where the first in the iteration does not have rights to the object.

    • Fixed in this version.

  • Because of the bugs addressed by this version, a manual sync may be a good idea after updating both nodes in the cluster just to ensure nodes are properly synchronized.

Version 08/02/2018

  • Fixed a problem with new user creation with the route locking options.

    • They were not properly exposed in the constructors.

  • Fixed a bug in html panel console channels where double digit fader numbers (10,11) were being confused with 1 due to an incorrect startswith line of code.

  • Fixed some other panel bugs related to object path matching.

  • Added user panels into user api security links.

    • User security for html panels is still in progress and not complete in this version.

  • Fixed a bug where any login was updating clustering lastupdate on all users during the validation process.

  • Fixed a bug where no access was updating a noaccess security profile in the database for each failed login.

  • Fixed issues with user clustering.

    • Removal objects were not being created when users were removed and cluster was not in sync meaning the users could reappear when synchronization was reestablished.

  • Improved the network connectivity and route locking icons.

  • Fixed a bug with cloning panels where the folder security was not being set properly so new pictures could not be uploaded into the cloned directory.

  • Added an option to fix panel directory security for panels cloned under previous versions.

    • Login to port 9600 with the appropriate user name and password and send SET UserPanels#0 FixPanelSecurity=True

    • This command should only be necessary if you have cloned html panels in versions prior to this version and can't upload pictures to the cloned panels.

    • Contact support if you need help.

Version (Internal Only) 07/31/2018

  • Fixed a race condition that could happen with virtual routers where the sources/destinations have multiple base points.

    • It is expected that these will pass through a -3 other state as route changes happen, but prior to this fix it was possible that while the route state would be correct in the data structure, the -3 might get sent out the subscribed ports after the full change.

  • Added route locking in routers. See beta documentation for details.

  • Added CanLock and LocksDoNotApply options to users.

    • Note: Locks do not apply option is working for the API but not for the web page UI at this point in time.

    • When locking a virtual route the underlying base point will not be locked.

    • When locking a base point, the virtual destination will become system locked and the lock can only be cleared by clearing the base point lock.

    • See Beta documentation for more details.

  • Added testing support for in development equipment.

Version (Internal Only) 07/23/2018

  • Fixed a clustering bug for memory slot and html panel states.

    • With memory slots whose startup state are not set to last known, the current state is not written but the last sync value on a restart thinks sync is up to date so it was not pulling the latest value from the other node.

    • Similar issue with many html property states.

    • Clustering now pulls all sync dates for these objects to make sure sync state is updated on these objects.

  • Fixed an issue with image syncing after one of the nodes was offline.

  • Decreased ping time for clustering for more frequent pings.

  • Added a warning that images may not be uploaded if the panel has not been saved - i.e. still in New Panel state.

Version (Internal Only) 07/20/2018

  • First version with Panel clustering for internal testing.

  • Fixed a bug with SapProperty generation in messages when there are embedded encapsulations.

  • Fixed <br> in a label so that it converts to \n when sent to Lcd buttons.

  • Added a system item and used it for the initial get request to exclude NOSYNC and non cluster items - $CLUSTER_SYNCABLE

  • Fixed a clustering issue where during initial synchronization one system would ask for changes since the time of the last known in sync and the return would include times equal to rather than just later than.

    • This could have unexpected results for objects changes right before one of the servers wen offline.

    • Example create a panel when both in sync. Shut down one and delete the panel on the other.

    • During a restart, the panel might get recreated.

  • Fixed the css refernces to include version data to help with browser caching problems with the css when working on a panel design.

Version 07/13/2018

  • Fixed an issue where the parameters of the disk space added to the system status page in were reversed.

  • Fixed the message displayed in logic flows regarding disk space to be more descriptive.

Version 07/11/2018

  • Added the ability to send ascii as hex in translators and Lwrp/Lwcp tosend using \%XX where XX is the hex numeric value to send.

    • Escape values are now: \cr, \lf, \t, \%XX.

    • Double slash to escape the escape slash and send the literal value.

    • So for example \%41 sends A but \\%41 sends \%41 and %41 sends %41.

  • Fixed an issue with the disk space alerts added in that was sending erroneous -1 values.

  • Fixed an issue where the reported diskspace alert values would not match the alert parameter but rather the current value which made it hard to match in flows.

  • Added the Disk Space alert to simple flows.

  • Added Disk Space to the system status web page.

  • Made the routes tab the default tab when you open a router rather than the points tab.

Version 07/04/2018

  • Added a checkbox to enable/disable push and move on virtual router editing.

  • Added a confirmation message on push changes in virtual router editing.

Version 06/30/2018

  • Fixed a bug that was causing a loop looking up all ordinal base points in a virtual route over and over again times the number of ios in the router when opening the edit page for the virtual router.

  • Fixed a bug where if a source was added to the virtual io base package of a destination, the application could crash during startup.

  • Added an advanced option to check whether logs need to be rotated every x number of message writes.

    • Enable this option in advanced options by adding: SET Logs#0 CheckRotationAfterMaxWrites=250

  • Added a diskspace object to the API including an alerts property that can be set via advanced options.

    • By default this is enabled for 95%

    • This feature is still a work in progress and is only available for monitoring in logic flows via the api tree.

    • This feature will be fine tuned and added to system level email alerts soon.

  • Increased the open file limit from 1024 to 4096 in order to increase the number of available open sockets, etc.

  • Added the IO number in the routes page for virtual routers.

  • Fixed an issue where the sort arrows for some routers for the destination name would instead be tied to the pointer arrow.

  • Added a confirmation message if you attempt to delete a base io on a virtual source or destination.

  • Fixed an issue where newly discovered devices would sometimes show as offline even though they were online.

  • Added a manual reconnect api property to lwrp and lwcp interpreters.

  • Fixed a bug that was sometimes causing the connection recycling on a failure to stop attempting to connect.

  • Fixed an issue for better manual recycling of connections.

  • Added an icon to the devices web page to allow recycling of device connections manually.

  • Added livewire channel number column to the import lists. This column is only visible if importing sources from an Axia Audio Router.

  • Added an alert error message if the user tries to change a virtual io id to one that is already in use in the router.

    • Previously it would just overwrite the io.

  • Hid certain router editing fields when editing is disabled due to user rights.

  • Added the ability to import starting with a specific number in the virtual router.

    • The default value of -1 will import at the end of the router.

  • Added cross checking to make sure importing at a certain id would not overwrite existing ids.

  • Got moveup, movedown, pushup, and pushdown in virtual routers working.

    • Move up and move down will increase or decrease the id of a selected IO swapping with the one it is moving to if it is already in use.

    • Push up and push down will increase or decrease the id of a selected IO pushing all later/earlier ones up or down up to the next hole in the ios.

    • Push down will fail if there are no available open id numbers.

    • Down or up refers to the Virtual IO numbering which may or may not be the current sort order in the grid.

    • It is highly recommended to sort the router by the IO number when using this feature to prevent confusion.

    • These features can be used to specify specific numerical ordering in a virtual router to match controller system numbering.

    • We may still revisit this in the future to migrate this to a in browser change that is applied rather than actually changing the router on the fly for each change.

  • Fixed a bug that was causing gpios to not mount backing device data correctly in some cases.

  • Fixed an issue where incorrect pending import ios could wind up in the import list if cancel was selected and a new router or import list selected before the first ones were complete.

Version 05/10/2018

Important Notes: First public beta of html5 panels. Please review the beta documentation for version in detail: Beta Feature Documentaion 1.3.x

This version is a combination of several internally released versions.

Please review the notes below for versions through for the full scope of the changes.

There are a number of changes and fixes in addition to the html5 user panel changes.

Html5 panels will not synchronize in a cluster in this version. That is coming soon.

Html5 panel faders will not work with Qor in this version. That is coming soon.

  • Html5Panel changes since internal release

    • Added versioning to the html panel sub panel iframe loading to improve browser caching issues.

    • Fixed some of the magnet snapping that was acting a bit funky to be more intuitive.

    • Fixed bugs with the spread functionality.

    • Stored the snapto and magnet states in browser local storage so the state is remembered on page reloads.

    • Fixed an issue with multiselect dragging that was requiring the shift or ctrl key to be held while dragging when custom type elements were selected.

    • Fixed an issue where clicking property row names were not always updating to the correct flow display.

    • Fixed a bug where not all name data for button devices was being filled into the data grid.

    • The flow block was not being hidden when changing selected objects.

    • Fixed a bug with changing bindings that would sometimes add duplicate binding properties into the backing storage causing unpredictable binding behavior.

    • Added some code so that selecting a hardware map button will automatically enable hardware map bindings.

    • Fixed a panel de-serialize issue with bound IO fields.

    • Got changing of io on faders and meters working.

    • Got proper io selection on AudioIO based binding.

    • Fixed an issue with apostrophes in user panel names.

    • Fixed box shadow property in grid to show actual box-shadow value. Previously it was trying to do an RGB conversion.

    • Wrapped up beta documentation for html5 user panels.

Version 05/04/2018

  • Moved OS to use mono 5.8 as there are reports of a memory leak surrounding file objects in 5.10.

  • Optimized a bit of code with panel hardware map loading

  • Added user names to the access violation log message.

  • Excluded none as a possible access violation.

  • Fixed logging of login attempts using the alternate login . username=xxx password=xxx method

  • Fixed an issue introduced in that affected io discovery in certain situations.

    • Occasionally it would not add new ios discovered during startup.

  • Made individual Router IO deletions cause a re-query of the device data which causes the io to get added back if auto insert is on.

    • 10 second delay on the re-add.

  • Fixed an incorrect value in default advanced options for SkipCleanLogs.

    • SET Logs#0.SkipCleanLogs=False should have been SET Logs#0 SkipCleanLogs=False

  • Hid the discovery autostart checkbox on the admin-system page and removed the persistent property on the livewire discovery.

    • Moved that functionality to an advanced option since it is not a recommended setting.

    • To enable the autostart of discovery change the nop to init for discovery in the advanced options.

  • Fixed an issue with the Online property that was causing the false state to get raised repeatedly during reconnect attempts.

Version 04/30/2018

  • Fixed an issue with users where save could be clicked before the API tree was filled and populated.

  • Fixed an issue with users where the API tree did not automatically display for general users if only root level objects were enabled.

  • Removed the LogAccessViolations advanced option briefly added in

  • Moved log access violations, login successes, and login failures to log tree options under the messaging branch.

  • Made some small performance improvements.

Version 04/24/2018

  • Updated one log message due to a structure that is marked obsolete in nlog4.

  • Removed NLog 2 from the project library now that we have moved to nlog 4.

  • Added code to retain the original date/time stamps when rotating log files so that they retain original data rather than the time of the rotation.

  • Fixed an issue where the log list was not showing the correct date time stamp. They should have been showing last modified not last changed.

  • Fixed bugs with user editing.

    • Editing and then saving a general user without expanding the sub branches of the api tree that had custom options set would cause the custom options to be lost.

    • Fixed an issue where canceling an edit user and then moving to a different user might not display the correct API data.

    • Canceling an edit now causes a page reload.

    • This version also expands all sub branches that have been set to anything other than inherit when you edit the user.

Version 04/23/2018

  • Non Public - Internal Release Only

  • Preview of Html Panels for internal review only.

  • Added a way to get data with a similar callback as json but in multiple messages instead of json to core connector.

  • Changed the routers loading code for better performance.

    • Removed a bug that was causing unneeded lookups inside a loop.

    • May need to refresh the page code with Ctrl-Shift plus refresh on the display page for the router to make sure the new javascript is loaded.

  • Moved router callbacks back to messages rather than a single json blob in order to prevent possible out of memory issues with large routers.

  • Fixed issues where dns.gethostname might not return a response.

  • Optimized local ip address lookup code.

  • Fixed a bug where editing a virtual IO that had no base points would present an empty base point in the javascript UI.

  • Fixed a bug in LwcpClient and SapClient regarding selecting incoming only for message logging.

  • Made an optimization such that if Sapv2 messaging is enabled the message is only built if enabled on at least one logger and then is remembered throughout the rest of that loop.

  • Added the Skip Web Client SapV2 option to log writers.

    • If checked and SapV2 external messages are enabled, this will not log messages from the web clients.

  • Added an option for logging user rights access violations to the sai-supervisor.nlog log.

    • This is in the advanced options and requires the value SET Users#0 LogAccessViolations=True.

    • Also added LogRotator settings to the options default file.

    • Note that turning on LogAccessViolations has the possibility of generating large logs at will log any branch that is requested but rejected due to access restrictions.

    • In max_depth message situations this could generate lots of log messages.

    • This is recommended to turn on for debugging and back off otherwise.

    • The parameter may be adjusted via the Users#0 Sap path as well for temporary setting and unsetting.

  • Added information to the log message about the source of the access voilation - what method sourced it.

  • Modified the cleanlogsforsize script to not execute the clean if the /srv/pathfindercore/skipcleanlogs.txt file exists and contains skipcleanlogs=true.

    • Modified the factory default script to delete /srv/pathfindercore/skipcleanlogs.txt if it exists.

  • Fixed an issue with subscription accessviolation logs that was generating access violations on any message the user did not have access to whether or not a subscription existed.

  • Added a network icon to show connection state.

    • Hooked that to the socket connect and close to show whether the web page socket is connected to Core PRO.

    • Added an error alert message if sending a change message (init, set, del) when the socket is closed.

  • Updated the baseinstall script to include python-numpy which is supposed to have some performance benefits with websockify.

  • Updated the OS to use mono 5.10.

  • Changed nlog from version 2.2 to version 4.5. Still needs testing. 2.2 was broken with mono 5.10.

  • Failed login attempts will now get logged to sai-supervisor.nlog.

  • New Advanced options (may not display in an upgrade but may be added):

    • SET Users#0 LogAccessViolations=False

    • Ignore option above - removed in the next build

    • SET Logs#0.LogRotator#0.RotateRule#0 MaxFileSize=1

    • SET Logs#0.LogRotator#0.RotateRule#0 MaxCount=3

    • SET Logs#0 SkipCleanLogs=False

  • LogAccessViolations options will log user access violations to sai-supervisor.nlog.

    • Note this can generate a lot of data as it will log any message from a sub, get, etc. that is restricted due to user rights.

    • It is recommended this gets turned on for debugging and turned off again for production.

  • MaxFileSize will set the maximum file size in MB for each log before it gets rotated.

    • Please do not alter log rotation and max size settings unless you are working in a vm with plenty of disk space.

    • There is some slop on either side of this as it is analyzed periodically rather than on each write.

    • If SkipCleanLogs is false there will still be a 100MB restriction on the entire logs folder and forceful cleaning to enforce that.

  • MaxCount will set the maximum number of rotatable logs for each log type.

  • SkipCleanLogs will allow you to disable the cron job that clens up log files by forceful deletion to attempt to keep the log folder < 100MB.

    • This option should never be set to True for cf cards or installs with limited log space.

Version 04/04/2018

  • Non Public - Internal Release Only

  • Preview of Html Panels for internal review only.

  • Fixed a bug with the htmlpanels button pull for hardware mapping.

  • NAB 2018 show version.

Version 04/03/2018

  • Non Public - Internal Release Only

  • Fixed a bug with the getversion script that was always returning rather than the correct version.

    • This was affecting previous attempts to reduce the need for clearing the browser cache.

    • Forcefully reloading pages after the update may still be necessary as browser cache invalidation is still a work in progress.

  • Preview of Html Panels for internal review only.

Version 03/26/2018

  • (From Fixed an issue with DayOfWeek timers during the Daylight Savings Time Shift.

    • In some cases it was causing an endless loop for an hour after each DayOfWeek timer scheduled for the day the time springs forward.

    • This was also causing the watchdog to reboot the system periodically until the hour after the timer should have fired had passed.

  • (From Fixed a bug that was causing the cluster backup generator to sometimes hang and then fail in the backup generation.

  • (From Fixed a bug where cluster backups in a plus GMT time zone could not be deleted due to the plus in the filename.

    • In this version plus is replaced with underscore in the generated name.

Version 03/04/2018

  • Made Object Translators able to have multiple matching inputs so that a single input could trigger multiple property changes on an output object.

    • Review the beta documentation for details.

Version 02/26/2018

  • (From Fixes an issue with passwords with certain characters.

    • Due to a malformed regex some passwords would not get written properly from the web page password editing to the back end.

    • When setting the Admin password this could cause a lockout of admin capabilities forcing a call to support.

    • Characters that could cause problems prior to this update include: \^$.|?*.

    • While this version fixes the problem, you may have to forcefully reload the web page to make sure the new code versus cached code is used.

    • In chrome while on the user page, hold Ctrl and Shift while clicking refresh to reload the new JavaScript files.

    • It is also not a bad idea to have a second Admin user that works before changing the password of the primary admin user. That will allow access if the password change is problematic.

  • (From Fixed an issue with Classic Ids being incorrect between two nodes of a cluster when a device was added after the cluster was formed.

    • This could cause issues with user panel controls which would work when connected to one server and not the other.

    • While this fixes the bug that was causing the classic id mismatches, it is recommended to do a manual sync to force synchronicity if you find this to be a problem in your system.

    • To do a manual sync go to the secondary server and click the manual sync button.

    • This will request a special backup from the primary, pull it over to the secondary, and execute a restore on the secondary.

  • (From Added warning messages if the file selected for a bank update does not appear to be named correctly for the deployment target.

  • Some of the logic flow changes in were not working completely as expected.

    • Some change messages that did not execute a change were not being passed through as intended.

    • Logic Inputs were not being cleared of their init state during disable/enable.

    • Enabling a disabled flow was sometimes causing things to execute after a relay combiner that should not have.

    • Please note that Logic flow changes from and could cause changes to how logic flows function. If problems arise please revert and report the flow to support.

    • Review beta documentation for details on the logic flow functionality changes in

  • Added a shutdown menu item to the console menu and R2 crystalfontz display.

  • Added code for proper licensing links with vm.

Version 02/20/2018

  • Fixed an issue where in some cases extending a logic flow would not pick up the initial state immediately until sourcing translators changed.

  • Fixed a bug that was not including the id in the set message for translators when the SkipInitialGet option is enabled to the backing storage.

  • Worked on an improved implementation of the SkipInitialGet option.

  • Fixed an issue where the SkipInitialGet request did not work if there was another flow that had the same start point which did not have this option engaged.

  • Updated copyright on the web page to 2018

Version 02/16/2018

  • (from Fixed an issue with log writers that were tcp listeners.

    • Changing the log parameters was sometimes causing an application crash due to a socket exception.

  • (from Updated Client/Mini links to 5.81.

    • Made meterfaders send -3276.8 to console fader when below -79.0 to force the Fader_State=DOWN value.

    • Fixes an issue where meterfaders were not populating controls properly if pointed at fusion vmixers or console channels.

    • Fixes an issue where meterfaders were not controlling console gain faders correctly.

  • Fixed an issue where Lwcp Mon commands were being sent to the equipment as mon#0 instead of mon.

    • This was not causing any issues because the equipment does not currently allow get or set with the mon object.

  • Changed logic flow translators and combiners to execute on inbound messages whether or not a change takes place.

    • This is potentially a breaking change but makes certain kinds of flows work more intuitively.

    • See beta documentation on this change.

    • If you have problems with certain flows after moving to this version please revert and then report the flows to us so we can evaluate.

  • Consoles now support a subscribe message for fader gain states reducing the ability to poll.

    • This new feature has been implemented in this version so that console fader gain changes are now subscribed to.

    • This allows for faster realization of these changes when they happen on the physical console rather than having to wait for a periodic poll response.

Version 02/12/2018

  • Added the swap value to properties that are binary (two state) in nature.

Version 02/08/2018

  • Fixed potential issues with item deletes and the possibility of the web page refreshing before the message was sent.

  • Fixed a problem where the base io editing on routers would not work correctly if numbering was off.

  • Fixed an issue where the page could be reset after editing base ios before all messages got sent to the server.

Version 02/06/2018

  • Fixed an issue where legacy panels could endlessly causing excessive cpu load trying to rectify classic ids if the classic id does not exist.

  • Fixed a bug with virtual IO base point editing that was preventing the removal or reordering of base points in a virtual io.

  • Fixed a bug that was causing virtual base IO reordering and sometimes deleting of base io points not to work correctly.

    • In some cases the final rectification was incorrectly ordering the base ios.

    • The divergence point in the base point analysis was generating a delete message based on the path including the mount point instead of just the virtual base io path.

    • Note: Base IO reordering still may not be entirely correct. Still testing and tweaking the code.

  • Changed client link to 5.78 which disables/hides the Scheduling button which is non-functional in CorePro.

  • Changed client application links to point to PathfinderPc.com instead of internally to save some space on the cf card.

Version 01/19/2018

  • Updated the operating system and kernel to newer versions including mono from 4.2 to 5.4.

Version 01/19/2018

  • Fixed an issue which could cause memory leaks when running on a processor other than the fanless engine I5 processor.

Important Note: The first startup after bank updating beginning with this version may take 10 to 15 seconds longer as a new file is compiled and generated. Subsequent startups will return to normal.

Version 12/14/2017

  • Based on but with the patches from plus a few new features.

  • From patches: Added scrolling on logic flow folders for long lists of folders in the web UI.

  • From patches: Added some code to force ownership and securities on network config files during a restore operation including an update restore.

    • Attempts to fix a reported issue where occasionally the office network cannot be changed from the web page.

  • From patches: Fixed an issue where double clicking on an endpoint would select the correct property but sometimes would display the incorrect property description.

  • From patches: Fixed a bug where deleting combiner inputs was not always causing the combiner to get rewritten to backing storage.

    • As a result the deleted passiveinput ids would load after a restart even though no translator was hooked to them.

    • This could cause unassigned states on those combiner inputs and prevent the combiner from analyzing properly after the reboot.

    • This fix will prevent this from happening with future flows.

    • If you have a flow in this state it is easiest just to recreate it.

    • If the flow is particularly complex to recreate, contact support as there are ways using the API to remove the extra combiner inputs.

  • From patches: Added a hover balloon over combiners to show the passive input count.

    • Used to determine a discrepancy in the input count.

    • This will allow you to determine if a combiner is in the state mentioned above where it has more inputs than translators tied to its inputs.

  • Fixed a typo in the web page with the clear options for the delay combiner.

  • Added an option to use <%DateTime%> in email messages and subject lines to insert Date and Time into the message.

Version 12/06/2017

  • Based on but with the patches from plus a few new features.

  • From patches: Fixed a bug that was preventing the creation of String Builder memory slots. This was broken as of when startup states were introduced.

  • From patches: Fixed a bug that was causing Virtual Routers not to show the Other source state in many situations.

  • Changed email host code such that a blank user name will cause the email to be sent without any credentials. The host would need to support non-credentialed emails.

  • Added a pair of properties to DelayCombiners to allow for a momentary output value:

    • Clear output after countdown completes: When the countdown completes the correct value is passed to the output and then it is set to the clear value afterwards.

    • Clear Value: The value to reset the output to after passing the delayed value through.Version 12/14/2017

Version Beta 11/29/2017

  • First beta version with new features since

  • Based on patch status.

  • Added a link on the system page to documentation on the new beta features until they are folded into a new revision of the manual when beta moves to release.

    • Use this link to gain more information about using the new beta features.

  • Added a write only property to interval timers called reset.

    • When a timer is running this will restart the countdown.

    • If it is not running this will set elapsed to false.

  • Added a write only property to interval timers called ResetStart.

    • When a timer is running this will restart the countdown.

    • If it is not running this start it.

  • Added a write only property to interval timers called ResetStop.

    • When a timer is running this will stop the timer.

    • If it is not running this will set elapsed to false.

  • Added copy, cut, and paste to the Logic Flow views for copying, cutting, and pasting entire views.

    • Select a view to copy and click the copy icon.

    • Select a new parent and click the past icon.

    • The system will ask for a new name for the view to be pasted.

    • Paste will always paste flows in a disabled state assuming you will want to modify the settings after the copy and paste.

    • If a view has sub views those will also be copied.

    • You cannot paste a view into itself.

    • As this is a beta feature please take regular backups while beta testing until this feature is proven.

  • Double clicking a combiner will no longer rotate through combiner options. Instead it will open a combiner editing dialog.

    • This allows you to select the desired combiner type directly.

    • Additionally new variations of combiners require configuration parameters and so this dialog is also necessary for setting those parameters.

  • Added an Equality combiner.

    • This combiner accepts multiple inputs and yields True or False depending on whether the inputs are the same.

    • A case sensitive or insensitive option is also provided in the dialog when an Equality combiner is selected.

  • Added a Delay combiner.

    • This combiner allows you to introduce delay into a flow without needing to use an interval timer.

    • Delay Combiners only accept a single input.

    • Interval timers should still be used when multiple different flows need to interact with the interval timer.

    • The Delay Combiner includes several configuration parameters:

      • Delay Time: The time of the delay in milliseconds.

      • Reset delay if input changes: If checked any time the input to the combiner changes the delay is reset rather than continuing its countdown.

      • Output Value: Select whether the delay combiner should output the input value from the start of the delay countdown or the input value at the end of the countdown once the countdown is complete.

      • Cancel Value: A value that if seen at the Delay input will cancel the delay countdown.

  • More detailed documentation of the changes may be found at: betamanualchanges1-3.pdf