Version 1.2.4.00             11/13/2017

  • Fixed a bug introduced in 1.2.1.00 that in certain rare cases could cause logging to create a deadlock on the SapV2 connection.


Version 1.2.3.00             11/09/2017

  • Fixed a bug that was causing Logic Flow views to leave residual data in the backing storage after more than 1 rename of a view.
  • Changed the audio alarms web page data table to make the save state option enabled.
  • Changed the scenes web page data table to have filtering enabled.


Version 1.2.2.00             11/03/2017

  • Note: You may need to hold cntrl-shift and click refresh to refresh the logic flows web page the first time after updating to ensure you are not using cached javascript.
  • Note: Be sure to update client applications (client, mini, panel designer) to the versions in this software package.
  • Fixed an issue with day of week timers in a cluster that was causing them not to fire on subsequent days in some situations.
  •    The elapsed property on a Day of week event when in a cluster was not resetting back to false such that the next day event would not happen.
  •    The elapsed property should now flip back to false 10 seconds after it flips to true.


Version 1.2.1.00             11/02/2017

  • Note: You may need to hold cntrl-shift and click refresh to refresh the logic flows web page the first time after updating to ensure you are not using cached javascript.
  • Note: Be sure to update client applications (client, mini, panel designer) to the versions in this software package.
  • Fixed inconsistencies between lists on the web pages as far as pagination controls and count fields.
  • Limited send buffer size of network loggers.
  • Fixed a file access problem with log file writers after changing the write fields.
  • Fixed a bug that was sometimes causing day/time and day of week timers not to execute when in clustering after a restart.
  • Fixed a bug where a collection in log files was growing with repeat instances of file information.
  • Removed some DateTimeOffset calls that were unnecessary.
  • Cleaned up some string processing for potentially faster results.
  • Added code to not send poll messages if send buffer already has things waiting in the queue.
  •    This prevents the queue from increasing and causing a memory leak.
  • Discovered that meters were defaulting to an incorrect polling rate and not respecting the request of the clients.
  •    This in some cases was causing the memory to leak.
  • Removed a LastContacted datetimeoffset that was getting set with every set of bytes received as it was degrading performance.
  • Fixed an issue with send buffers that theoretically could allow dequeued items to still consume memory.


Version 1.2.0.00             10/20/2017

  • Note: You may need to hold cntrl-shift and click refresh to refresh the logic flows web page the first time after updating to ensure you are not using cached javascript.
  • Note: Be sure to update client applications (client, mini, panel designer) to the versions in this software package.
  • Updated the manual to version 1.2.
  • Fixed a bug that could cause client silence bubbles to appear on a node's alarm web page after a restart when in a cluster.
  • Updated the bank description.
  • Fixed an issue where if both nodes have the same office ip address, cluster reconnects could end up causing a node to connect to itself.
  •    Now the system will not try to connect to a remote cluster node on a local ip address.
  • Fixed issues where event system state changes were not being raised to subscriptions in all cases.
  •    This meant sometimes you had to refresh the clustering web page to see the actual event system state.
  • Fixed an issue where leaving a cluster would delete the ClusrterAdmin user from all other nodes in the cluster as well.


Version 1.0.0.42 Beta             10/11/2017

  • Note: You may need to hold cntrl-shift and click refresh to refresh the logic flows web page the first time after updating to ensure you are not using cached javascript.
  • Fixed a bug where object translators were sending an incorrect message for obtaining the initial state of the object.
  •    This was affecting the initial state setting of color and text on hardware maps.


Version 1.0.0.41 Beta             10/10/2017

  • Note: You may need to hold cntrl-shift and click refresh to refresh the logic flows web page the first time after updating to ensure you are not using cached javascript.
  • Fixed a bug with logic flow folder/view renaming that was causing garbage folders with identical object ids to be left behind - since 1.0.0.40.
  • Fixed a bug where factory default was not properly wiping out the new LogicFlows folder - since 1.0.0.40.
  • Fixed a bug in the UI code that was creating a garbage combiner with an undefined operator when deleting a combiner.
  • Fixed a bug in the logic flows color selections where when selecting translations that had colors, the color selectors were not updating with the color.
  • Fixed an issue with the Alarm web page where editing an existing alarm would not show the name of the io in the io field.
  •    It was showing the address instead. Now it will switch to the name once the name is resolved.


Version 1.0.0.40 Beta             09/22/2017

  • Warning: This version is a rollup of unreleased changes from builds 1.0.0.36 to 1.0.0.39.
  • Warning: Please review the release notes for 1.0.0.36 through 1.0.0.40 to fully understand the changes.
  • Warning: 1.0.0.36 through 1.0.0.39 have significant changes in Client, Mini, and Panel Designer as far as connection recylcing and connection cpu load.
  • Warning: Client, Mini, and PanelDesinger must be re-installed as well to recognize these benefits.
  • Fixed an issue where Day Of Week time events were not shifting or not shifting properly over daylight savings time shifts even after the changes in 1.0.0.36.


Version 1.0.0.39 Beta             09/21/2017

  • Warning: Version 1.0.0.36 and later have major changes as well as some important bug fixes. Please read the release notes for more details. Please report any issues as soon as possible.
  • Warning: 1.0.0.36 through 1.0.0.39 have significant changes in Client, Mini, and Panel Designer as far as connection recylcing and connection cpu load.
  • Warning: Client, Mini, and PanelDesinger must be re-installed as well to recognize these benefits.
  • Fixed a bug where a blank logicflows.txt file would cause the application to crash trying to update to the new logic flows storage structure introduced in 1.0.0.36.
  • Fixed an issue introduced in 1.0.0.36 where DateTime events could not be inited for the future.
  • Fixed an issue where the new clock/fixed options introduced in 1.0.0.36 for day of week and date time events was not being loaded from the database properly after a restart.
  • Fixed a bug where time manager date/times were being forced back to within 100 seconds of now on load from database. This bug introduced in 1.0.0.36.
  • Hid the event system message on the logic flows page until a valid response is returned. This prevents stand alone instances from showing an unknown state.
  • Changed max time differential to be 10 minutes in future instead of 100 seconds.
  •    Cluster nodes need to be within 10 minutes of each other and ideally much closer.


Version 1.0.0.38 Beta             09/18/2017

  • Warning: Version 1.0.0.36 and later have major changes as well as some important bug fixes. Please read the release notes for more details. Please report any issues as soon as possible.
  • Warning: 1.0.0.36 through 1.0.0.38 have significant changes in Client, Mini, and Panel Designer as far as connection recylcing and connection cpu load.
  • Warning: Client, Mini, and PanelDesinger must be re-installed as well to recognize these benefits.
  • Fixed an issue with cluster joining. The ClusterAdmin password was not getting set properly.
  • Added an optional file for PathfinderPC Client at C:\ProgramData\PathfinderPC\fixedips.txt.
  •    If this file exists PathfinderPC client will use it for the ip address list to attempt instead of what is reported by clustering.
  •    This allows you to lock client to specific PathfinderCore PRO instance if you want.
  • Fixed a bug with Panels that causes panels not to display or become confused in Panel Designer, mini, and client if the panel names are continuations of other panel names.
  •    For example Blah and Blah2. Often one of these would not display in designer and editing could overwrite the wrong one.
  • Fixed an issue with the new logic flow backing storage changes in 1.0.0.36/37 that might cause flow objects not to load due to differences in linux line endings in the file.
  • Compiled PathfinderPC Client as 5.76.
  • Fixed an issue where the new internal check in clustering was not clearing on a loss and reconnect sometimes leaving the cluster resynchonization process in a hung state.
  • Fixed an issue with the new memory slot startup state option. It was not changable from the API or UI except at creation.


