forked from sdr/gr-osmosdr
update GRC integration
This commit is contained in:
parent
619d7a5a8b
commit
3ddcdbd8b8
|
@ -1,6 +1,6 @@
|
||||||
<?xml version='1.0' encoding='ASCII'?>
|
<?xml version='1.0' encoding='ASCII'?>
|
||||||
<flow_graph>
|
<flow_graph>
|
||||||
<timestamp>Fri Apr 6 15:57:44 2012</timestamp>
|
<timestamp>Wed Apr 11 17:53:04 2012</timestamp>
|
||||||
<block>
|
<block>
|
||||||
<key>options</key>
|
<key>options</key>
|
||||||
<param>
|
<param>
|
||||||
|
@ -56,29 +56,6 @@
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</param>
|
</param>
|
||||||
</block>
|
</block>
|
||||||
<block>
|
|
||||||
<key>variable</key>
|
|
||||||
<param>
|
|
||||||
<key>id</key>
|
|
||||||
<value>samp_rate</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>_enabled</key>
|
|
||||||
<value>True</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>value</key>
|
|
||||||
<value>2048e3</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>_coordinate</key>
|
|
||||||
<value>(39, 137)</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>_rotation</key>
|
|
||||||
<value>0</value>
|
|
||||||
</param>
|
|
||||||
</block>
|
|
||||||
<block>
|
<block>
|
||||||
<key>variable_slider</key>
|
<key>variable_slider</key>
|
||||||
<param>
|
<param>
|
||||||
|
@ -134,41 +111,6 @@
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</param>
|
</param>
|
||||||
</block>
|
</block>
|
||||||
<block>
|
|
||||||
<key>osmosdr_source_c</key>
|
|
||||||
<param>
|
|
||||||
<key>id</key>
|
|
||||||
<value>osmosdr_source_c_0</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>_enabled</key>
|
|
||||||
<value>True</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>args</key>
|
|
||||||
<value></value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>freq</key>
|
|
||||||
<value>freq</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>rate</key>
|
|
||||||
<value>samp_rate</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>gain</key>
|
|
||||||
<value>gain</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>_coordinate</key>
|
|
||||||
<value>(284, 297)</value>
|
|
||||||
</param>
|
|
||||||
<param>
|
|
||||||
<key>_rotation</key>
|
|
||||||
<value>0</value>
|
|
||||||
</param>
|
|
||||||
</block>
|
|
||||||
<block>
|
<block>
|
||||||
<key>variable_slider</key>
|
<key>variable_slider</key>
|
||||||
<param>
|
<param>
|
||||||
|
@ -311,6 +253,123 @@
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</param>
|
</param>
|
||||||
</block>
|
</block>
|
||||||
|
<block>
|
||||||
|
<key>variable</key>
|
||||||
|
<param>
|
||||||
|
<key>id</key>
|
||||||
|
<value>samp_rate</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_enabled</key>
|
||||||
|
<value>True</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>value</key>
|
||||||
|
<value>samplerate</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_coordinate</key>
|
||||||
|
<value>(39, 137)</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_rotation</key>
|
||||||
|
<value>0</value>
|
||||||
|
</param>
|
||||||
|
</block>
|
||||||
|
<block>
|
||||||
|
<key>osmosdr_source_c</key>
|
||||||
|
<param>
|
||||||
|
<key>id</key>
|
||||||
|
<value>osmosdr_source_c_0</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_enabled</key>
|
||||||
|
<value>True</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>args</key>
|
||||||
|
<value></value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>freq</key>
|
||||||
|
<value>freq</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>freq_corr</key>
|
||||||
|
<value>0</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>rate</key>
|
||||||
|
<value>samplerate</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>gain</key>
|
||||||
|
<value>gain</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_coordinate</key>
|
||||||
|
<value>(278, 276)</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_rotation</key>
|
||||||
|
<value>0</value>
|
||||||
|
</param>
|
||||||
|
</block>
|
||||||
|
<block>
|
||||||
|
<key>variable_slider</key>
|
||||||
|
<param>
|
||||||
|
<key>id</key>
|
||||||
|
<value>samplerate</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_enabled</key>
|
||||||
|
<value>True</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>label</key>
|
||||||
|
<value></value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>value</key>
|
||||||
|
<value>2048e3</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>min</key>
|
||||||
|
<value>1e6</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>max</key>
|
||||||
|
<value>3.2e6</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>num_steps</key>
|
||||||
|
<value>100</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>style</key>
|
||||||
|
<value>wx.SL_HORIZONTAL</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>converver</key>
|
||||||
|
<value>float_converter</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>grid_pos</key>
|
||||||
|
<value></value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>notebook</key>
|
||||||
|
<value></value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_coordinate</key>
|
||||||
|
<value>(40, 237)</value>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<key>_rotation</key>
|
||||||
|
<value>0</value>
|
||||||
|
</param>
|
||||||
|
</block>
|
||||||
<connection>
|
<connection>
|
||||||
<source_block_id>osmosdr_source_c_0</source_block_id>
|
<source_block_id>osmosdr_source_c_0</source_block_id>
|
||||||
<sink_block_id>wxgui_fftsink2_0</sink_block_id>
|
<sink_block_id>wxgui_fftsink2_0</sink_block_id>
|
||||||
|
|
|
@ -22,14 +22,15 @@ class osmosdr_source_c(grc_wxgui.top_block_gui):
|
||||||
|
|
||||||
self.src = osmosdr.source_c()
|
self.src = osmosdr.source_c()
|
||||||
|
|
||||||
self.src.set_samp_rate(1024000)
|
self.src.set_sample_rate(1024000)
|
||||||
self.src.set_center_freq(392.8e6)
|
self.src.set_center_freq(394.5e6)
|
||||||
self.src.set_gain(10)
|
self.src.set_gain(10)
|
||||||
|
|
||||||
##################################################
|
##################################################
|
||||||
# Variables
|
# Variables
|
||||||
##################################################
|
##################################################
|
||||||
self.samp_rate = samp_rate = self.src.get_samp_rate()
|
self.sample_rate = self.src.get_sample_rate()
|
||||||
|
self.center_freq = self.src.get_center_freq()
|
||||||
|
|
||||||
##################################################
|
##################################################
|
||||||
# Blocks
|
# Blocks
|
||||||
|
@ -37,11 +38,12 @@ class osmosdr_source_c(grc_wxgui.top_block_gui):
|
||||||
self.sink = fftsink2.fft_sink_c(
|
self.sink = fftsink2.fft_sink_c(
|
||||||
self.GetWin(),
|
self.GetWin(),
|
||||||
fft_size=1024,
|
fft_size=1024,
|
||||||
sample_rate=samp_rate,
|
baseband_freq=self.center_freq,
|
||||||
|
sample_rate=self.sample_rate,
|
||||||
ref_scale=2.0,
|
ref_scale=2.0,
|
||||||
ref_level=0,
|
ref_level=0,
|
||||||
y_divs=10,
|
y_divs=10,
|
||||||
fft_rate=15,
|
fft_rate=10,
|
||||||
average=False,
|
average=False,
|
||||||
avg_alpha=0.5
|
avg_alpha=0.5
|
||||||
)
|
)
|
||||||
|
@ -53,10 +55,13 @@ class osmosdr_source_c(grc_wxgui.top_block_gui):
|
||||||
##################################################
|
##################################################
|
||||||
self.connect((self.src, 0), (self.sink, 0))
|
self.connect((self.src, 0), (self.sink, 0))
|
||||||
|
|
||||||
|
def set_sample_rate(self, sample_rate):
|
||||||
|
self.sample_rate = sample_rate
|
||||||
|
self.sink.set_sample_rate(self.sample_rate)
|
||||||
|
|
||||||
def set_samp_rate(self, samp_rate):
|
def set_center_freq(self, center_freq):
|
||||||
self.samp_rate = samp_rate
|
self.center_freq = center_freq
|
||||||
self.sink.set_sample_rate(self.samp_rate)
|
self.sink.set_center_freq(self.center_freq)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
parser = OptionParser(option_class=eng_option, usage="%prog: [options]")
|
parser = OptionParser(option_class=eng_option, usage="%prog: [options]")
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
<category>OsmoSDR</category>
|
<category>OsmoSDR</category>
|
||||||
<import>import osmosdr</import>
|
<import>import osmosdr</import>
|
||||||
<make>osmosdr.sink_c()</make>
|
<make>osmosdr.sink_c()</make>
|
||||||
|
|
||||||
<sink>
|
<sink>
|
||||||
<name>in</name>
|
<name>in</name>
|
||||||
<type>complex</type>
|
<type>complex</type>
|
||||||
|
<nports>1</nports>
|
||||||
</sink>
|
</sink>
|
||||||
</block>
|
</block>
|
||||||
|
|
|
@ -5,15 +5,19 @@
|
||||||
<category>OsmoSDR</category>
|
<category>OsmoSDR</category>
|
||||||
<import>import osmosdr</import>
|
<import>import osmosdr</import>
|
||||||
<make>osmosdr.source_c($args)
|
<make>osmosdr.source_c($args)
|
||||||
|
self.$(id).set_sample_rate($rate)
|
||||||
self.$(id).set_center_freq($freq)
|
self.$(id).set_center_freq($freq)
|
||||||
self.$(id).set_samp_rate($rate)
|
self.$(id).set_freq_corr($corr)
|
||||||
self.$(id).set_gain($gain)
|
self.$(id).set_gain($gain)
|
||||||
|
self.$(id).set_antenna($antenna)
|
||||||
</make>
|
</make>
|
||||||
<callback>set_center_freq($freq)</callback>
|
<callback>set_center_freq($freq)</callback>
|
||||||
<callback>set_samp_rate($rate)</callback>
|
<callback>set_freq_corr($corr)</callback>
|
||||||
|
<callback>set_sample_rate($rate)</callback>
|
||||||
<callback>set_gain($gain)</callback>
|
<callback>set_gain($gain)</callback>
|
||||||
|
<callback>set_antenna($antenna)</callback>
|
||||||
<param>
|
<param>
|
||||||
<name>Device specific arguments</name>
|
<name>Device arguments</name>
|
||||||
<key>args</key>
|
<key>args</key>
|
||||||
<value></value>
|
<value></value>
|
||||||
<type>string</type>
|
<type>string</type>
|
||||||
|
@ -25,9 +29,15 @@ self.$(id).set_gain($gain)
|
||||||
<type>real</type>
|
<type>real</type>
|
||||||
</param>
|
</param>
|
||||||
<param>
|
<param>
|
||||||
<name>Samplerate (Hz)</name>
|
<name>Freq. corr. (ppm)</name>
|
||||||
|
<key>corr</key>
|
||||||
|
<value>0</value>
|
||||||
|
<type>real</type>
|
||||||
|
</param>
|
||||||
|
<param>
|
||||||
|
<name>Sample rate (Hz)</name>
|
||||||
<key>rate</key>
|
<key>rate</key>
|
||||||
<value>2048000</value>
|
<value>1024000</value>
|
||||||
<type>real</type>
|
<type>real</type>
|
||||||
</param>
|
</param>
|
||||||
<param>
|
<param>
|
||||||
|
@ -36,9 +46,41 @@ self.$(id).set_gain($gain)
|
||||||
<value>20.0</value>
|
<value>20.0</value>
|
||||||
<type>real</type>
|
<type>real</type>
|
||||||
</param>
|
</param>
|
||||||
|
<param>
|
||||||
|
<name>Antenna</name>
|
||||||
|
<key>antenna</key>
|
||||||
|
<value></value>
|
||||||
|
<type>string</type>
|
||||||
|
</param>
|
||||||
<check>($freq >= 50e6) and ($freq <= 2.2e9)</check>
|
<check>($freq >= 50e6) and ($freq <= 2.2e9)</check>
|
||||||
|
<check>($rate >= 1e6) and ($rate <= 3.2e6)</check>
|
||||||
<source>
|
<source>
|
||||||
<name>out</name>
|
<name>out</name>
|
||||||
<type>complex</type>
|
<type>complex</type>
|
||||||
|
<nports>1</nports>
|
||||||
</source>
|
</source>
|
||||||
|
<doc>
|
||||||
|
The OsmoSDR Source Block:
|
||||||
|
|
||||||
|
Device Arguments:
|
||||||
|
The device address is a delimited string used to locate devices on your system.
|
||||||
|
Use the device address to specify a specific device or list of devices.
|
||||||
|
If left blank, the first device found will be used.
|
||||||
|
|
||||||
|
Frequency:
|
||||||
|
The center frequency is the overall frequency of the RF chain.
|
||||||
|
|
||||||
|
Frequency correction:
|
||||||
|
The frequency correction factor in parts per million (ppm).
|
||||||
|
|
||||||
|
Sample rate:
|
||||||
|
The sample rate is the number of samples per second output by this block.
|
||||||
|
|
||||||
|
Gain:
|
||||||
|
Overall RF gain of the device.
|
||||||
|
|
||||||
|
Antenna:
|
||||||
|
For devices with only one antenna, this may be left blank.
|
||||||
|
Otherwise, the user should specify one of the possible antenna choices.
|
||||||
|
</doc>
|
||||||
</block>
|
</block>
|
||||||
|
|
Loading…
Reference in New Issue