<?xml version="1.0"?>
<ArrayOfFBEvent xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>ReleaseNoted</StatusString>
    <TimeStamp>2023-06-07T14:21:51Z</TimeStamp>
    <ReleaseNote>Addresses an issue where T0 UTC was not being exported</ReleaseNote>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-06-07T14:17:58Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Closed</StatusString>
    <TimeStamp>2023-06-06T20:42:52Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Closed</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Resolved</StatusString>
    <TimeStamp>2023-06-06T20:42:49Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Resolved</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-06-06T20:42:44Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Reopened</StatusString>
    <TimeStamp>2023-06-06T20:42:36Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Jaime Lopez</User>
    <Comment>Verified with DataPRO v4.1.312, 4.0.957
 
For first test testing with a TSR AIR in active mode exported CSV
 
 
For second test armed 4 S6A in recorder mode with the UTC time in CSV export enabled
 
No trigger
 
 
Exported data:
 
 
 
 
Here we test pre patch and post patch to show UTC time column. 
 
S6A circular buffer testing precision on trigger time
 
No trigger (circular buffer)
 
 
 
dts file:
 
 
 
exported data (csv):</Comment>
    <StatusString>Closed</StatusString>
    <TimeStamp>2023-06-02T23:29:10Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Closed</Status>
  </FBEvent>
  <FBEvent>
    <User>Jaime Lopez</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-06-02T21:16:15Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Justin Richardson</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-06-02T20:57:43Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Justin Richardson</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-06-01T21:51:25Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment>4.0/4.1@48805</Comment>
    <StatusString>Resolved</StatusString>
    <TimeStamp>2023-06-01T18:28:30Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Resolved</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment>CPB would like to see a CIRC and recorder mode with 3 units (S6A) all using RTC.
 
might additionally be good to see a CIRC buffer with no trigger and a power loss?  (maybe in this case start is defined and defined differently for each unit and there's no trigger timestamp?)  how to check the precision of the timestamp could be important in this issue, might want to check what the timestamps are in the DTS file and then see what is used in the export.</Comment>
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-05-31T21:40:38Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment>Subject:
 Please review 31783,UTC not being exported with CSV with TSR AIR    
From:
 Dan McFadden &lt;dan.mcfadden@dtsweb.com&gt;    
Date:
 5/31/2023, 2:10 PM        
To:
 DTSSoftwareDev &lt;DTSSoftwareDev@dtsweb.com&gt;    

 
 
 
John, Jerry,
 
I've submitted a patch into DP 4.0 MAINT for
 
31783
 UTC not being exported with CSV with TSR AIR
 
this one was a little complicated.
 
The original issue was if you had a TSR AIR that was not PTP timesync'd, but sync'd with the RTC time from a PC the CSV export would not include the the UTC time.
 
Testing this part is straight forward, turn on UTC time column in system settings-&gt;Export.  This is not default.
 
 
 
 
Create a test with a TSR AIR in active mode and don't set any other clock synchronization settings.  Prior to the patch the CSV export will not contain UTC time but the standard time interval relative to T0 (-.00005 for instance).
 
after the patch it should contain a UTC time stamp in each row of data.  The old code would only use timestamps if there was a PTPMasterSync=true flag for the channel.  The new code will also use the trigger time stamp from modules that have a trigger timestamp if no modules have a ptpmastersync=true flag set, which lets RTC time sync be used if there's no master time sync.
 
the second part is little more difficult to understand.  If you have a s6A and it records in recorder mode without a trigger, then the trigger time stamp will not be set, but the start record time stamp will be set.  The existing export code would then only set the time based on the trigger time stamp, so it wouldn't get set. 
 
In the patch this is now handled by getting both the trigger and start record time stamps, it does this as two separate parameters, although it could use a single parameter.  I chose to use two parameters to make it less confusing. 
 
later on there's code that calculates "thisTime" and then adjusts it using the unix time stamp.  In the case of a trigger time stamp you are adjusting by the trigger, so if "thisTime" is -1s you are subtracting 1 second from the trigger.  In the case of the start record timestamp there are no negative times as there was no trigger, so "thisTime" starts at 0, which suddenly makes sense with the startRecord time stamp.
 
To test this just run a S6A test with recorder mode (and no trigger) and no time/clock sync operations set and then export to CSV after flipping the UTC time flag above. 
 
Prior to the patch the old data set will not export a time stamp column, just time column, after it will export a UTC time column.
 
I've attached two datasets just for ease.
 
This does not address the timestamp shown in the view tab under test meta data, which is based on trigger time only.
 
The dataset with the trigger was the TSR AIR dataset, the one without was the S6A dataset.
 
 
 
 
 
 Attachments: 
    DTM_31783_TSRAIRTS.patch 5.5 KB   Data.7z 289 KB</Comment>
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-05-31T21:26:52Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment>related case 15333</Comment>
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-05-31T18:05:35Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment>when PTPMasterSync is false for all units there's no UTC information available even though it could be available.
 
additionally when there's no trigger there's also no information available.
 
suggest for PTPMasterSync we do 1) if there are no PTPMasterSync=true but there ARE second/nanosecond values, we make use of them.  2) If there are multiple for some reason we use the first or last I suppose 3) if trigger is not available but start is AND it's in recorder mode then we extrapolate out to the trigger
 
code in question;
 
if (module.PTPMasterSync)
                         {
                             TestModuleTimeStamp testModuleTimeStamp =
                                 new TestModuleTimeStamp { TriggerTimestampSec = (int)module.TriggerTimestampSec, TriggerTimestampNanoSec = (int)module.TriggerTimestampNanoSec };</Comment>
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-05-31T16:26:47Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-05-31T16:25:30Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Opened</StatusString>
    <TimeStamp>2023-05-31T16:25:30Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Opened</Status>
  </FBEvent>
</ArrayOfFBEvent>