Version 1.0.0.37 Beta             09/15/2017

  • Warning: Version 1.0.0.36 and later have major changes as well as some important bug fixes. Please read the release notes for more details. Please report any issues as soon as possible.
  • Warning: 1.0.0.36 through 1.0.0.37 have significant changes in Client, Mini, and Panel Designer as far as connection recylcing and connection cpu load.
  • Warning: Client, Mini, and PanelDesinger must be re-installed as well to recognize these benefits.
  • Fixed a bug with incorrect logic gate results for inputs greater than two for NOR, NAND, XOR, XNOR gates.


Version 1.0.0.36 Beta             09/14/2017

  • Warning: This version has some major changes as well as some important bug fixes. Please read the release notes for more details. Please report any issues as soon as possible.
  • Warning: This version has significant changes in Client, Mini, and Panel Designer as far as connection recylcing and connection cpu load.
  • Warning: Client, Mini, and PanelDesinger must be re-installed as well to recognize these benefits.
  • Fixed a critical bug with date/time and day of week timer. Events were stored with the UTC offset.
  •    This means that after a daylight savings time update, the event would execute at the requested time under the previous UTC offset which in many cases would be wrong.
  •    There is now an option to select whether a date/time or day of week timer is tied to clock time or fixed time.
  •    By default all old timers will be tied to clock time.
  •    Clock time means that an event will continue to execute at a specific time according to the clock before and after a timezone offset from utc shift.
  •    Fixed time is useful in situations like satellite feeds where the sourcing program's time zone does not shift.
  •    In that case after a daylight savings time shift the event should happen at a different clock time.
  •    This is a critical fix for anyone using this feature and needs to be updated prior to the Daylight savings time shift.
  • Completely changed how logic flows are stored in the backing storage.
  •    Originally logic flows were stored in a single file of SapV2 init messages used to recreate all of the flows on startup.
  •    There is the potential if corruption, errors, or a crash were to happen while the file was being written for the loss of many flows.
  •    This version stores flows to a folder architecture with a single one or two line sapV2 init file for each combiner or translator.
  •    This means that edits and/or changes will only affect the translator and combiner files being edited.
  •    After migrating to this version on startup the old flow file will be read and rewritten to the new format.
  •    The file will then be marked as already converted but left in place for safety.
  •    This has important ramifications for rolling back to a previous version.
  •    New flows created after the conversion will not appear after a software rollback.
  •    This is a pretty major change so report any issues to Axia support.
  • Updated factory default and restore scripts to delete the new LogicFlows folder during the factory default or as part of the restore process.
  • Fixed a bug introduced in 1.0.0.34 with obtaining the initial Vmixer states.
  •    Adding IN_SELECT to vmixers meant that the initial state query message we were sending included the IN_SELECT property.
  •    In Engine versions prior to 3.1.5, IN_SELECT does not return a response.
  •    This meant the entire initial VMIX IN state query was failing and we were not obtaining the VMIX state on startup.
  •    Only subsequent changes would be seen by the flows.
  •    This version does not request the IN_SElECT state if ENGINE/PowerStation version is prior to 3.1.5.
  •    Currently we do not query the initial IN_SELECT state of Iports as the query state has not been ported to an Iport version to our knowledge yet.
  • Fixed bugs with Logic Flows that were allowing the flows to run on the secondary server once local sync had happened but before sync was complete with the remote device.
  •    Now attempts must be completed to all devices before logic flow states will update and initial gets are sent.
  •    This was causing flows to occasionally run on secondary during startup when primary was already executing them.
  • Added an option for the state of a memory slot on startup. You can now select whether the memory slot will start blank, with a fixed value, or with the last known state.
  •    It is important to understand that selecting the last known state will mean writes to the backing storage for each change of the slot.
  •    For cf card based PathfinderCore PRO systems this can be intensive and slow so select the memory slots you need to retain state between restarts carefully.
  • Added an additional clustering cross check step to double check date/time stamps on internal objects with no remote references such as memory slots, timers, and panel items.
  • Changed cluster web ui page to submit additional properties in the ClusterAdmin init message to force Admin state for the ClusterAdmin user when it is created. Broken as of .35.
  •    This was causing clustering join problems in 1.0.0.35.
  • Changed the last update properties related to clustering to force them to be no later than 100 seconds from now.
  • Forced all DateTimeOffset to string conversions to go through the same method to maintain formatting consistency.
  • Fixed a bug with panel designer as it was not outputting version stamps in the correct format. Added code to force versions to the correct format upon ingest.
  • Worked on database auto fixing of dates more than 100seconds in the future other than Timer based DateTime events.
  • Fixed a bug in logicflows UI. Display was showing partial flow elements from folders 1 to 2 levels down from the selected folder even if those lower folders were not selected.
  •    This was causing odd partial looking flows to be displayed.
  • Rewrote lwcp/sap message parsing to greatly reduce string copying when dealing with large messages such as the contents of a large panel file embedded in the message.
  •    Huge performance difference for messages like this.
  • Migrated the new message parsing changes to the javascript code as well.
  • Added the $EXCLUDE_PROPS system item. Using this item means the properties in the get message should be the ones excluded from the response messages.
  • Reduced the panel xml returned during mini startup.
  • Used a background task to obtain panel xml data.
  • Removed the currentpanelxml from get requests in Client and Mini. This was causing unecessary noise and processor load.
  • Added code to only send differences in properties between initial xml load and current on startup for panels.
  •    This should vastly reduce initial panel property push.
  • Changed the ContainsPath messages to a full router sync for io sync wirth panels and metering to prevent multiple loops through the router on the server side hunting for classic ids.
  • Removed the syncio recursive contains_prop lookup with client and mini.
  • Revised the client and mini reconnect code significantly.
  • Spread out the load of uninitialized combiner input timeout requests over a period of time to reduce the initial processor spike.
  • Changed the dispose code for pcp objects (client and mini) to improve client shutdowns.
  • Adding debug messages for debugging connection recycling
  • Greatly improved client and mini connection recycling issues when the client loses connection with the server.
  •    Proviously in certain situations the client/mini might endlessly recycle connection attempts sometimes with large data dumps from Core PRO on each attempt.
  • Randomized the client connection order a bit by randomly selecting whether to go through the connection list in ip address order or reverse ipaddress order.
  • Added a force option for manual selection of ipaddress.
  • Compiled the new clients as 5.74.
  • Added a ping to PCP to test responsiveness and recycle connection if unresponsive.
  • Fixed a bug where Routers and UserPanels menu items could not be disabled in the user editing.
  • Also attempted to add some css coloring to hidden versus visible but most browsers are not displaying it.


Version 1.0.0.35 Beta             08/08/2017

  • Note: User security changes caused large amounts of code to be modified in 1.0.0.34 and this version. Please report any problems.
  • Note: This version fixes bugs with the new user security features found during in-house testing of 1.0.0.34.
  • Note: 1.0.0.34 was never publicly released but the feature set is described and applicable to this version so please review the 1.0.0.34 release note carefully.
  • Fixed a variety of bugs with cluster syncronization of the new user features from 1.0.0.34.
  • Fixed a bug with initial tree display with new users creates.
  • Fixed a bug with changing api settings in the tree where previously selected but unchanged settings were not getting written out again.
  • Made the password property in Sapv2 changable with the set operator.
  •    Previously it was read only and required recreating the user to change it.
  •    If the password is not structured as an Apache hash, the property setter will detect that and hash it.
  • Reworked the user editing web page to make it work more cleanly now that passwords and properties are more easily editable.


