[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Discuss-gnuradio] FRS with the FLEX400 (newbie questions)
From: |
Kevin Rudd \(Contractor\) |
Subject: |
[Discuss-gnuradio] FRS with the FLEX400 (newbie questions) |
Date: |
Fri, 20 Apr 2007 11:54:20 -0400 |
Hello Again,
I am starting to play with the GNU Radio code some and wanted to start by
capturing audio from a handheld radio (FRS fm modulation). I am having some
problems and can't seem to figure out why it is not working.
1) receiving. Why does the usrp nfm sample programs not work for FRS well?
I type...
python ./usrrp_nbfm_rcv.py -f462.5625
When I key the radio, I see the large spike at the carrier frequency
(+80db). But after demod, the max amplitude is -80 to -60 db. If I turn my
volume way up, I can hear the audio, but barely.
2) transmitting. I also tried modulating a single sine wave tone and
transmitting it so that I can hear it on the radio. For some reason my tune
function returns a false. Does this mean it did not tune to the correct
frequency? What could be causing that? My code is below if it helps.
Thanks!
Kevin Rudd
----------------------------------------------------------------------------
#!/usr/bin/env python
from gnuradio import gr, eng_notation
from gnuradio import usrp
from gnuradio import audio
from gnuradio import blks
from gnuradio.eng_option import eng_option
import usrp_dbid
import sys
class my_graph(gr.flow_graph):
def __init__(self):
gr.flow_graph.__init__ (self)
self.u = usrp.sink_c () # the USRP sink (consumes
samples)
self.dac_rate = self.u.dac_rate() # 128
MS/s
self.usrp_interp = 400
self.u.set_interp_rate(self.usrp_interp)
self.usrp_rate = self.dac_rate / self.usrp_interp # 320
kS/s
self.sw_interp = 10
self.audio_rate = self.usrp_rate / self.sw_interp # 32
kS/s
# determine the daughterboard subdevice we're using
tx_subdev_spec = usrp.pick_tx_subdevice(self.u)
m = usrp.determine_tx_mux_value(self.u, tx_subdev_spec)
self.u.set_mux(m)
self.subdev = usrp.selected_subdev(self.u, tx_subdev_spec)
print "Using TX d'board %s" % (self.subdev.side_and_name(),)
m = usrp.determine_tx_mux_value(self.u, tx_subdev_spec)
self.subdev.set_gain(self.subdev.gain_range()[1]) # set
max Tx gain
ttarget_freq = 462562500
#self.set_freq(ttarget_freq)
r = self.u.tune(self.subdev._which, self.subdev,
ttarget_freq)
print r # this prints false!
self.subdev.set_enable(True) #
enable transmitter
src0 = gr.sig_source_f (self.audio_rate, gr.GR_SIN_WAVE,
350, 1)
fmtx = blks.nbfm_tx (self, self.audio_rate, self.usrp_rate,
max_dev=5e3, tau=75e-6)
gain = gr.multiply_const_cc (4.0) # not sure about this
self.connect (src0, fmtx)
self.connect (fmtx, gain)
self.connect (gain, self.u)
if __name__ == '__main__':
try:
my_graph().run()
except KeyboardInterrupt:
pass
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Discuss-gnuradio] FRS with the FLEX400 (newbie questions),
Kevin Rudd \(Contractor\) <=