discuss-gnuradio
[Top][All Lists]
Advanced

[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.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]