Version 1.0.0.34 Beta             08/03/2017

  • Note: User security changes caused large amounts of code to be modified in this version. Please report any problems.
  • Fixed a bug where IN_SElECT wsa not appearing in the property tree for VMIX.
  • Fixed a bug where IN_SELECT was read only for both VMIX and VMODE when it should have been Read/write.
  • Fixed bugs with sap memory slot selection that got introduced when we moved to json blobs.
  • Added some code to property trees to swap the loading to No Items Avaialable if response comes back with None or there is no query message in the node.
  • Removed icon for loading/no items in property tree.
  • Added code to insert version number into javascript and css links to help make browsers recognize a software update and reload javascript rather than relying on the cached version.
  • Made cfontz use the watchdog so if we do not ping the display every 5 seconds or so, it will reset.
  • Added user level security.
  •    Please Note: It is critical that at least one Administrative user is maintained at all times in the system.
  •       Deleting all Administrative users may prevent you from accessing the system properly and will require a call to support and possibly a deletion of the user files to gain access again.
  •    You can now define users as type User in addition to type Admin.
  •    After selecting the user type (as opposed to the Admin type) two trees will appear for selecting user rights.
  •       These trees are not present for Admin users because Admin users have access to everything.
  •    The Menus tree affects which menus will be available to the user in the web page's navigation bar.
  •       When these options are modified the system will create a custom navigation bar for the user.
  •    The allowed APIs list presents a list of common objects to which the user may be given one of 5 levels of access.
  •       Inherit - The security is inherited from the parent branches of the tree. This is the default for most branches.
  •       No Access - The user cannot see or use this object.
  •       Display - The user can see the object and view the changes to properties on the object but cannot make any changes.
  •       Change/Use - General properties of the object may have their values changed by the user, but creation and deletion are not allowed.
  •       Full Access - User has full access rights to the object.
  •    By default sub objects inherit security from their parents.
  •    A good example to discuss is routers.
  •       No Access - The router will not be visible to the user in either the web pages or Pathfinder Client.
  •       Display - the user can open and view the router in both the client and web page, but they will not be able to make any route changes.
  •       Change/Use - the user can use the router normally but will not be able to add or remove route points.
  •       Full Access - the user has the rights to completely change the router including deletion and creation rights.
  •    The rights selected apply to the API (port 9600) and since both client and the web pages use the API they are affected accordingly.
  •    The system can actually allow security changes at any branch level within the API branches, but only the normally used ones are present in the UI tree.
  •    Currently there is no API view of the UI tree. This may be added in the future if it is deemed necessary.
  •    VmixControl access is currently a little tricky as it requires both display access to the engine device, full control of the VMIX Sub object, and change access to the audio router.
  •       In the future we may simplify this and also make virtual routers work properly with the VMIX control application.
  •       If routing is not necessary, display access to the router can be used.
  •    It is important to note that some web pages require Admin rights.
  •       For example backup/restore, bank changes, update uploading, and log manipulation are only allowed for Admin users.
  •       The licensing section of the System page is also hidden from non-admin users.
  •       All configuration options on the System Configuration page are also disabled if you are not an Admin user.
  •       Cluster web page buttons are also disabled if you are not an Admin user.
  •       Remember these web pages can be hidden in the navigation bar using the menu tree of the user definition.
  •    Users and their securities should sync across the cluster is this version.
  • Revised PathfinderClient_Core as version 5.72 to use new security settings.


Version 1.0.0.33 Beta             07/04/2017

  • Fixed a bug with the Constructor property of Aes67 sources.
  •    It was returning blank and therefore clustering was unable to reproduce new Aes67 ios on secondary nodes.
  •    Please Note: A one time manual sync may be necessary to get Aes67 sources that existed prior to the updrage from primary to secondary.
  • Fixed a bug where the web page was not showing the updated host name after a route change with Aes67 sources.
  •    Instead the host would get cleared until the web page was reloaded. This should be fixed.
  • Fixed an issue where altering a sip based aes67 source would cause the livewire channel field to be populated with the description instead of 0 until the web page is refreshed.


Version 1.0.0.32 Beta             07/03/2017

  • Fixed a bug where the generic client (tcp client) in device emulators was not automatically reconnecting.
  • Fixed a bug where the probel general client (tcp client) in device emulators was not automatically reconnecting.
  • Fixed a bug where the probel switcher client (tcp client) in device emulators was not automatically reconnecting.
  • Got Aes67 editing and deletion working in the web pages.
  • Made Aes67 sources show the corresponding livewire channel in the ui if it is multicast and is in the livewire multicast address range.
  • Made Aes67 sources available for routing in the PathfinderClient application (version 5.71).
  • Updated the system page download links for the new version of PathfinderPCClient_Core_5.71.
  • If the description field of an Aes67 source ends with " ON devicename", then devicename will also be displayed in the hostname field.
  •    For example: MySource ON MyDevice. The " ON " is case sensitive.
  • Fixed a label in Aes67 source addition/editing window. In multicast selection option, host IP should have been labeled multicast ip.
  • Added automatic backlight dimming to optional crystalfontz display.


Version 1.0.0.31 Beta             06/28/2017

  • Added support for the CrystalFontz front panel display.
  • Added a menu at the linux console that provides equivalent functionality to the front panel. This is useful if the front panel is unavailable for any reason.
  • Did build installer work for easier deployment in the production department.
  • Added options to the mnt/conf/displays directory for appropriate display binary launching and configuration.
  • Fixed a bug that reset messages were not pulling from ModAccess for modaccess in PowerStation.
  • Fixed a bug that the autoreconnect property for devices was being presented as readonly instead of read/write.
  • Fixed an issue where IN_SELECT in VMODE was not fully populated with all viable options.
  • Fixed an issue where IN_SELECT did not exist in VMIX and it should.


Version 1.0.0.30 Beta             06/08/2017

  • Note: This build has some significant changes to logic flows. Please report any problems.
  • LwrpSendMessage and LwcpSendMessage were not appearing in the API logic flows tree. This is fixed.
  • Added the ability to use escape character sequences in LwrpSendMessage and LwcpSendMessage properties.
  • Added code to clear LastOutput state of translators that should not execute on backup cluster node.
  • In the logic flows web page there is now a message in the top right hand corner of the screen indicating whether the event system is active on the particular node.
  • In the logic flows web page end points will display with the disabled color if the event system is not active.
  • Fixed a number of places in the API tree where friendly names were not displaying properly and so lists of objects were indistinguashable from each other.
  • Fixed a bug created by the changes in 1.0.0.29 which in some cases was causing long logic flow load times especially if start point objects did not exist in the system.
  •    If the load time got too long it could cause the watchdog to kill and restart the supervisor.
  •    Modified the changes to remove this long load time.
  • Modified the code for logic flow initial get requests depending on the cluster system state.
  • Removed xnode mixer branches from the simple tree for now.
  •    Large numbers of xnodes was causing significant delay in the initial loading of the property list.
  •    Working on a better solution to this in a later version.
  •    In the mean time these branches are still available in the API tree under Devices/xnodedevice/lwrpinterpreter/lwrproot.


