summaryrefslogtreecommitdiff
path: root/grc/data/platforms/python/blocks/blks2_packet_encoder.xml
blob: ea9927225ec8c3fc8d695fb003872d4b79a9f60a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
<?xml version="1.0"?>
<!--
###################################################
##Packet Encoder
###################################################
 -->
<block>
	<name>Packet Encoder</name>
	<key>blks2_packet_encoder</key>
	<import>from grc_gnuradio import blks2 as grc_blks2</import>
	<import>from gnuradio import gr</import>
	<make>grc_blks2.packet_encoder(
	item_size_in=$type.size*$vlen,
	samples_per_symbol=$samples_per_symbol,
	bits_per_symbol=$bits_per_symbol,
	access_code=$access_code,
	pad_for_usrp=$pad_for_usrp,
	payload_length=$payload_length,
)</make>
	<param>
		<name>Input Type</name>
		<key>type</key>
		<value>float</value>
		<type>enum</type>
		<option>
			<name>Complex</name>
			<key>complex</key>
			<opt>size:gr.sizeof_gr_complex</opt>
		</option>
		<option>
			<name>Float</name>
			<key>float</key>
			<opt>size:gr.sizeof_float</opt>
		</option>
		<option>
			<name>Int</name>
			<key>int</key>
			<opt>size:gr.sizeof_int</opt>
		</option>
		<option>
			<name>Short</name>
			<key>short</key>
			<opt>size:gr.sizeof_short</opt>
		</option>
		<option>
			<name>Byte</name>
			<key>byte</key>
			<opt>size:gr.sizeof_char</opt>
		</option>
	</param>
	<param>
		<name>Samples/Symbol</name>
		<key>samples_per_symbol</key>
		<type>int</type>
	</param>
	<param>
		<name>Bits/Symbol</name>
		<key>bits_per_symbol</key>
		<type>int</type>
	</param>
	<param>
		<name>Access Code</name>
		<key>access_code</key>
		<value></value>
		<type>string</type>
	</param>
	<param>
		<name>Pad for USRP</name>
		<key>pad_for_usrp</key>
		<type>enum</type>
		<option>
			<name>Yes</name>
			<key>True</key>
		</option>
		<option>
			<name>No</name>
			<key>False</key>
		</option>
	</param>
	<param>
		<name>Payload Length</name>
		<key>payload_length</key>
		<value>-1</value>
		<type>int</type>
	</param>
	<param>
		<name>Vec Length</name>
		<key>vlen</key>
		<value>1</value>
		<type>int</type>
	</param>
	<check>$vlen &gt; 0</check>
	<sink>
		<name>in</name>
		<type>$type</type>
		<vlen>$vlen</vlen>
	</sink>
	<source>
		<name>out</name>
		<type>byte</type>
	</source>
	<doc>
Packet encoder block, for use with the gnuradio modulator blocks: gmsk, psk, qam.

Access Code: string of 1's and 0's, leave blank for default.

Bits/Symbol should be set accordingly:
	gmsk -> 1
	dbpsk -> 1
	dqpsk -> 2
	d8psk -> 3
	qam8 -> 3
	qam16 -> 4
	qam64 -> 6
	qam256 -> 8
	</doc>
</block>