The conversion of all the example code and blks code on the trunk to the new 3.1 flow graph code is nearly complete.
This is being done in the jcorgan/t162 developer branch if you want to take a look. Once this is merged into the trunk, you'll be able to restore GRC functionality. Sent via BlackBerry by AT&T -----Original Message----- From: Josh Blum <[EMAIL PROTECTED]> Date: Fri, 14 Sep 2007 20:34:40 To:Dev Ramudit <[EMAIL PROTECTED]> Cc:discuss-gnuradio@gnu.org Subject: Re: [Discuss-gnuradio] OFDM GRC block attempt In short, the GRC code for the packet modulator was no good after the "incompatible trunk check in". So, I just deleted the packet mod/demod code in GRC. To restore the functionality of the packet mod/demod (in grc), i would have to cannibalize the current blks.pkt code. I will be glad to do this, especially if someone is using the blocks. The only thing about the packet mod/demod blocks is that they are implemented poorly. For example, to implement a packet modulation block, you have to sample the gnuradio stream with a message sink and a thread, the error coding/packetizing is done in python with packet utils, and then the data is pushed back into the gnuradio stream with a message source. Not too efficient. Any suggestions before I go ahead with the message source/sink idea? Anyway, it would be great to get ofdm working with GRC. -Josh Dev Ramudit wrote: > Hello all, > > I'm trying to write an OFDM mod/demod for the gnuradio companion and > I'm running into a problem. I'm following the (now deprecated?) packet > modulator code that was in GRC very closely. I have an OFDMDemod block > which creates the following class when its used: > > --- > > class OFDMDemodHelper(gr.hier_block2): > """Forward data from ofdm demod to the gr data stream.""" > def __init__(self, item_size, options): > #create hier block > gr.hier_block2.__init__( > self, 'ofdm_demod', > gr.io_signature(1, 1, Complex().get_num_bytes()), > gr.io_signature(1, 1, item_size) > ) > #the message source (handles the output data stream) > msg_source = gr.message_source(item_size, DEFAULT_QUEUE_LIMIT) > msgq = msg_source.msgq() > def callback(ok, payload): > if ok: msgq.insert_tail(gr.message_from_string(payload, > 0, item_size, > len(payload)/item_size)) > ofdm_demod = blks.ofdm_demod( > fg=self, > options=options, > callback=callback, > ) > #connections > self.connect(msg_source, self) > self.connect(self, ofdm_demod.head) > > --- > > This is basically the same as the old packet demod code, with a few > small changes for OFDM. Unfortunately, I get the following error: > > --- > > File "/home/dramudit/work/gnuradio/grc/src/SignalBlockDefs/Packet.py", > line 337, in __init__ > callback=callback, > File > "/usr/local/lib/python2.4/site-packages/gnuradio/blksimpl/ofdm.py", line > 218, in __init__ > options.log) > File > "/usr/local/lib/python2.4/site-packages/gnuradio/blksimpl/ofdm_receiver.py", > line 56, in __init__ > self.fg.connect(self.chan_filt, self.ofdm_sync) > File > "/usr/local/lib/python2.4/site-packages/gnuradio/gr/hier_block2.py", > line 46, in connect > self._connect(points[i-1], points[i]) > File > "/usr/local/lib/python2.4/site-packages/gnuradio/gr/hier_block2.py", > line 50, in _connect > (dst_block, dst_port) = self._coerce_endpoint(dst) > File > "/usr/local/lib/python2.4/site-packages/gnuradio/gr/hier_block2.py", > line 61, in _coerce_endpoint > raise ValueError("unable to coerce endpoint") > ValueError: unable to coerce endpoint > > --- > > Any suggestions as far as fixing this error, or another approach? > > Thanks, > Dev > > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > http://lists.gnu.org/mailman/listinfo/discuss-gnuradio > _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio