New types for turbo formats
New chunks for turbo formats (PWM encoded data)
pwms (PWM settings)
This is the equivalent of "baud" chunk for FSK data, describing the parameters of signal.
Name | Raw bytes | value |
type | $70 $77 $6d $73 | "pwms" identifier |
length | $02 $00 | Length of data is 2 bytes |
aux1 | $xx | see below for description |
aux2 | $00 | currently not used |
data | $LL $MM | sample rate, the base to specify width of impulses in the rest of PWM blocks |
aux1 - two least significant bits describe the type of impulse:
01 - | the impulse starts with a falling edge and lasts until the next falling edge. Distances between subsequent edges (falling,rising,falling) are equal. The times of two subsequent states triggered by those edges are equal. |
10 - | the impulse starts with a rising edge and lasts until the next rising edge. Distances between subsequent edges (rising,falling,rising) are equal. The times of two subsequent states triggered by those edges are equal. |
00 - | reserved |
11 - | reserved |
aux1 - bit 2 determines the order of bits in byte (endian)
0 - | from least to most significant (little endian) |
1 - | from most to least significant (big endian) |
pwml (PWM levels)
This chunk stores series of signal levels (low and high).
Name | Raw bytes | value |
type | $70 $77 $6d $6c | "pwml" identifier |
length | $LL $MM | Length of data is $MMLL |
aux | $LL $MM | IRG (silence) in miliseconds |
data | $LL $MM $LL $MM $LL $MM ... | Length/2 values specifying the widths of subsequent signal states, in samples. The first state is determined from aux1 in preceding "pwms" chunk (low for '01' and high for '10') |
pwmc (PWM cycles)
This chunk stores series of impulses of equal width (for example sync signal, series of identical bits etc.).
Name | Raw bytes | value |
type | $70 $77 $6d $63 | "pwmc" identifier |
length | $LL $MM | Length of data is $MMLL |
aux | $LL $MM | IRG (silence) in miliseconds |
data | $xx $LL $MM $xx $LL $MM $xx $LL $MM ... | (Length/3) of trios: impulse width in samples (1 byte), number of impulses ($MMLL - 2 bytes) |
pwmd (PWM data)
This chunk stores pure data.
Name | Raw bytes | value |
type | $70 $77 $6d $64 | "pwmd" identifier |
length | $LL $MM | Length of data is $MMLL |
aux1 | $xx | width of impulse corresponding to bit "0", in samples |
aux2 | $yy | width of impulse corresponding to bit "1", in samples |
data | ... | (Lenght) bytes of data |
Previous page: New types for standard format
Next page: Installation