Digital signal exporting 'downsampled'

Hello everyone,

I have searched for this topic in the forum and FAQ but I have just found this information:

Note: Digital channel entries are only recorded in the export file when data changes. Therefore, the number of entries in the resulting export file are dependent on the number of transitions that occur and not on the number of digital samples in the capture. This helps reduce the file size of the export file.

However, when exporting my measurements with Logic 2.3.37 I have encountered some ‘downsampling’. The original measurement gathered in Logic 2.3.37 is this, with a square signal quite well defined:


When exporting the signal and representing the data I got something like this:
pyton_graph
And it is possible to see that the .csv file is missing some values:
csv_export
The channel values presented in the other graphs are highlighted in red, and the data values that seem missing some ‘extra’ 1s are highlighted in purple.

This is of course a very tiny portion of the whole signal, and most of it is well exported. I was wondering if there is something I am doing wrong while exporting, if this is an issue already reported and if there is any solution to this.
My next step is going to try to record the signal as analogue to choose the sample rate when exporting.

Thank you very much in advance for your time and attention.

@pineapplezex Whoa, that doesn’t look good! Can you share your capture file (.sal file format) with me? Link below for instructions:

In addition, can you share the exact export options you used? I’ll try and run the same export operation to see if I can reproduce the issue.

@timreyes Sure thing! Here it is:
long_comm_time_17_09_21.sal (2.2 MB)
I got the .csv file selecting the channels from 0 to 5 included, from time 8.466656747 s until 14.596727167 s (I have tried with other time ranges but the problem persists). To select the time range I chose the option “visible screen”, and the export format as CSV. Here you can see a screenshot:

Thank you very much for your assistance!

Thanks @pineapplezex! I didn’t get a chance to take a look at it just yet, but I’ll review this with the team and let you know our findings.

@pineapplezex I ran a test and I see where the issue is coming from. The csv export is in fact valid.

The issue is how Excel-like programs interprets and draws the line between the sample points. The sample points are in fact correct.

If you want a more accurate graph drawing of the lines, the lines must only transition between high/low states when a new sample is reached. In Excel’s case, the lines are simply drawn straigh from sample to sample, which is incorrect if trying to reconstruct the waveform. Unfortunately, I’m not quite sure if that is possible in Excel, since this line drawing method seems to apply strictly to digital signal analysis, but I hope my explanation helps.

@timreyes Thank you very much for your answer!
The graphs I posted were created with python. The problem was the logic I used is wrong. Now I understand way better how the data exported works. I will separate the data on different channels to interpret the time column better and make my life easier.
I am sorry for the trouble and thank you very much for your time and attention!

1 Like