Version 1.0.0.29 Beta             06/05/2017

  • Note: This build has some significant changes to logic flows. Please report any problems.
  • Fixed a bug. Updating a generic translator watcher value was not triggering a write to the back end storage.
  •    This means changing a watcher value after it had been created might revert to the old value after a restart in previous versions.
  • In Logic Flows stripped values from combiner inputs and translator start and endpoints when writing to and reading from back end storage.
  • Added some code to prevent combiners from being analyzed until valid values from an initial get request to each input have been received and/or a timeout waiting for those inputs occurs.
  • Modified the code to tune the initial get requests of logic flow states when a new flow gets loaded and/or the system starts.
  • Fixed some bugs that were causing extra and incorrect messaging with relay combiners were tied to object translators.
  • Fixed a bug where object translator property changes matching the root level of the object translator's object path were not being sent properly.
  • Made internal translations work on the non-active cluster node. Only ones whose activeoutput is pointed externally will be blocked until the node becomes active.
  •    This helps internal transitions to be in the correct state already during a switchover.
  • Many of the above Logic Flow changes target some inconsitencies with logic flow states during system startup.
  • In the translator dialog added the "Skip startup state request and wait for next change option."
  •    If this is checked changes for the start point will be subscribed to, but an initial get will not be sent and changes will wait for the first property change thereafter.
  • Made some of the logic flows modal dialogs unselectable to prevent drag selection from highlighting arbitrary sections of the dialog.
  • Fixed a bug with loading previously discovered user modules.
  •    It would only reload the first discovered module per ip address on a restart. This is fixed.
  •    This was reported in relation to IP Tablet.
  • Added options for Sound4 processors.
  •    Note: Voco will still not be discovered properly due to an issue with the Voco Lwrp messaging.
  •    This has been reported to the Sound4 team to address.
  • Fixed a bug that was causing a recursive get request on the selected item in the API tree.
  •    This was causing the UI to keep moving to the selected item when attempting to scroll and was also causing unnecessary messaging.


Version 1.0.0.28 Beta             05/26/2017

  • Fixed a bug with licensing after a factory default.
  •    Reading the unlicensed state could cause a crash.


Version 1.0.0.27 Beta             05/26/2017

  • NOTE: Significant changes have been made to the web page messaging in logic flows and route lists.
  • NOTE: Please clear the browser cache and/or use the browser method to forcefully reload javascript files.
  • NOTE: For Chrome hold Ctrl+Shift and click the circular arrow refresh button next to the address bar on each relevant page.
  • NOTE: Failure to do this may cause the browser to attempt to use cached javascript which will not use the new changes and may or may not work properly.
  • Fixed a bug with Gpio routing.
  •    Gpio routes were not displaying as routes in the router if the name was embedded in the SRCA field from the equipment.
  •    Since we are now sending the name as a part of the command this was breaking the display of gpio routes in many cases.
  •    Not sure in which version this bug was introduced.
  • Fixed a bug introduced with the changes in 1.0.0.26 with logic flows and device emulators.
  •    Device Emulators were not appearing in the logicflows tree because they were external and not being handled by the bulk json command.
  • Fixed a bug that was preventing a double quote and a comma from coexisting in a flow title.
  •    If you had both in a flow title, the quote was not being escaped properly and the constructor message was being dropped.


Version 1.0.0.26 Beta             05/22/2017

  • NOTE: Significant changes have been made to the web page messaging in logic flows and route lists.
  • NOTE: Please clear the browser cache and/or use the browser method to forcefully reload javascript files.
  • NOTE: For Chrome hold Ctrl+Shift and click the circular arrow refresh button next to the address bar on each relevant page.
  • NOTE: Failure to do this may cause the browser to attempt to use cached javascript which will not use the new changes and may or may not work properly.
  • Revised logic flows web page extensively to use more optimized messaging for better performance.
  • Added a timeout of 750ms when selecting flow folders so that you can select/deselect multiple folders without a redraw between each one.
  • Revised router web pages to also optimize messaging for better performance.
  • Fixed a bug from .24 or .25 which might break the io list loading in alarm web page and possibly fully break vmixcontrol web page.
  • Added an error trap to handle io import failures.
  • Fixed issues with lag when loading the initial large list. Recursive parsing as the large json list came in was causing issues
  • fixed an issue with parsing aes67 pathios.
  • Finished the Aes67 io addition web pages.
  • Refactored the Sap Message parsing in web pages for better performance and to make it closer to back end code.
  • Fixed a bug with the asynchronous handling of inbound data in the web page sap message parsing.
  • Fixed a bug in the logic flows tree that was causing sort to happen on branches over and over again as items were added when it only needed to be sorted once after the additions.
  •    Modified the sorting algorythm to further reduce extra sort operations.
  • Added button 3 to Lwch and fach faders for element/fusion.
  •    These will only do anything on the revised European modules that have this button but there is currently no way to detect which is present.
  •    In the future perhaps use the press of button 3 to detect and populate.
  •    But for now it will be on all of these objects.
  • Fixed a bug where object translators would continue to add available properties as you switched between different object translators instead of resetting the list to the new object.
  • Fixed a bug where sometimes object translators would only present one property in the list until you closed and reopened the dialog.
  • Completed the Virtual Router editing web pages.
  • Modified the css with more apparent row selection colors for all lists.
  • Removed the color alteration for sorting on all lists as it was unclear.
  • Added unselectable css to most of the lists to prevent weird click and drags display issues.
  • Added unselectable css to logic flows to prevent weird click and drags display issues.


Version 1.0.0.25 Beta             05/01/2017

  • Please Note: While this version fixes a couple of bugs it also has some new features that are incomplete and therefore not entirely working.
  •    We are releasing it anyway to provide the bug fixes to customers that need those fixes.
  •    Please review these release notes for details.
  • Fixed an issue that was preventing the addition of combiners when picking start and endpoints.
  •    This prevented certain types of valid flows from being created/extended.
  • Fixed an issue that could cause blocks in a flow to overlay when a translator with an external start point is joined to a combiner in the middle of a flow.
  • Fixed a bug that was causing tcp listeners in emulators not to be able to send data to connected clients when in a cluster.
  • Work in progress: Added the ability to add AES67 streams to the Axia Audio Router manually.
  •    There is still some work we need to do to make the addition UI more user friendly.
  • Work in progress: Started the ability to edit virtual routers from the web UI.
  •    Please Note: This work is not complete and the web pages are not fully functional yet.
  • Work in progress: Added the JSON system item to retrieve blocks of reponses in a json blob.
  • Expect another version very soon with the work in progress complete.


Version 1.0.0.24 Beta             04/15/2017

  • This is the first version since the new build process has been implemented in 1.0.0.23.
  •    Please report any issues as that may inidicate permissions or other file settings that have been missed in the new build scripts.
  • Added a pair of scripts to monitor the ifconfig network files for gateway changes and clone the gateway change to the opposing file.
  • Made extension licenses cluster aware.
  • Added round robin connection support for clustering between Axia and Office Lan for better clustering redundancy.
  • Added the ability to change the default level for silence and clipping on the Alarms web page.
  • Fixed an issue introduced by the Qor changes in 1.0.0.18 where Lwch channels were not presenting the But#1 and But#2 objects on Element and Fusion anymore.
  • Updated Pathfinder Client to 5.70.
  •    Switched the default state of meters obtained by right click on route points to use Standard scale and 3000 decay.
  •    Increased the default width of source and destination name columns especially in situations where the left hand route panel is closed.
  • Added the MIX and INP objects to Xnode devices.
  • Exposed the MIX capabilities in the logic flows simple tree.
  •    Additional work is planned in the UI surrounding this capability, but this exposes the XNode Mixer functionality to be used in Logic Flows.


Version 1.0.0.23 Beta             04/06/2017

  • No real functional changes in this version.
  • This version was about automating the OS and update package build process with this version as the result.
  •    Report anything that does not work as this would indicate problems with the new build script that need to be resolved.


