[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Discuss-gnuradio] GMSK demod
From: |
M. Awais Arshad |
Subject: |
[Discuss-gnuradio] GMSK demod |
Date: |
Mon, 2 Feb 2009 23:38:06 +0500 |
hi,
I am trying to demodulate GSM signals and captured some live GSM data using rfx900 on usrp. After running my code i encountered these following errors:
address@hidden:~$ python '/home/gohar/Desktop/gsm.py'
>>> gr_fir_ccf: using SSE
Traceback (most recent call last):
File line 90, in <module> my_top_block().run()
File line 81, in __init__ omega_relative_limit = 0)
TypeError: __init__() got multiple values for keyword argument 'gain_mu'
The first one is regarding the FIR filter which i am using ,,, i dont know the reason for this error " gr_fir_ccf: using SSE " , as in other codes it has been used in the same way as i did: the same is also the case for my_top_block().run() and gmsk.demod() . The python code is as fellows:
from gnuradio import gr, usrp, db_dbs_rx, blks2
from gnuradio import audio
from gnuradio.eng_option import eng_option
from optparse import OptionParser
from gnuradio.blks2impl import gmsk
from usrpm import usrp_dbid
import sys
# constant
gsm_rate = 1625000.0 / 6.0
# script constant
decim = 112
gain = 10
# bts channel
c0 = 900.4e6
class my_top_block(gr.top_block):
def __init__(self):
gr.top_block.__init__(self)
u = usrp.source_c(decim_rate = decim)
s = usrp.pick_subdev(u, (usrp_dbid.TV_RX,
usrp_dbid.TV_RX_REV_2,
usrp_dbid.TV_RX_REV_3,
usrp_dbid.BASIC_RX))
u.set_mux(usrp.determine_rx_mux_value(u, s))
subdev = usrp.selected_subdev(u, s)
if subdev.dbid() is None:
raise Exception('dbs daughterboard yyy not detected!')
subdev.set_gain(gain)
sps = u.adc_freq() / u.decim_rate()
if sps < 2 * gsm_rate:
raise Exception('sample rate too low')
u.tune(0, subdev, c0 )
xcf = 150e3
xtw = 50e3
xt = gr.firdes.low_pass(1.0, sps, xcf, xtw,
gr.firdes.WIN_HAMMING)
xf = gr.fir_filter_ccf(1, xt)
gd = gmsk.gmsk_demod(self, sps / gsm_rate, gain_mu = 0.01,
omega_relative_limit = 0.05)
g = gr.file_sink(gr.sizeof_gr_complex,data)
self.connect(u, xf, gd,g)
if __name__ == '__main__':
try:
my_top_block().run()
except KeyboardInterrupt:
pass
#####################################################
I will be very grateful if anyone can give me some advice to solve these problems.
Thanks.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Discuss-gnuradio] GMSK demod,
M. Awais Arshad <=