Author Topic: siglent sds1102cml waveform file format  (Read 6015 times)

0 Members and 2 Guests are viewing this topic.

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
siglent sds1102cml waveform file format
« on: October 11, 2014, 01:25:58 pm »
So I just got a Siglent SDS1102CML. I was playing with saving waveforms to a usb stick and the file that it wrote was given a .iso extension. I understand iso in terms of cdrom images, but I don't understand iso in terms of a waveform. I'd like to play with the waveform data offline. I understand and have played with the csv files that the oscilloscope can generate so I don't need any help there - just this iso file. Anyone have any information on it?

- Thanks, Tony
 

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
Re: siglent sds1102cml waveform file format
« Reply #1 on: October 11, 2014, 05:45:40 pm »
Never mind - I was being an idiot. The iso was already on my stick. Jeez!
 

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
Re: siglent sds1102cml waveform file format
« Reply #2 on: October 11, 2014, 06:11:30 pm »
It is raw 8 bit data - you can import it with audacity for one. I want to play with it in octave and or python.
 

Offline Mark_O

  • Frequent Contributor
  • **
  • Posts: 939
  • Country: us
Re: siglent sds1102cml waveform file format
« Reply #3 on: October 11, 2014, 10:18:35 pm »
It is raw 8 bit data - you can import it with audacity for one. I want to play with it in octave and or python.

No meta-data for things like sample-rate?  How is it supposed to be interpreted?
 

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
Re: siglent sds1102cml waveform file format
« Reply #4 on: October 12, 2014, 11:20:23 am »
Nope, no meta data. Just unsigned 8 bit values. So in octave you can do this:

fid = fopen('SDS00001.DAV','rb');
vals = fread(fid);
fclose(fid); 
plot(vals);

That produces the image attached. Once you have the values you can do things like FFT with more windows than the oscilloscope provides or on different window sizes than the 1024 samples that the oscilloscope uses. You can do much the same with the csv formatted values. I just wanted to know what I could do with the various saved files.  Octave is a Matlab type program and will honor many of the Matlab commands and functions directly.

In audacity you just import raw 8 bit pcm and you get a waveform much like the figure.
 

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
Re: siglent sds1102cml waveform file format
« Reply #5 on: October 12, 2014, 01:46:00 pm »
Another fun thing you can play with since the .DAV is a binary waveform is reading it in to baudline. Same file as above. http://www.baudline.com/
 

Offline Mark_O

  • Frequent Contributor
  • **
  • Posts: 939
  • Country: us
Re: siglent sds1102cml waveform file format
« Reply #6 on: October 13, 2014, 09:05:29 am »
Nope, no meta data. Just unsigned 8 bit values. So in octave you can do this:

Thanks for the explanation and pics, tcekolin.  That's interesting.  I guess you can apply any interpretation to the timebase that you like.
 

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
Re: siglent sds1102cml waveform file format
« Reply #7 on: October 13, 2014, 10:28:45 am »
Thanks Mark.

I don't know how to interpret time in the binary file. It is one of the things I have to investigate. What I was initially conerned with was how the file is organized and what kinds of tools I can apply to the data. I haven't thought yet about what the data actually means. But as far as I can tell - and I'd love to hear from someone who knows better - the file is just a bunch of 8 bit samples with the value of the sample being the amplitude of the signal at that sample. Beyond that - I am still ignorant. Heck a CSV file is organized like this:

Source,CH1
Second,Volt
-0.00450000031,0.24000,
-0.00449920031,0.24000,
-0.00449840031,0.24000,
-0.00449760031,0.00,
-0.00449680031,0.00,
-0.00449600031,0.24000,
-0.00449520031,0.24000,
-0.00449440031,0.24000,
.
.
.

Does Second mean time? I think it does but I am confused by the deep and dense Siglent documentation.  Along with learning about the output of the oscilloscope, I am trying to learn about what kinds of operations I can do to the data to glean more information. The theme here is learning :)

- Tony
 

Offline Mark_O

  • Frequent Contributor
  • **
  • Posts: 939
  • Country: us
Re: siglent sds1102cml waveform file format
« Reply #8 on: October 13, 2014, 03:55:06 pm »
Heck a CSV file is organized like this:

Source,CH1
Second,Volt
-0.00450000031,0.24000,
-0.00449920031,0.24000,
-0.00449840031,0.24000,
-0.00449760031,0.00,
-0.00449680031,0.00,
-0.00449600031,0.24000,
-0.00449520031,0.24000,
-0.00449440031,0.24000,
.
.
.

Does Second mean time?

Yes.  In that example, the times are pre-trigger, and incrementing by 800 ns for each sample.  Or a 1.25 MHz sample rate.

Basically, the time-rez is in 0.1 us.  I'm not sure why they go down to sub nano-sec levels, but it looks like garbage (the ..0031 stuff, or 310 pico-secs).  Kind of a waste to insert all those extra digits.
 

Offline tcekolinTopic starter

  • Newbie
  • Posts: 8
Re: siglent sds1102cml waveform file format
« Reply #9 on: October 15, 2014, 10:28:38 pm »
I thought this a bit more with the binary DAV file and so I loaded it up in a hex editor and there is data in the last half or so of the file which describes how the scope was set up. I can see strings for CH1, CH2, VOLTS DIVISION etc. Though they separate the letters  with 0x02 such as C 0x02 0x02 H 0x02 0x02 1 0x02 ...... I'll have to do some more digging to determine the file format - wish someone actually had that handy but what the heck. So Mark was right. The binary file does have information about how to interpret the data values.

t
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf