Hi,
I'm trying to write a module that works almost identical to the
usrp2_source_16sc module, but I'm having trouble with receiving the
samples. It seems my module is never satisfied with the amount of data
I send it, it just keeps polling for data in the background loop. What
I want to do is send a file, run it through a loopback on an external
hardware device, then read it back in on the host. Here is what my
code does:

self.asink = afpga.sink_raw(options.interface)
self.asrc = afpga.source_raw(options.interface)

self.input = gr.file_source(gr.sizeof_int,"in.txt",0) #only send once
self.output = gr.file_sink(gr.sizeof_int,"out.txt")

self.connect (self.input,self.asink)
self.connect (self.asrc, self.output)

#control stuff
tb.start()
raw_input('Press Enter to quit: \n')
tb.stop()
tb.wait()


Pretty simple stuff. I the data loops back correctly and my handler
shows nsamples as correct, but my program never halts or writes the
samples to the file. It actually won't even let me control-c my python
script. The only odd thing to me is that noutput_items for my work
function is 8162. Not sure how this value is set, but to me it should
be the number of samples.

Some output (file gets split up into two frames, one with 371 samples
and the second with 142):
work: noutput items 8162
data handler: len: 1512
rx_samples: want more
work: handled 371 samples

noutput items 8162
data handler: len: 596
rx_samples want more
work:handled 142 samples
poll for more samples forever..........

Any ideas or a description on how the receive system works would be
much appreciated.

version 3.2.2
Ubuntu 9.04

Thanks,
Charles


_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to