[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] [BULK] Fading channel in GNURadio

From: Sean Nowlan
Subject: Re: [Discuss-gnuradio] [BULK] Fading channel in GNURadio
Date: Thu, 21 Mar 2013 15:54:48 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130308 Thunderbird/17.0.4

On 03/21/2013 03:45 PM, Manu T S wrote:
I'm trying to make a block for fading channel model using hierarchical block.

class channel(gr.hier_block2):
    def __init__(self):
        gr.hier_block2.__init__(self, "channel",
                gr.io_signature(1, 1, gr.sizeof_float),
                gr.io_signature(1, 1, gr.sizeof_gr_complex))

        self.taps = generate_taps()
        self.filt = filter.fir_filter_ccc(1, self.taps)
        self.connect(self, self.filt, self)

    def generate_taps():
        n_taps = random.randint(1, 10)
        r_taps = random.rand(n_taps)
        i_taps = random.rand(n_taps)
        return r_taps + 1j*i_taps

I want the block to be able to update the channel filter taps in run time. Can I do that?
Can I define a function in the class so that the filter taps are updated for every 5 seconds?

The set_taps function gives you access to this from the top_block level. In that case, your main thread would be updating the block's taps using a while loop with sleep(5). You could also make a block class that inherits from fir_filter_ccc or channel_model and change the taps within the work function every N seconds: every time (ninput_items / samp_rate) % N == 0. I hope that's enough info to point you in the right direction.
Thank you.

Manu T S

Discuss-gnuradio mailing list


Sean M. Nowlan
Research Engineer I
Georgia Tech Research Institute
250 14th St NW, Suite 470
Atlanta, GA 30318


reply via email to

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