Hello everyone.
I’ve posted this problem here before, and the solution didn’t work out
as I
hoped. The thread title didn’t mention my real problem, so here it is
again.
I have various instances of my top block, detector(). It has a parameter
(options) that passes onto it the options for the USRP and block
configurations.
What I’m doing is running the top block for a range of options, stopping
it
whenever it’s done.
Before, this was all that was needed:
options.filename = “xpto”
detector1 = detector(options)
detector1.start()
time.sleep(x)
detector1.stop()
options.filename = “xpto2”
detector1 = detector(options)
detector1.start()
time.sleep(x)
detector1.stop()
And so on. Of course this is in a loop for my parameter range. It worked
on
a previous version of GNURadio (3.7.1 if I recall correctly) and now it
stopped working.
The proposed solution was using detector1.wait() and detector1 = None
after
stopping the flowgraph.
However, I’ve run into some troubles. Everytime I instance the class the
USRP is “started” again, eventually throwing this error:
UHD Warning:
The control endpoint was left in a bad state.
Attempting endpoint re-enumeration…
And in most experiments the file sink doesn’t write anything into the
file
(even though it writes the file itself, so I believe the file pointer
isn’t
the problem). I never had this problem before and I didn’t change
anything
in the python source code itself.
Could it be anything in the top block itself that is causing the
problem,
or is there something I’m doing wrong?
Thanks in advance.