summaryrefslogtreecommitdiff
path: root/grc/blocks/usrp2_source_xxxx.xml
blob: 584199798f1b18325f0a31236747fc82f9bb91f5 (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
118
<?xml version="1.0"?>
<!--
###################################################
##USRP2 Source
##  Note: the center freq must be set after the lo offset
###################################################
 -->
<block>
	<name>USRP2 Source</name>
	<key>usrp2_source_xxxx</key>
	<import>from gnuradio import usrp2</import>
	<make>#if not $interface() and not $mac_addr()
usrp2.source_$(type.fcn)()
#elif not $mac_addr()
usrp2.source_$(type.fcn)($interface)
#else
usrp2.source_$(type.fcn)($interface, $mac_addr)
#end if
self.$(id).set_decim($decimation)
#if $lo_offset() != float('inf')
self.$(id).set_lo_offset($lo_offset)
#end if
self.$(id).set_center_freq($frequency)
self.$(id).set_gain($gain)
self.$(id).config_mimo($usrp2_clock_src)</make>
	<callback>set_decim($decimation)</callback>
	<callback>#if $lo_offset() != float('inf')
self.$(id).set_lo_offset($lo_offset)
#end if
self.$(id).set_center_freq($frequency)</callback>
	<callback>set_gain($gain)</callback>
	<param>
		<name>Output Type</name>
		<key>type</key>
		<type>enum</type>
		<option>
			<name>Complex</name>
			<key>complex</key>
			<opt>fcn:32fc</opt>
			<opt>vlen:1</opt>
		</option>
		<option>
			<name>Short</name>
			<key>short</key>
			<opt>fcn:16sc</opt>
			<opt>vlen:2</opt>
		</option>
	</param>
	<param>
		<name>Interface</name>
		<key>interface</key>
		<value></value>
		<type>string</type>
	</param>
	<param>
		<name>MAC Addr</name>
		<key>mac_addr</key>
		<value></value>
		<type>string</type>
	</param>
	<param>
		<name>Decimation</name>
		<key>decimation</key>
		<type>int</type>
	</param>
	<param>
		<name>Frequency (Hz)</name>
		<key>frequency</key>
		<type>real</type>
	</param>
	<param>
		<name>LO Offset (Hz)</name>
		<key>lo_offset</key>
		<value>float('inf')</value>
		<type>real</type>
		<hide>#if $lo_offset() == float('inf') then 'part' else 'none'#</hide>
		<option>
			<name>Default</name>
			<key>float('inf')</key>
		</option>
	</param>
	<param>
		<name>Gain (dB)</name>
		<key>gain</key>
		<value>0</value>
		<type>real</type>
	</param>
	<param>
		<name>Clock Source</name>
		<key>usrp2_clock_src</key>
		<value>usrp2.MC_WE_DONT_LOCK</value>
		<type>enum</type>
		<option>
			<name>Internal</name>
			<key>usrp2.MC_WE_DONT_LOCK</key>
		</option>
		<option>
			<name>External SMA</name>
			<key>usrp2.MC_WE_LOCK_TO_SMA</key>
		</option>
		<option>
			<name>External MIMO</name>
			<key>usrp2.MC_WE_LOCK_TO_MIMO</key>
		</option>
	</param>
	<source>
		<name>out</name>
		<type>$type</type>
		<vlen>$type.vlen</vlen>
	</source>
	<doc>
The USRP2 source outputs 100 Megasamples per second / decimation.

To use the default ethernet device, leave interface blank. \
For systems with only 1 USRP2, you may leave the mac address blank. \
For multi-USRP2 systems, specify the mac address in the form 00:50:C2:85:3x:xx.
	</doc>
</block>