Version 1.0.0.21 Beta             03/29/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Note: We recommend doing a manual sync on the secondary server after both are upgraded to force synchronisity.
  • Fixed an issue with Fach and Lwch mute state sending the incorrect case sensitivity.
  •    We were sending MUTE_State=MUTED instead of Mute_State=MUTED.
  • Updated licensing to support vm version of license.
  • Fixed a bug that was sometimes causing the new generic emulator udplistener object to fail to be created.
  •    SapId was requesting the local endpoint uri before it was available.


Version 1.0.0.20 Beta             03/27/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Note: We recommend doing a manual sync on the secondary server after both are upgraded to force synchronisity.
  • Fixed an issue where Mute_State was being displayed in logic flows as on and off instead of Muted and normal.
  • Fixed an issue where changing the name and/or description of a router was not always getting written to the backing storage and so could revert after a restart.
  • Added a confirmation dialog to device emulator removal.
  • Updated PanelDesignerCore to 5.68
  •    This version adds an experimental menu item called Open Local.
  •    This will allow you to open a panel designer file from PFPro that is on your local hard drive and then resave to CorePro.
  •    Warning: Use SaveAs rather than save to save it to CorePro for the first time.
  •    Warning: The panel may need some changes in order to get mappings correct.
  •    Warning: This is a new feature and not completely proven or tested.
  •    Warning: If the panel is not synchronizing correctly across the cluster or being retained after a restart after uploading it, try deleting it and resaving it from Panel Designer.
  •    Warning: There are differences between PFPro and CorePro in panels so please report any panels that do not work properly so we can continue to make this feature better.


Version 1.0.0.19 Beta             03/25/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Note: We recommend doing a manual sync on the secondary server after both are upgraded to force synchronisity.
  • Added a confirmation to timer deletion.
  • Added a Generic Udp Client and Listener to Generic Emulators.
  • Removed Timestamp from MessageReceived as it was not being used and therefore was just superfluous memory utilization and calculations.
  • Fixed a bug with LegacyPanel renaming.
  •    The new code that made sure removals were created with SapIdChanges when necessary had a bug that was not expressing the object path in the removal correctly.
  •    This was causing problems with Legacy Panel synchronization.
  •    If node B was offline and a panel was renamed, when B came back online and synchronized it would end up with two copies of the panel under both names.
  •    This has been fixed.
  • Working on fixing an issue with renaming LogicFlowFolders.
  •    If node B was offline and a Flow folder was renamed, when B came back online and synchronized it would end up with an empty folder on the B server.
  •    This requires querying the sub objects in that case when a new object is constructed based on a Sync Message.
  •    Also added some optimization code to prevent numerous unneeded messages for branches where this is not an issue.
  • Fixed multiple issues with Device Emulator cluster synchronization.
  • Fixed an issue with Generic Emulator Watcher removals and cluster synchronization.
  • Fixed issues with "get _" and Last_Update with redirected services such as DeviceEmulators.
  • Fixed some bugs that were returning an extra NONE from the update moderators when the underscore was used as the object path with last update values.
  •    This is because updatemoderators have not been updated to support these features.
  •    So excluded them to prevent the extra None message.
  • In PathfinderPCClient_Core5.68:
  •    Added buttons under the virtual router editing grids that will ask for a new id number and allow you to assign one as long as it is not already in use.
  •    Added a button to the virtual router IO editing window that reset the virtual io name and description to the selected item in the list.
  •    Fixed some issues regarding description fields in the virtual router io editing window.
  •      They were showing ip addresses instead of descriptions.
  •      In some cases this could still occur on the first attempt to edit a virtual IO.
  •      Closing and reopening the edit window will display the correct description.
  •    Widened the Id column in vritual router editing for longer numbers.
  •    Compiled as 5.68_Core


Version 1.0.0.18 Beta             03/21/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Note: We recommend doing a manual sync on the secondary server after both are upgraded to force synchronisity.
  • Added support for Qor console changes.
  •    Requires Qor version 2.2.0.125 or later
  •    Lwcp access will not be attempted if the Qor software version is earlier than 2.2.0.125.
  • Added some code to prevent increment/decrement from being processed on numerical memory slots during sync operations to prevent the value creeping when a node comes back online.
  • Some work done on logic flow folder renaming when one server is offline in a cluster. There is still an issue here we are working on fixing. See Known issues below.
  • Changing the name of a panel could cause it to be unusable until the system was restarted. This should be fixed.
  • Worked on name changing of objects and making sure that synced properly in a cluster.
  • Added stacktrace to the generated log message in ordinalmessagequeue failures for easier debugging.
  • Added some better error trapping to cluster message handling to prevent a group of messages from not being processed when one in the middle fails.
  • Fixed an issue where changes to a translator's conversion list would not sync when the secondary was offline and came back online.
  • Fixed and issue where you cannot change the pattern of a StringBuilder memory slot because the set accessor did not exist.
  •    This affected changing it from the web page and some cluster sync scenarios.
  • Fixed a bug that was preventing name and description properties from being updated on VirtualDestinations via SapV2.
  •    This also affected cluster synchronization of changes on Virtual Destination name and description changes.
  • Fixed a bug where the BaseRouter class was not exposing the Subversion property.
  • Fixed an issue where cluster sync messages would get processed by the code for sending to remote devices.
  •    This in some cases prevented certain updates. For example this was causing virtual destination name changes to not sync properly when secondary comes back online.
  • Known Issues:
  • No confirmation message on the deletion of timer on the timers web page.
  • Changing the name of a logic flow folder on one server when the other server is offline can leave the changed folder empty on the server that is being brought online after it syncs.
  •    This will be fixed in the next build.
  •    This can be fixed by a manual sync.
  • Changing the name of a Legacy Panel on one server when the other server of offline can leave both the old panel and the new one on the server that is being brought online after it syncs.
  •    This will be fixed in the next build.
  •    This can be fixed by just deleting the extra panel on the newly recovered server.


Version 1.0.0.17 Beta             03/16/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Fixed an issue that was causing IE to lock up on the systemstatus web page.
  •    Note: IE is still not updating the cpu usage as frequently as other browsers, but at least it is no longer locking up the web page in this version.
  • Sped up the update interval on cpu usage on the system status web page.
  • Fixing an issue with processing removal items on the Email branch. Since they are a level up, the system#0 was not being passed through.
  • Updated client/Mini/PanelDesigner application to 5.67.
  •    The only change in this version of clients is an update of the dlls to support nested encasulation messages.
  • Added the SynAck operator for acknowledging cluster synchronization changes and updating the node version stamp.
  •    This makes update version tracking more accurate requiring fewer sync messages during startup synchronization.


Version 1.0.0.16 Beta             03/14/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Fixed a bug with nested encapsulation that was introduced in 1.0.0.15.
  •    This bug was causing a parsing error that was preventing legacy panels from being initialized properly.
  • Fixed a bug with the synchronization of device emulators. The constructor was being synced as a single message rather than multiple as intended.
  • Fixed a bug introduced in 1.0.0.15 that was preventing multiple device emulators of the same type from being loaded during startup.
  • Fixed a bug where the redirector for deviceemulators was not obtaining the correct version stamp.
  •    This prevented emulators from being deleted when an offline node came back online and one of the emulators had been deleted while it was offline.
  • Fixed an issue with calculating memory like TextBuilder slots where they where clustering LastUpdate was being updated when it should not.
  •    This was preventing proper removal in the case of an offline server coming back online.
  •    The state change as it came back online was overriding the remove from the online server.


