Difference between revisions of "File format:Tektronix WFM"
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
| Uwe Hermann (talk | contribs) m (Uwe Hermann moved page File format:Tek WFM to File format:Tektronix WFM without leaving a redirect) | Uwe Hermann (talk | contribs)  | ||
| Line 1: | Line 1: | ||
| {{DISPLAYTITLE:File format:Tek WFM}} | {{DISPLAYTITLE:File format:Tek WFM}} | ||
| The '''Tektronix WFM''' format is a special format used by the Tektronix TDS series scopes. It uses less space than the CSV/Matlab export functions provided. | |||
| The  | |||
| == Header == | == Header == | ||
| Line 11: | Line 10: | ||
| |- | |- | ||
| | 0 - 1 | | 0 - 1 | ||
| | Magic  | | Magic bytes | ||
| |- | |- | ||
| | 2 - 5 | | 2 - 5 | ||
| | Format  | | Format code | ||
| |- | |- | ||
| | 6 | | 6 | ||
| | Length of  | | Length of data, unsigned integer (so far always 4) | ||
| |- | |- | ||
| | 7 - 11 | | 7 - 11 | ||
| Line 23: | Line 22: | ||
| |- | |- | ||
| | 12 - 15 | | 12 - 15 | ||
| | Another  | | Another magic | ||
| |- | |- | ||
| | 16-20 | | 16-20 | ||
| | Length of  | | Length of header + data (big endian, signed integer) | ||
| |- | |- | ||
| | 21 - 28 | | 21 - 28 | ||
| | Vertical  | | Vertical position (double) | ||
| |- | |- | ||
| | 29 - 36 | | 29 - 36 | ||
| | Horizontal  | | Horizontal position (double) | ||
| |- | |- | ||
| | 37 - 43 | | 37 - 43 | ||
| | Vertical  | | Vertical zoom (double) | ||
| |- | |- | ||
| | 44 - 51 | | 44 - 51 | ||
| | Horizontal  | | Horizontal zoom (double) | ||
| |- | |- | ||
| | 52 - 53 | | 52 - 53 | ||
| | Acquisition  | | Acquisition mode (signed integer, currently unknown) | ||
| |- | |- | ||
| | 54 - 55 | | 54 - 55 | ||
| | Min  | | Min max (unknown) | ||
| |- | |- | ||
| | 56 - 63 | | 56 - 63 | ||
| Line 50: | Line 49: | ||
| |- | |- | ||
| | 63 - 64 | | 63 - 64 | ||
| | Vertical  | | Vertical coupling (signed integer) | ||
| |- | |- | ||
| | 65 - 66 | | 65 - 66 | ||
| | Horizontal  | | Horizontal unit (signed integer) | ||
| |- | |- | ||
| | 67 - 74 | | 67 - 74 | ||
| Line 59: | Line 58: | ||
| |- | |- | ||
| | 75 - 76 | | 75 - 76 | ||
| | Vertical  | | Vertical unit (signed integer) | ||
| |- | |- | ||
| | 77 - 84 | | 77 - 84 | ||
| | Vertical  | | Vertical offset (double) | ||
| |- | |- | ||
| | 85 - 92 | | 85 - 92 | ||
| | Vertical  | | Vertical position (double) | ||
| |- | |- | ||
| | 93 - 100 | | 93 - 100 | ||
| | Vertical  | | Vertical gain (double) | ||
| |- | |- | ||
| | 101 - 105 | | 101 - 105 | ||
| Line 74: | Line 73: | ||
| |- | |- | ||
| | 106 - 107 | | 106 - 107 | ||
| | Trigger  | | Trigger position (signed integer), possibly in points | ||
| |- | |- | ||
| | 108 - 109 | | 108 - 109 | ||
| | Header  | | Header version (signed integer) | ||
| |- | |- | ||
| | 110 - 111 | | 110 - 111 | ||
| | Sampling  | | Sampling density (??) (signed integer) | ||
| |- | |- | ||
| | 112 - 113 | | 112 - 113 | ||
| | Burst  | | Burst segment length (signed integer) | ||
| |- | |- | ||
| | 114 - 115 | | 114 - 115 | ||
| | Waveform  | | Waveform source (signed integer) | ||
| |- | |- | ||
| | 116 - 121 | | 116 - 121 | ||
| Line 103: | Line 102: | ||
| == Data == | == Data == | ||
| Waveform data. Length of this segment is stored in Record length. | Waveform data. Length of this segment is stored in '''Record length'''. | ||
| To reconstruct the waveform use the following: | To reconstruct the waveform use the following: | ||
|  y = data[i] * vertgain / 25 / 256 + vertoffset - vertposition * vertgain | |||
|  x = (i - (reclength*trigpos/100)) * horizscaleperpoint | |||
| [[Category:File format]] | [[Category:File format]] | ||
Revision as of 10:25, 30 December 2014
The Tektronix WFM format is a special format used by the Tektronix TDS series scopes. It uses less space than the CSV/Matlab export functions provided.
Header
| Bytes | Field | 
|---|---|
| 0 - 1 | Magic bytes | 
| 2 - 5 | Format code | 
| 6 | Length of data, unsigned integer (so far always 4) | 
| 7 - 11 | Number of bytes following | 
| 12 - 15 | Another magic | 
| 16-20 | Length of header + data (big endian, signed integer) | 
| 21 - 28 | Vertical position (double) | 
| 29 - 36 | Horizontal position (double) | 
| 37 - 43 | Vertical zoom (double) | 
| 44 - 51 | Horizontal zoom (double) | 
| 52 - 53 | Acquisition mode (signed integer, currently unknown) | 
| 54 - 55 | Min max (unknown) | 
| 56 - 63 | Duration in seconds (double) | 
| 63 - 64 | Vertical coupling (signed integer) | 
| 65 - 66 | Horizontal unit (signed integer) | 
| 67 - 74 | Horizontal time per point (double) | 
| 75 - 76 | Vertical unit (signed integer) | 
| 77 - 84 | Vertical offset (double) | 
| 85 - 92 | Vertical position (double) | 
| 93 - 100 | Vertical gain (double) | 
| 101 - 105 | Record length (unsigned integer) | 
| 106 - 107 | Trigger position (signed integer), possibly in points | 
| 108 - 109 | Header version (signed integer) | 
| 110 - 111 | Sampling density (??) (signed integer) | 
| 112 - 113 | Burst segment length (signed integer) | 
| 114 - 115 | Waveform source (signed integer) | 
| 116 - 121 | 3x Video 1 (signed integer) | 
| 122 - 129 | Video 2 (double) | 
| 130 - 131 | Video 3 (signed integer) | 
| 131 - 163 | Preamble (???) | 
Data
Waveform data. Length of this segment is stored in Record length.
To reconstruct the waveform use the following:
y = data[i] * vertgain / 25 / 256 + vertoffset - vertposition * vertgain x = (i - (reclength*trigpos/100)) * horizscaleperpoint