[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Discuss-gnuradio] reset streaming vector/block
From: |
Kinal, George V. |
Subject: |
[Discuss-gnuradio] reset streaming vector/block |
Date: |
Wed, 8 Aug 2012 22:28:25 +0000 |
We have an application which uses the uhd.usrp.sink3 block, with
io_type.COMPLEX_FLOAT32. The complex vector is converted from a text-based I-Q
file. It is then sent to the sink with the assignment self._src =
gr.vector_source_c(z, True).
As I understand the documentation, the Boolean True parameter means that USRP
should continually/repeatedly re-transmit the same signal.
Transmission is started using tb.start(), time.sleep(1), and streaming= True
statements.
Transmission (called "streaming") is stopped with tb.stop() , tb.wait(),
tb.set_vector(), and streaming=False statements.
(Note tb=my_top_block(), which is gr.top.block class).
1. Not sure why the time.sleep(1), or the tb.wait() statements are even
necessary.
2. But more importantly, it seems that if we change the parameters which affect
the vector (including the filename used as the source), the tb.set_vector()
statement seems to have no effect on the signal when transmission is resumed.
It appears that once the vector has been sent to the USRP (once), it cannot be
reset except by a complete re-start of the entire program/script. In other
words, tb.stop is really tb.pause .
Is there a better way ? (Note: changing other parameters, such as preamp and
gain, does have the proper effect. I surmise that the stream is buffered in
USRP memory and cannotsimply be over-written. Is that true ?
George Kinal
Lead Engineer
MITRE E531 Signal Processing and Communications Analysis
Phone (703) 983-7585
************************************************
- [Discuss-gnuradio] reset streaming vector/block,
Kinal, George V. <=