Version 1.0.0.15 Beta             03/08/2017

  • Note: This version includes a major rework of clustering started in 1.0.0.14. See notes from 1.0.0.14
  • Added a confirmation message to the leave button of Clustering.
  • Hid the itemsloadeded and removed on the clustering tab as these are meaningless after the clustering revisions in 1.0.0.14.
  • Fixed a bug with properties that SetLastUpdate but are existence only synchronization objects.
  •    Those were not being transitioned across the clustering.
  •    This could be seen with logic flow objects where the enabled property state would not replicate.
  • Changed the log level for initObject when the object already exists to Info for normal inits and Debug for clustering inits.
  • Combiners were set to full synchronize instead of existence only. Fixed.
  • Object translators were passing additional property values if their input was a relay or pasthru combiner. Should be fixed.
  •    This was occasionally causing cyclic clustering messages.
  • Added escaping of nested BeginEncap and EndEncap escape them by wrapping with <> - for example: <%BeginEncap%> - multiple levels would then become <<%BeginEncap%>>.
  • Decorated the device password property to set last update so that it synchronizes properly across the cluster.
  • Updated the name and description property changes to be decorated with clustering setslastupdate.
  • Added a manual sync option to the clustering web page.
  •    Clicking this in an active cluster will raise a confirmation message.
  •    If confirmed the system will request a backup from one of the other nodes in the cluster, download and restore that backup, and reboot.
  •    This feature may still be a bit rough. Need to add better status information to show possible failure states if it is unsuccessful.
  •    Also this button is currently active whenever the cluster exists but in the future should only be active if one of the other nodes in the cluster is currently online.


Version 1.0.0.14 Beta             03/04/2017

  • Note: This version includes a major rework of clustering.
  • Note: Take a backup before upgrading to this version.
  • Note: It is recommended to have all nodes leave the cluster, upgrade them them to the new version, and then recreate the cluster.
  • Note: Please report any issues. We are still actively testing this version internally as well for any clustering issues.
  • Added error catching around log files in case they are not obtainable.
  •    In a destroy/create scenario of a logger this also allows the previous instance to release its hold on the file.
  • Optimized the SapMessaging to remove some unneeded storage structures except when SapMessages are being stored as SapObjects.
  • Fixed an issue where Email Host was getting added with NOW as the lastversion and then getting the lastversion reset with the file version.
  • Fixed a bug where it is possible for clustering to think a node is done starting all services when services are still loading.
  • Fixed a database storage error that affected storing persistent changes to memory slots.
  • Fixed a bug with the parameterization of update queries in certain cases. This bug has existed since the database changes in 1.0.0.01.
  • Fixed a bug where ACK was not being returned for diverted property changes such as route changes.
  •    Ack means the message has been received interpreted and the target obtained - not necessarily that the change has been completed.
  • Optimized DeviceEmulator removals.
  • Added some code to prevent recreating DeviceEmulator request objects if the device emulator already exists.
  •    This prevents a clustering redundant device emulator creation situation.
  • Fixed a bug specific to the powerstation and Fusion that could cause a stack overflow crash during certain subobject removals.
  • Fixed a bug with virtual io deletions from the database. There was an incorrect query syntax.
  •    Probably started after the database revisions in 1.0.0.01 but could have been earlier.
  • Fixed an issue where Synchronization messages could cause changes to be sent to equipment when they should not be.
  •    In the case of route points this was occasionally causing some destination routes to be cleared during certain cluster synchronization steps.
  • Fixed an issue where certain changes were causing an extra Last update cluster message.
  • Fixed an issue where removing an object was causing a recursive analysis of the path to object lookup list to remove entries.
  •    This caused huge cpu load when doing things like deleting a router with a large number of ios.
  • Added the ability to query using the Last_Update system item and a greater than operator to return changes later than a certain date/time.
  • Added the ability to return Constructor with other properties by using the $CONTAINS_PROP system item along with the Constructor property.
  • Added the ability to request objects with properties using get _
  •    This can produce lots of data and it not intended for general use without additional parameters.
  •    It is used in the revised clustering sychronization in addition to LastUpdate to return changes later than certain time stamps.
  • Completely redesigned and rewrote clustering
  •    This version uses a fraction of the messaging between systems during synchronization of previous versions.
  •    This version removes some potentially large and now unnecessary data caches.


Version 1.0.0.13 Beta             02/03/2017

  • Fixed a bug in the time creation window with date time events. The default value was incorrectly formatted.
  • Fixed a bug with DayOfWeek events. They were firing repeatedly for about 15 seconds at the requested time. This should be fixed.
  • Fixed a bug where NextRaiseTime was not always being raised to SapV2 when it changed.
  • Since mount points the internal address of Axia Audio sources were not getting updated when the RtpStream Address (Livewire Channel) was being changed. This is fixed.
  • Since mount points the internal address and livewire channel changes on Axia Audio sources were not being raised as change messages on route points when the RtpStream address changed.
  • Fixed an issue where source channel number changes were not being updated in the io grids on the web page.
  • Updated the client, mini, and panel designer to 5.66.
  •    Added a CenterPad property to the Meter control in panels.
  •       Increasing the center pad will open space between the left and right meters, and once large enough scale markings will appear.
  •    Added a MeterStyle property to both the meter control and meterfader control in panels.
  •       This property will allow you to switch the meters from Led to gradient on either control.
  •    Added a MeterScale property to both the meter control and meterfader control in panels.
  •    This property will allow you to switch between linear (same as old meters),
  •    standard which has different decibel ranges accented, and British which uses a more BBC like scale.
  •    Added a LevelLineColor property for adjusting the color of the lines in the scale markings on meter controls.
  •    Added a DecayRate property to meter and meterfader controls.
  •    This property allows you to define a time range in ms over which the meter will fade to nothing and yields smoother looking meters.
  •    The time range defines the falloff time if the level drops from 0 to -100.
  •    For shorter drops, the falloff is computed as an equivalent rate over the length of the drop.
  •    We are finding that around 3000ms on the decay rate yields much more natural looking meters.
  •    Warning: Setting the decay rate to anything other than zero will increase cpu load on the client displaying the meters as the falloff is computed and drawn at 10ms intervals. This will be most noticable on larger meter panels.
  •    Warning: For now in this version the default meter style is the same as the meters have always been. You must edit the panels to make use of these new features.
  •    Updated the gain range of meterfader controls to reflect xnode gain ranges.
  •    Added a FaderNominal property to MeterFader. This property allows you to set the red nominal gain box at a value other than the default 0.
  •    Added the property HideGainValue to MeterFaders. This property hides the box displaying the gain value.
  •       This is designed to be used if you are altering the FaderNominal level and do not want to confuse the user by displaying the actual gain value from the device.


Version 1.0.0.12 Beta             01/25/2017

  • Fixed a bug that was sending VMIX#0.SUB#1. . . instead of VMIX.SUB#1 to the equipment.
  •    This worked on some versions of Element/Engine/Fusion software and not on others but the latter is more correct.
  • Fixed a bug that was introduced when we moved the services internal during the past few beta versions.
  •    Changing properties on mounted objects was not always working. For example trying to change the gpio on a virtual router that had the gpio mounted was broken.
  • Fixed a bug with setting pinstates property instead of the individual pin object pinstat property.
  • Added new versions of PanelDesigner, Mini, and Client (5.64).
  •    Added a CenterPad property to the Meter control in panels.
  •       Increasing the center pad will open space between the left and right meters, and once large enough scale markings will appear.
  •    Added a MeterStyle property to both the meter control and meterfader control in panels.
  •       This property will allow you to switch the meters from Led to gradient on either control.
  •    Added a MeterScale property to both the meter control and meterfader control in panels.
  •    This property will allow you to switch between linear (same as old meters),
  •    standard which has different decibel ranges accented, and British which uses a more BBC like scale.
  •    Added a LevelLineColor property for adjusting the color of the lines in the scale markings on meter controls.
  •    Added a DecayRate property to meter and meterfader controls.
  •       This property allows you to define a time range in ms over which the meter will fade to nothing and yields smoother looking meters.
  •       The time range defines the falloff time if the level drops from 0 to -100.
  •       For shorter drops, the falloff is computed as an equivalent rate over the length of the drop.
  •       We are finding that around 3000ms on the decay rate yields much more natural looking meters.
  •       Warning: Setting the decay rate to anything other than zero will increase cpu load on the client displaying the meters as the falloff is computed and drawn at 10ms intervals. This will be most noticable on larger meter panels.
  • Added code to LegacyPanelManager to handle the new properties in meters and meterfaders in panels.


Version 1.0.0.11 Beta             01/09/2017

  • Fixed an issue where DeviceDicoveryItems were not being cleaned up from the path lookup table after they were done being used.
  •    This was preventing an item from being submitted for discovery a second time if it had been removed or failed the discovery the first time
  •    without a restart of the software first.
  • Fixed an issue where newly discovered devices were often recycling their connections once after being added into the system when they did not need to be.
  • Fixed an issue where pending device investigations would not be queryable with a SapV2 get request.
  • Fixed an issue where device investigations were sometimes getting stuck in the open investigation list.
  •    This could prevent new investigations without a restart since the concurrent investigations have been limited to a count of 3 in order to prevent
  •    overloading the processor during large numbers of device discovery reque
  • Marked the enabled property on Combiner and Translator for cluster synchronization.
  • Improved detection of property changes on items that are set for existence only synchronization but have specific properties that require full synchronization.
  •    This could be a breaking change. Please report any issues with clustering if the arise.
  • Implemented ordering when pulling ip addresses from the investigation todo list.
  •    Note: Items may not be added in order because of response time differences with parallel investigation, but it should be closer and
  •    less random when investigating a specific ip range.
  • Added a property to modify the number of allowed parallel device investigations. By default it is 3. This is not saved between restarts.
  •    Use the Advanced options to add this to the startup config options if it needs to be retained.
  • Fixed a bug that could cause the device list to be analyzed repeatedly trying to convert unknown lwrp devices to known types.
  • Fixed a bug with re-investigating happening with emulators with certain device type misnames.
  •    This should not happen in real life but should be fixed.
  • Fixed bugs with the license counting on routers. It was counting active sources more than once in some cases and was also including the None and Previous sources.
  • Added code to exclude translators that point to other objects within the flow (for example combiners) so that only actionable endpoints are counted against the licensing.
  • Also made route licensing get counted after all route points are loaded during startup instead of potentially causing cpu load while loading is taking place.
  • Fixed a cluster sync speed issue with disabling/enabling logic flows.
  • Fixed an issue with exception logging in Clustering.
  • Reworked the PathIo object to only require SapObject meta data in the rare cases it is needed rather than for all instances.
  •    This potentially has a significant impact on reducing memory consumption on large systems.
  • Channel Numbers was not being raised as an INDI when Axia Audio Destination routes were changing. This is fixed.
  •    This was causing the issue where livewire channel numbers were not being updated in the web page routing list without a refresh of the page.


Version 1.0.0.10 Beta             12/30/2016

  • Note: This version along with 1.0.0.09 have significant internal changes with SapV2 and parallel message processing.
  •    If these changes cause problems, please report and revert to an earlier version.
  • Fixed issues with the IPClient that was causing Linux to retain excessive numbers of open file handles when sockets were recycling.
  •    In some situations this was causing too many open files errors in the logs and connectivity problems as well as some
  •    additional cpu load. This was typically seen only in large systems where a number of devices where offline.
  • Fixed an issue introduced in 1.0.0.09 with the local service changes. Mount points were not being established properly
  •    if the mount target was not available on the first initial mount request.
  • Fixed a benign issue where PFCorePro was requesting show profile states from Iports which do not have show profiles.
  • Improved the device discovery process under linux.
  • Added a property to the device investigator object to display in progress investigations.
  • Updated the notes in the advanced options web page to indicate that the options require a restart to take effect.


Version 1.0.0.09 Beta             12/21/2016

  • Note: This version has significant internal changes with SapV2 and parallel message processing.
  •    If these changes cause problems, please report and revert to an earlier version.
  • Fixed a bug with the SapV2 revisions in 1.0.0.08 that was not doing case insensitive comparisons on sub and unsub.
  • Added a property option to switch Lwrp message polling to be VER only. This appears in Device#0 as LwrpVerPollingOnly.
  • Got rid of the timer being used for VirtualMount mapping and instead depend on analyzing based on additions and removals.
  •    Greatly reduces cpu load when there are many outstanding virtual basi ios trying to be mapped when the ios they are being mapped to do not exist.
  • Added an option to skip router sanity polling - Set Routers#0 SkipSanityPoll=True/False
  • Recrafted the receive part of IpClient to share a buffer rather than recreating and to use the ReceiveAsync methodology instead.
  • Property changes that were not supposed to raise cluster messages were raising them in some cases. This should be fixed in this version.
  • Moved all services to local startup without the extraneous redirects.
  •    Added startup config file options to deine this.
  • Reworked the threading, task switching, ordered messaging to improve perfomance. The system was spawning more tasks than necessary.
  •    This is a shift in how parallel processing is handled in the application.
  • Fixed a bug that was in certain cases leaving the clustering stuck in a GatheringLocalCacheData state.
  • Added a property to Clustering to define whether to use message buffering for internal messages. False by default.
  • Added a property to LogicFlows to define whether to use message buffering for internal messages. False by default.
  • Added a property to LogicFlows to define whether to use message tasks for internal messages. False by default.
  • Added a property to allow logic flows to spawn tasks on inbound messages if desired.
  • Revised the options file so that it could contain the settings for the optional queueing, tasks, sanity polling and VER polling.
  • Reworked Supervisor to write the options file with default values if it does not exist on startup and to set the linux
  •    permissions such that nginx can manipulate the file.
  • Reworked Supervisor to write a default options version file with default values for the software revision if it does not exist on startup.
  •    This can be used to reset to the software version's defaults.
  • Added a web page for the advanced configuring of the options file.
  •    Included warnings that the options are for tuning a system in collaboration with Axia support only.
  • Fixed an issue with editing virtual ios in the client where changing a base io might spawn a second base io or
  •    not be picked up in the Pcp cache requiring a client restart to see the changes.
  • Fixed an issue with changing the name or description of a Virtual IO via the client application.
  •    It could cause the base ios to be removed from the virtual IO.
  • Fixed an issue where removing base ios from a virtual io using the client was not always working properly.
  • Fixed an issue where after changing a base io, the description field in the editing window grid was not updating.
  • In the client, moved the Create and Edit menu items to the top of the list so that with large router lists they are not below the list.
  • Compiled Client, Mini, and PanelDesigner to 5.63 to make sure all are using most recent dlls.
  • Known Issues:
  • If a Virtual Router is left open when you shut down the Client, we have occasionally seen the virtual router open up when
  •    the client restarts with no route states. Closing and reopening the router in the client fixes this.
  •    Still investigating if/wehn this happens.
  • There has been a report of the web page for routing not updating the source channel number for audio routers.


Version 1.0.0.08 Beta             12/08/2016

  • Note: This version has significant internal changes with SapV2. If they cause problems, please report and revert to an earlier version.
  • Reworked the code such that redirects if using an Internal sap client bypass the message queing and reworking of transaction ids, etc and instead
  •    just pass the originating client directly to the redirected object. This should improve performance especially in parallel client get requests.
  • Reworked a number of other things with internal Sapv2 messaging for better performance and parallel processing.
  • Made internal clients by default not use a message queue.
  • Enabled the queue on the receive side of service connection home clients only. So sends go from the service to device manager with no queue but responses may get queued.
  • Fixed a bug that was introduced between 1.0.0.05 and 1.0.0.06 which broke Lwrp discovery.
  • Fixed a bug with the log writer editor that on each save after connection was adding _log to the name of the file.
  • Finished fixing LWRP so that DST no longer sends a blank Name field when sending route changes.
  • Lwrp Change messages are now generated by a separate method than was being used for emulation messages as they do need to be slightly different in many cases.
  • In Axia Audio route changes included the Io name in the Address message when making standard route changes.


Version 1.0.0.06 Beta             12/02/2016

  • Fixed a few places where event handlers may not have been cleaned up properly after object deletion causing the potential for memory leaks.
  • Fixed an issue where event handlers might get removed during mount point removal where the primary object still exists.
  • Made discovery device connections stop discovering during disposal to make sure event handlers are removed.
  • Fixed an issue where audio routers might not reduce the used source count on removed source ios.
  • Fixed an issue where gpio routers might not remove a lookup when the corresponding io was removed.
  • Added a hook for specific removal options to be processed in a route during io removals. This is similar to what already existed for io additions.
  • VXEngine does not have Lwrp addressable Gpios. Switched the HasGpios property for this device from True to False.
  • Added some code for generic devices that present Gpios in VER to flip the generic device from HasGpios=False to HasGpios=True.
  • Modified LogManager to work as an internal process.
  • Added the ability to enable logging of Lwrp, Lwcp, SapV2Internal, and SapV2External messages.
  •    Warning: Logging such messages can cause increased load and stress on the cpu. These options are designed for troubleshooting.
  •    Warning: The SapV2Internal item is especially verbose and should only be used in consultation with support and/or development.
  • Also hooked mount requests to the SapV2 internal message logging.
  • Added a warning asterisk in the log writer configuration web page regarding message logging.
  • Fixed an issue where virtual sources and destinations were trying to mount empty device paths.
  •    Virtual sources and destinations should not mount anything. Only their BaseIos in the packages should mount.
  • Fixed an issue where none and previous routes were requesting mounts with empty device paths.
  • Prevented mount messaging if the requested path was empty.


Version 1.0.0.05 Beta             11/28/2016

  • Fixed a bug introduced in 1.0.0.02 with sending lwcp changes to the equipment. That change started sending an erroneous object in the path as part of the lwcp message object path which means lwcp commands would not always work as of 1.0.0.02.
  • Removed the attempts from panel hwmap generation. It will now continue trying to regenerate its flows every 5 seconds until it is successful rather than stopping after 4 attempts.
  • Note: it is a known issue that hardware map flows will not be generated for a panel if the panel has a control mapped to a device ip that does not exist in the devices list.
  • Made hardware map devices list pull unsorted for better cpu utilization.
  • Fixed an issue where GPI names were not being picked up all the time.
  • This version adds the CFG GPO mount point under GPI sources in addition to where it was previously under GPO Destinations.
  • Fixed an issue where gpio name changes were not always being written to backing storage.
  • Fixed a bug where sometimes if a device was offline when PCP started, audio alarms associated with that device would not be reset and start working when the device comes online again without a restart of PCP.


Version 1.0.0.04 Beta             11/28/2016

  • Not released to public. Bad compile.
  • Skipped this version number.


Version 1.0.0.03 Beta             11/23/2016

  • Not released to public do to problems with the SapV2 changes in this version.
  • Found a problem with the new SapV2 changes introduced in 1.0.0.02 that was causing items to get a path with no root object. This was affecting some object's property change reporting.


Version 1.0.0.02 Beta             11/21/2016

  • Not released to public do to problems with the SapV2 changes in this version.
  • Fixed a memory leak that could happen if device data points were not present after a restart that were utilized by routers. This could hapen after a restart if the device in question was not online.
  • Optimized some of the code around SapV2 object paths.
  • Fixed an issue where services might not get shut down properly during a restore operation.


Version 1.0.0.01 Beta             11/17/2016

  • Fixed an issue that was sometimes causing router deletes not to get stored to the backing storage. Previous was causing duplicate removals in a dictionary and erroring out. That is fixed.
  • Fixed an issue that was causing removals to sometimes get written to the backing storage even if the cluster was synchronized or there were no nodes in the cluster.
  • Made one more fix potentially related to the audio router not posting routes when multiple Axia Audio routers are present.
  • Added a timeout in waiting for the router to sync in pcp on virtual routers in order to account for missing base io resources.
  • Fixed virtual router editing when Base Ios are pointed at devices that do not exist. This condition was not allowing the virtual router to be edited previously.
  • Fixed a bug where routes might not work when there were multiple Axia audio routers in the system (only currently possible using the API).
  • Fixed a bug with clients where devices and/or the underlying base ios cannot be discovered when resaving the router.
  • Ordered routers by Id in the client application.
  • Added the id field to the routers web page.
  • Fixed a bug where gpio names were not getting picked up into the Gpio Router.
  • Fixed an issue where the mount points for gpio destinations was incorrect. Pins were appearing under cfg.gpo mountpoint instead of under the gpo mount point which did not exist. And cfg.gpo was connected to the wrong gpo object.
  • Ordered the virtual router list by router id.
  • Ordered panels by name in Panel Editor.
  • Fixed an issue where using a password when initializing a DiscoveryDeviceData object via the API in order to investigate an object was not passing the password object through to the investigation.
  • Fixed an issue where set messages in the API with acks were not always returning an ack.
  • Fixed an issue where del messages in the API with acks were not always returning an ack.
  • Fixed an issue where double led messages were often being returned when a del message was sent in the API.
  • Reworked the database queries for better security and to properly allow characters like the single quote in IO names.
  • Modified the code so that logic flows that live under the hardware maps folder as well as the hardware maps folder itself do not get written to backing storage as those flows get recreated anyway by the legacy panels load function.
  • Fixed an issue where hardware maps were going through a double create and delete during startup. This should fix an issue where occasionally hardware map flows were not coming back after a restart requiring opening and resaving the panel to get them back.
  • Fixed some pcp errors with associating the correct router to scenes in the client application.
  • Fixed an issue where the writepanel property of panels was being written to the xml when it should not have been.


Version 1.0.0.00 Release             11/03/2016

  • Version 1.0 release.
  • Edge browser and Internet Explorer both lock up on several of the web pages. Chrome is the recommended browser to use though Firefox also works.
  • Silence and audio presence thresholds are currently fixed at -80.0 and -1.0 and cannot be changed. That will be addressed in a later version.
  • The gateway needs to be assigned in both Lan and Wan to the same Gateway address or it may pick randomly which one to use.
  • Clustering currently only uses the Axia Nic. In the near future it will use both for redundancy.
  • Clustering will eventually pick up extension licenses from connected clustered units but in version 1.0 extension licenses must be added manually to all units in a cluster.
  • A virtual router may not be editable in PathfinderPC Client if the device the virtual router is referencing has been deleted from the system. Fix will be posted to the beta page shortly.