Difference between revisions of "File format:Rigol WFM4"

From sigrok
Jump to navigation Jump to search
(Created page with "{{DISPLAYTITLE:File format:Rigol WFM4}} WFM4 is a proprietary file format used by the Rigol DS4000 series digital storage oscilloscopes. It is used to record the measured...")
 
(endianness)
 
(One intermediate revision by the same user not shown)
Line 4: Line 4:
== Header ==
== Header ==


The known header values that are of interest to sigrok are as follows (addresses are hex):
The known header values that are of interest to sigrok are as follows (addresses are hex, and data is little endian):


{| border="0" class="alternategrey sigroktable sortable"
{| border="0" class="alternategrey sigroktable sortable"
Line 34: Line 34:


The channel data starts at offset 0x51EC and is non-interleaved. Each active channel (starting with channel 1) has ''memory_depth'' continuous samples, followed by ''bytes_per_channel - memory_depth'' bytes of padding.
The channel data starts at offset 0x51EC and is non-interleaved. Each active channel (starting with channel 1) has ''memory_depth'' continuous samples, followed by ''bytes_per_channel - memory_depth'' bytes of padding.
== Resources ==
* [https://github.com/Cat-Ion/rigol-ds4000-wfm A documentation of the known values of the format]


[[Category:File format]]
[[Category:File format]]

Latest revision as of 20:52, 29 December 2018

WFM4 is a proprietary file format used by the Rigol DS4000 series digital storage oscilloscopes. It is used to record the measured waveforms.

Header

The known header values that are of interest to sigrok are as follows (addresses are hex, and data is little endian):

Bytes Field
0 - 3 0xA5 0xA5 0x38 0x00
40 Bitmask of the activated analog channels (LSB is CH1, etc)
60 - 63 Memory depth: Number of samples per channel (uint32)
64 - 67 Sampling rate in Hz (float)
134 - 137 Bytes per channel: memory depth plus padding (uint32)

The timespan of the file can be determined by:

number of points per channel / sampling rate

Data

The channel data starts at offset 0x51EC and is non-interleaved. Each active channel (starting with channel 1) has memory_depth continuous samples, followed by bytes_per_channel - memory_depth bytes of padding.

Resources