Added code to the NIC analysis script on startup that looks for the presence of a file generated during production that indicates that the Right NIC looking at the back of the unit should be the AoIP/Livewire NIC and the left one should be the Office NIC.
This only affects newly built units on the AES2000 (2021) platform shipping with the 1.8 software pre installed.
Fixed an issue with an incorrect factory default DNS addresses.
By default PathfinderCore PRO ships with Google DNS addresses
It is recommended to change that as your IT department recommends
Added a ReconnectLwcpVx write only property to the VXEngine device type for triggering a reconnect of the LwcpVx connections and used that in the device recycle icon in the devices list.
Fixed an issue that was causing some LwcpVx connections not to recycle after a loss of connection.
Fixed a bug with the console monitor object when pointed at Qor, iQx, and iQs consoles that would cause the studio selection option to only display PGM1 as an option.
Fixed a bug where the time clock was not advancing on the full console widget.
Fixed a bug with the countdown clock on the full console widget not working.
See Important note below to enable this functionality.
Fixed a bug with the countdown clock not displaying the run button if the automatic mode was enabled on a Qor, iQs, or iQx console.
Fixed a bug with the console fader component where if you are dragging the touchbar and release the mouse while over a disabled button, the touchbar would remain captured.
Added heartbeat and fader source list polling to lwcpss connection to detect a failed connection sooner.
Changed property decoration on the lwcpss source object's id, nextid, and name properties to display a list of source profiles in the logic flow property value helpers.
Added lwcpss into the connections that get recycled through the device list recycle icon.
This build represents a merge of the beta branch into the master branch in preparation for a new release.
Fixed some device handling around iQs.
Completed task 15330.
Fixed an issue with numeric memory slots where negative values cannot be used in the range (i.e. -1-10 or -10--1)
Fixed an issue where fusion and quasar engine did not have console_type, console_ip, and audio_mix_mode properties available.
Fixed an issue where fader lwcp sanity polling was not always working properly
Added src_list to the fader poll in order to pick up changes in the source profile list
Fader polls go through each fader in approximate 30 second intervals, so it might take a while before new profiles appear
If they need to appear quicker, recycling the device connection can force a re-query.
Added a timer for consoles which 60 seconds after reconnect will requery the fader src profile list for each fader at 500ms intervals.
This handles the situation where the console allows lwcp to connect and be queried before the source profile lists are loaded.
Update saconsolefader when used with iQs to match iQx.
Fix a bug with instantiating numeric memory slots when including both a value and a range.
This was causing the creation not to take place without creating it without the range and then editing to add the range.
Fix an issue with various console components which use metering not being able to derive the correct metering point when the control device and engine device are separate such as with quasar.
Use the control point (as opposed to the io point) for these situations.
Fixed places in the web user interface where ShowProfID case sensitivity was incorrect which could potentially cause additional items to show up in the logic flows tree.
Added code to force any instances of ShowProfId to ShowProfID.
Fixed an issue in virtual routers that was preventing the source packages with more than one None from presenting properly in the web UI.
Added the iQs device type to devices.
Exposed the livewire channel and a few other properties in Axia Audio Sources to the API view.
This version makes some modifications to aes67 source routing when applied to mix engine vmix fader inputs.
Proper AES67 Lwrp syntax in the Mix Engine and Power Station is only applicable to VMODE. However if the stream in question matches the normal livewire UDP settings of 24 bit, 2 channel, 48Khz and is within the livewire multicast ip range on UDP port 5004, it may be used on vmixers. This version alters the Lwrp messages to support this:
If route attempt requests an AES67 source.
If the AES67source is fmt type (instead of sip) and the destination is of type VMIXFaderIn and the fmt type is ";fmt=L24/48000/2":
If the multicast range starts with 239.192. or 239.193. and the port is 5004, then send multicast address only to the ADDR field.
If the multicast range does not start with 239.192. or 239.193. or the port is not 5004 then use mcastaddress:port.
This may not be accepted by the engine at this point in time.
If the AES67source is not the ";fmt=L24/48000/2" type or the destination is not of type VMIXFaderIn then send the full AES67 format style message.
This will be accepted by the engine for VMODE but likely not for VMIX at this point in time.
Attempt a normal lookup in the source address hash table based on what is in the ADDR field first.
If that fails:
If ADDR has fmt and/or sip, then do nothing else as the correct lookup has already occurred.
If we receive address:port in the ADDR field with no fmt and no sip, then upconvert the message format to AES67 full format by appending the ";fmt=L24/48000/2" and try the lookup again.
If we receive address with no port and we have not found anything, then upconvert to the full path by appending the ":5004;fmt=L24/48000/2" and try the lookup again.
Note that this introduce additional lookup attempts if the address field contents are not known in the first lookup which could theoretically have some minimal performance impact.
Fixed issue created by the none source routing work in 188.8.131.52 that was breaking the ability to add virtual Ios into a virtual router.
Fixed an issue where adding None source base points into a virtual source package would not actually clear the route since the None source path has no IO type.
This fix moves none sources into the correct IO type package in the correct order when getting the ordered source list.
It accomplishes this by looking at the iotype of equivalent orderindex in the destination package.
This means using None sources in a virtual source package requires matching the orderindex between source and destination.
Added active_layer property to the Quasar Appcontrol object which accepts values of 1 to 4.
This allows monitoring and changing the active layer in Quasar.
Fixed a bug introduced in 184.108.40.206 that was causing the link to the theme css file for user panels to be incorrectly stored in the panel as an absolute address with the ip address of the saving host.
This would break panel displays in a cluster if the machine that stores the panel was not active.
This may also break panel displays if DNS or NAT was used.
To fix this edit any panel you edited under 220.127.116.11 and click save again to reset the link to a relative link.
Fixed a bug introduced in 18.104.22.168 that was causing the panel title in the browser tab to show a fixed panel name of iQs rather than the correct panel title.
Fixed a bug introduced in 22.214.171.124 that was causing the None source selection for virtual routers in the route table take list to report no source selected.
Fixed an issue where scheduling system templates were not synchronizing across the cluster correctly if the Assigned By Resource checkboxes were enabled.
From 1.6.13.00: Fixed an issue that would prevent user panels from working if the security settings denied access to the main Devices object since their ability to work relies on being able to check the service load state and the ping property.
Get operator only is granted access to that object's few properties for all valid user logins so that these properties may be queried.
From 1.6.13.00: Added some error trapping to catch a rare situation where an ip client in the process of being disposed and sending at the same time might cause a crash.
From 1.6.13.00: Removed an error message from the logs regarding the failure to remove meters from a lookup collection that is not actually an error.
From 1.6.13.00: Clarified an info log message to make it less error-like regarding Qor Lwcpss message handling for amix
"amix" parameter support currently requires the beta version.
From 1.6.13.00: Fixed an issue with the userpanels xy grid and locks with virtual routers.
From 1.6.13.00: Added code to decode ampersands properly in userspanel properties that use url as their property type in the property grid.
From 1.6.13.00: Fixed an issue where the user panels list web page still displays notes and warnings about using legacy panel designer.
These notes should have been removed in version 1.4.
Added a dark theme to user panels.
Modified the user panel's monitor section control to dynamically adjust its control layout when used with Fusion or Quasar in addition to its current ability to be used with Qor/iQx.
For Fusion this requires Fusion software version 126.96.36.199.
Added a Quasar style to user panel analog clocks and countdown timers.
This style is the default when the dark theme is chosen.
Added an advanced option to specify the theme to use for new panel creations.
SET UserPanels#0 DefaultTheme=default
Requires a restart to become active.
Added a full console control to user panels.
Made console fader controls dynamically use the Lwcpss metering when an iQs control point is chosen.
Added a fader dock control to user panels.
Added a program buss metering module control to user panels.
Added a Qor/iQx fader processing module to user panels.
Added swap to mon talk_stud and mon cr_pvw properties.
Added Lwcpss meters as an option in the metering service.
sm LwcpSs 172.16.1.89/ch#1
sm LwcpSs 172.16.1.89/pgm#1
Added some code to set meters to -1000 if we get a DST ADDR:255.255.255.255 or ADDR: message in order to clear a meter when an engine resource gets unrouted and then disappears from the engine.
Added a pollingpaused property to the meter data which stops sending messages to the mix engine on a DST that has an ADDR of 255.255.255.255 since the engine removes such a DST from the DST list and will start responding with error1000 messages.
Fixed an issue where engine meters were getting hung when the destination changed to a none source.
Added consistency to how virtual routers and sap property routers report CurrentSource and CurrentSourcePath when a none source is routed.
CurrentSource now reports 0 rather than no entry and CurrentSourcePath always reports :// and uses those as the entries for that IO in logic flows for correct matching.
Fixed an issue where sap property routers were not presenting none and previous in the api source options.
Fixed other places related to the virtual router where source path for none was being replaced with a full path.
Fixed a bug where SapProperty sources and destinations which have another IO as their target might generate recursion mount error messages in the logs
Changed MountComplete to be true only if the underlying mapping either does not require mounting to be mount complete or has achieved mount completion.
Added a logout link to all web pages.
Fixed a bug with calendar viewer not being able to display recurring events.
This was broken as of 1.7.6.08.
Fixed a bug where it was not possible to change a template type from one time to recurring.
Fixed an issue with bank updating that prevented bank updating from working over NAT or DNS.
Enforced route tables showing blank source io if the source io is 0.
Cleaned up presentation code for sap property routers for none routing.
Added code to allow None to show up in the available options for base io imports to virtual routers.
This is useful when you want to create a virtual source that only clears part of the underlying multiple base points.
From 1.6.12.00: Fixed an issue with user panel countdown clocks where the change of countdownlength was not being raised to sapV2 and therefore would not update data in the countdown clock without refreshing the panel web page.
From 1.6.12.00: Fixed an issue with user panel countdown clocks where reloading the page or changing the countdown time on a page where the timer had elapsed but not been reset would show the count down duration instead of 0.
From 1.6.12.00: Added code for user panel countdown timers in countdown mode to display 0 if countdownlength minus elapsed milliseconds is less than zero.
From 1.6.12.00: In the User Panel Designer, added an alert and block to the countdown timer --countdownlength, stopmode, and resetmode properties to prevent them from being unbound as binding must be left on for them to function properly.
Improved the Delay combiner performance when it is tripped multiple times within the delay time.
The multiple instances of the delayed task were being created in a limited pool which could cause laggy behavior in rare situations.
This has now been changed to use a more optimized task delay mechanism.
Similar changes were also made to timers in the UserPanel property, panel, and Countdown Clock as well as in a memory slot write function.
From 1.6.11.00: Fixed an issue with UserPanels where it is possible to start receiving state messages before the bindings file is loaded leaving those states with no place to go.
This could cause some panel objects to have an incorrect starting state when the panel gets loaded.
To address this problem, this version does not connect the web socket until the bindings file has been loaded.
From 1.6.10.00: Fixed an issue where phase 1 of the Lwcp state initialization was sending GET SUPV STATE whereas Quasar would only accept GET supv state.
The result was that with Quasar we would often not get to phase 2 and therefore not get initial states for a variety of parameters until those parameters changed.
For example, a user panel label bound to the show profile name would likely be blank on system startup until the show profile was changed or we happened to poll that parameter.
Fixed an issue where prior to this version the \%XX pattern for escaping hex binary bytes in the generic emulator client was limited to the ascii range (bytes 0 to 127).
While this version now supports \%00 to \%FF, a true binary client is planned for the future.
From 1.6.9.00: Fixed an issue where generic emulators set to TcpClient mode were not raising connected change events.
From 1.6.9.00: Fixed Connected property for Device Emulator listeners so that it will be true if at least one client is still connected and False otherwise.
From 1.6.9.00: Fixed an issue where subscribing to a GenericEmulator would yield a ToSend event with an empty string for each ToSend attempt.
ToSend is a write only property and should not raise events.
From 1.6.9.00: Fixed Generic Emulator ConnectedCount not displaying the correct count and not changing when tcpclient is selected as the connection type.
In Html5 User Panels, made the box-sizing css style available in all elements.
In Html5 User Panels, made the text-align and line-height css styles available in labels.
Note that centering text vertically in a label can be a bit finicky in html labels.
Using the line-height style can help with this by setting the line height to the same height as the label or half that height if two lines will be displayed.
Added a PingMessage and PingInterval field to Generic Emulators.
When using a tcp client connection, connection drops are detected automatically if the remote device properly closes the connection.
However in the case where the device loses power or closes the socket unexpectedly, we may not know that until the next time we try to send a message.
These properties allow you to define a message and interval to send that will make sense to the remote device and will allow you to be sure the connection is still good.
Added an hp202 object with a ConsoleIp property to the hp202 device and hooked up the initial sync command as well.
Note that because we do not have an hp202 for testing, we cannot be certain this feature will work and need hp202 users to test it and provide feedback.
From 1.6.8.00: Fixed an bug introduced in version 1.6.6.00 where user logs were no longer accessible from the web ui and were instead showing a forbidden access error message.
From 1.6.8.00: Fixed a bug where the disabled property on Html5 user panel buttons was not being respected by touch actions on touch screens.
From 1.6.8.00: Added a blankvalue property to the saselector drop down control in html5 panels.
The blankvalue property allows you to define a value to use if the value returned is blank.
For example, the manual example refers to using the currentsource property of a virtual destination and filling the list with virtual sources.
The None source has a value of "0" but often a cleared destination route is returned as a blank field instead of 0.
Using 0 in the blankvalue property will force the empty currentsource to be interpreted as 0 which matches the none source causing it to be displayed.
Without this property being configured, a destination with nothing returned as the current source will simply not make a change to the current item in the list causing it to retain a route where none actually exists.
This has been implemented as a separate field because each list might or might not require different values to be used or not used for a blank field.
Made mon object's hp_vol, cr_vol, pv_vol, and st_vol read/write instead of write only now that the fusion/quasar code supports it.
Added the button-panel-background-color property to the Html5 user panel saroutingmatrix control.
This can be used to change the color behind the clear/take/etc buttons.
In order to make this background transparent, shift click to manually enter a value in the field and type the word transparent.
Added --option-background-color and --option-color properties to the Html5 user panel saselector control.
These can be used to configure the background color and font color of option items in the drop down box.
Note that the selected item background and font color will still be defined by the OS as this is an OS setting.
Offering control over the selected item colors would require using a custom rather than standard drop down component which will be considered for the future.
Made the Other source greyed out and unselectable in the routing source take list as it cannot actually be sent as a change value.
Added the hiddenvalues and disabledvalues property to the html5 saselector control.
These properties can be filled with a comma delineated list of values which if they appear in the option list will be disabled or hidden.
Note that values and not the displayed names should be used in these fields.
For example, if the source list is filled with virtual sources, you could hide or make unselectable the previous and other source by using the value:
in this field.
Added a sortby property to the html5 saselector control which accepts values of None, Value, or Name.
This will cause the options displayed in the list to be sorted by the order in which they were received, the order of the options value, or the order of the text used to display the item.
From 1.6.7.00: Change the factory default file to alter the timezone localtime symlink rather than overwrite the file.
In some cases this was overwriting the underlying symlinked file causing a specific timezone to show Eastern offset rather than the correct offset for the timezone after a factory default.
Bank updating would fix the problem as well until the next factory default.
From 1.6.7.00: Added a question to the r2 production install script to ask if it is being installed on the mbx platform.
If the answer is yes, the crystal fontz display application is disabled and we use the new default ip addresses in the ip address questions.
Added a subscription message for the mon object during connection to Pwerstation, Fusion, and Quasar as some new properties require a scubscription.
Added the Read/Write hp_lnk (Headphone Link) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Write Only hp_vol (Headphone Volume) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Write Only cr_vol (Control Room Volume) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Write Only pv_vol (Preview Volume) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Write Only st_vol (Studio Volume) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Read/Write cr_sel (Control Room Select) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Read/Write hp_sel (Headphone Select) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Read/Write st_sel (Studio Select) property to the mon object in Quasar only.
Added the Read/Write cr_pvw (Control Room Preview) property to the mon object in Quasar only.
Added the Read/Write cr_pvw (Headphone Preview) property to the mon object in PowerStation, Fusion, and Quasar.
Added the Read/Write talk_stud (Talk to Studio Switch) property to the mon object in PowerStation, Fusion, and Quasar.
Does not support initial state get but does support events so changes should be reported but not initial startup state.
Added the Read/Write Asg_AUX(1-8) (Aux buss assignment) properties to the FaCH and LwCH objects in Quasar only.
Added an aux object to Quasar FaCH and LwCH objects.
Added a Write Only pre_post_on property to the new Aux buss object of LwCH and FaCH in Quasar.
Added a Write Only pre_post_faser property to the new Aux buss object of LwCH and FaCH in Quasar.
Added a Write Only gain property to the new Aux buss object of LwCH and FaCH in Quasar.
This version includes minor fixes over 1.7.6.08.
1.7.6.08 involved major changes, please review the release notes and Beta Documentation for 1.7.6.08 and report any bugs you encounter.
Changed the slot label interval on calendars to be hourly only to clean up the look of the calendar grid times.
Enabled an event limit in the month view of calendars to clean up that view when large numbers of events are present.
Fixed a bug where the new QSCONN object support added in 1.7.6.08 was not present on a newly discovered fader panel without a restart.
Fixed an issue with the description data for FPSTAT Master property which should have more values than just 0 or 1 and added the descriptive definitions of those values to the drop downs.
This version includes major changes in how PathfinderCore PRO is compiled and built in order to bring it more inline with other Telos Alliance products and Continuous Integration policies.
As this is a major change, please report any bugs you encounter.
Patch version is bumped to 6 as these build changes also exist in the release branch for any future release builds.
Fixed bugs introduced by the new scheduling system that would not allow newly created scene items or timer events to work properly when being created with virtual, SapProperty, or virtual mixing destinations as the start or end property.
Fixed an issue where the enabled property on new timers would default to blank rather than to True.
Fixed performance issues with loading the timers list in the web ui with large numbers of timers.
Fixed performance issues with displaying calendars with large numbers of events on a single calendar.
Added a drop down list when editing scenes or timer start and end properties and selecting a virtual mixing destination.
The drop down allows you define whether the change will be directed at the AddSource or RemoveSource property.
Switch scheduling calendars to display 15 minute time blocks instead of 30.
Optimized the loading of time based events and memory slots during system startup.
Added a Range and LoopAction property to Numeric Memory Slots.
Modified the API code for Virtual Mixing destination's AddSource and RemoveSource properties to accept PathIos of sources in the virtual mixing routers in addition to the IO number.
Added the QSCONN Lwrp object to Quasar fader panel devices.
This object allows for the ability to change the master module to which a fader module is attached.
Added the FPSTAT lwrp object to Xnode devices.
This object allows for the ability to poll and monitor states such as power supply status, NIC up down, main board temperature, etc.
From 1.6.5.00: Fixed an issue where an image assigned to an SaConsole button would not display and would disappear after saving the panel.
From 1.6.5.00: Fixed an issue changing the name of a logic flow view (folder) would cause flows within that view and/or its sub views that have combiners in the flow not to function past the combiner.
Previously the workaround was to either reboot or rebuild the flow.
Decorated the Path property of virtual base io objects so that it appears in the api tree of logic flows.
Decorated the Ordinal position property of virtual base io objects so that it appears in the api tree of logic flows.
This version adds an optional calendar based scheduling module which requires an additional license.
If you would like to help with beta testing this feature please contact us for a 90 day demo license.
Please review all documentation on this feature in the beta manual before updating: Beta Documentation
This version adds Vx Control Protocol support.
Note: This feature should be considered beta.
Please review all documentation on this feature in the beta manual before updating: Beta Documentation
From 1.6.4.00: Fixed an issue where the default friendlyname if no other was specified for an object was the object type without the id which led to duplicate entries in the logic flows tree.
From 1.6.4.00: Fixed issues with image properties in the user panel designer not displaying a list of panel images as choices in the translation dialog.
From 1.6.4.00: Added the overflow property to label controls which when used in conjunction with text-overflow can prevent the text from overflowing the label.
From 1.6.4.00: Fixed an issue in the user panel designer where the image selection dialog appeared when pressing the bind button for background-image and img src properties when it should not.
From 1.6.4.00: Fixed an issue in the user panel designer where the image selection dialog appeared when clicking the property header for background-image and img src properties when it should not.
These two issues made it difficult to get to the flow editing of those properties.
From 1.6.4.00: Fixed an issue with image fields in the user panel designer property list where the shift-click option for manual editing would not work.
From 1.6.4.00: Fixed issues with images switching from relative url to full url when saving a user panel design.
Fixed a bug with the property selection UI with the new start and end properties in TimeEvents which was not switching the io selection list back to destinations after selecting a source value.
Fixed some other UI property and value selection bugs with the new TimeEvents options.
From 1.6.3.00: Fixed a bug introduced in 1.6.2.00 which only affects a small number of customers who have been provided with information about using auto insert limits in Axia Audio Routers to split Ios from different sites into different routers via the API.
1.6.2.00 changed when backfeed sources where tested against the autoinsert limits which broke backfeed discovery when auto insert limits were used.
That should be fixed in this version.
From 1.6.2.00: Fixed additional bugs related to discovering backfeeds introduced in 188.8.131.52.
New backfeeds were often not being discovered into the router or on clusters they might only be discovered on one of the systems or neither of them.
From 1.6.2.00: Fixed an issue where newly discovered Ios (especially backfeed ios) might not make it into the io lookup table on the secondary server in a cluster.
This might cause certain parameters on those ios to not update until/unless the secondary server took over.
From 1.6.2.00: Fixed issues with the cluster synchronization of newly discovered backfeeds which was not working correctly in all situations.
From 1.6.2.00: Fixed an issue where the secondary server in a cluster might not show the current owner changes for backfeeds until/unless it took over as primary.
From 1.6.2.00: Fixed an issue with Gpio routing to iport destinations which was not allowing the route to take place.
The command was sending invalid name information in the SRCA property which other devices allowed but Iport did not.
This version adds end times to DateTime and DayOfWeek timers so that a time range may be expressed.
This version adds start and end properties to DateTime and DayOfWeek timers that may directly be executed at the start and end time of the range without the need for a logic flow.
This version adds a cleanup option that can be used to define when or if datetime timers should be deleted after they execute.
Note: The feature changes listed above should be considered beta.
Please review all documentation on these features in the beta manual before updating: Beta Documentation
Added a ClearElapsed write only property to DateTime and DayOfWeek Timers to be used in certain testing procedures.
Modified DateTime and DayOfWeek timer editing to display with the programmed time rather than a conversion to the browser's time in the case where the browser is in a different timezone.
Modified DateTime and DayOfWeek timer editing to default to the PathfinderCore PRO's utc offset for clock based times rather than the browser's offset.
Added comments to clock and fixed time radio button options in the time editor to show more specifically that clock time will adjust with DST.
Added UTC field for clock based timers which is disabled for changing but shows the UTC offset for the event from PathfinderCore PRO.
Fixes a bug with restApi devices where the post command would carry the operator and url in the content field in addition to the content instead of just the content.
Adds escape character possibilities to email message bodies for things like carriage returns and linefeeds.
See the documentation for generic emulator ToSend escape sequences for details as both use the same sequences.
Adds code to allow the swap value on Html5 Panel disabled properties.
Fixes the disabled property for Html5 panel knobs and gauges.
Adds a --display-channels property to Html5 meters under the led section with values of stereo, left, or right in order to allow support for mono meters.
From 1.6.1.00: Fixed bugs introduced in 184.108.40.206 related to how backfeeds are handled differently with iQx/Qor.
The changes required to handle differences in how iQx/Qor handle backfeeds caused backfeeds to sometimes be created without certain information in the database.
In some situations this could cause the backfeed to display as a normal source rather than a backfeed source.
The backfeed rtp stream address was also appearing in some cases in the device's normal port causing multiple source targets for a route due to the duplicated multicast address.
This version fixes the missing data in the database on ingest of the io so that it properly gets created as a backfeed object.
This version fixes the missing data when new backfeeds are discovered on an iQx/Qor and are added to the database.
This version sets the device port to no address, disabled, and a default name in the source table when being used as an autobackfeed style source.
From 1.6.1.00: Updated copyright footer on web pages.
Added a name field to the rest api device from 1.7.0.01 for a better user experience.
Added an enabled property to virtual router source and destination base points.
Added a PushRouteOnBaseEnable property to virtual routers that works alongside the enable property of base points.
Added a Virtual Mixing router for dynamically adding and removing sources from a set of mixable destinations.
This is the first beta version with new beta features since the 1.6 release.
Added a rest api device.
Added a CalculateTime property to timestamp memory slots to allow conversion from other time formats to the pattern specified.