discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Multiple Inputs in Tagged Stream Block


From: Jingyi Sun
Subject: Re: [Discuss-gnuradio] Multiple Inputs in Tagged Stream Block
Date: Sat, 23 Apr 2016 15:36:56 -0400

Hi Martin and everyone,

I've pinpointed what causes this error to occur with 3 inputs, but not occur with just 1 input. 
gr::log :FATAL: geese_vcvc0 - Missing a required length tag on port 1 at item #0
thread[thread-per-block[46]: <block geese_vcvc (1)>]: Missing length tag.

The culprit seems to be the following block of code inside my geese_vcvc_impl.cc file. I have it in my code right now because I based my block on ofdm_frame_equalizer.cc.  I gather that it parses length of tags, and but seems to only do so for one input?  Unfortunately I am unsure how to exactly interpret what it is doing.

Martin, I notice you've worked on the ofdm_frame_equalizer block before--could you please help me go through what this piece of code does, and how I could change it to be compatible with a block with multiple inputs.  I'm not thoroughly familiar with c++, and also am not sure about the particular purposes of variables here, or what the specific characteristics of "tags" vector are.

My goal is to do something similar to add two equalized input tagged streams together, and output the sum tagged stream, while also propagating tags through for tag debug.

I would tremendously appreciate if you could briefly walk me through the following lines. Is this code necessary for tag propagation, or can I do without it? I don't get the error if this code is commented out.



On Fri, Apr 22, 2016 at 12:15 PM, Jingyi Sun <address@hidden> wrote:
Hi Martin, Andrej and everyone,

Revision on my last email: I found out why my out-of-tree copy of tagged_stream_mux wasn't working and fixed the problem--it was a bug with having the wrong variable name input in the blockt after everything was built.  My copy now works like the original tagged_stream_mux does!

So I will work on slowly modifying this copy of tagged_stream_mux to look like what I want until something breaks, and then update you guys on that. Hopefully that will help!

Thanks again for all your help!!

Best,
Jenny

On Thu, Apr 21, 2016 at 2:37 PM, Jingyi Sun <address@hidden> wrote:
Hi Martin,

I did more tests, including trying to recreate tagged_stream_mux as an out-of-tree block. My block is called mux, but everything else (.cc, .c, .xml), are exactly the same. I copied and pasted everything from github, minus the name.

It gives me the same error. 

I suspect the source code that my installed binary version of GNU Radio is based on is different from the one used to originally create tagged_stream_mux block that comes with GNU Radio.

Do you know if there is a specific person I can contact who would know about tagged_stream_block source code? Or do you think there's something else I haven't thought of.

I'm not sure what else I can try right now, and would be willing to try anything you (or anyone else) might have to suggest.

Thanks,
Jenny


On Thu, Apr 21, 2016 at 2:02 PM, Martin Braun <address@hidden> wrote:
On 04/20/2016 04:48 PM, Jingyi Sun wrote:
> tagged_stream_mux works when substituted for my block, so I think all of
> my inputs are tagged streams. Also, my inputs are coming from the
> outputs of OFDM_frame_equalizer, which I think propagates tagged streams?

Yes.

M

> I think it's an error somewhere in the code, but the changes I mentioned
> are the only changes I made between the block working and the block not
> working.
>
> My code is based on OFDM_frame_equalizer, but without the actual signal
> processing part. I will fill in my own signal processing after I know I
> can at least pass one out of three inputs along so that the outputs are
> the same as if this new block were bypassed.
>
>
>
>
> On Wed, Apr 20, 2016 at 6:24 PM, Martin Braun <address@hidden
> <mailto:address@hidden>> wrote:
>
>     The tagged_stream_mux is an example of this kind of block. As Andrej
>     points out, you need to make sure every input signal is actually a
>     tagged stream.
>
>     Cheers,
>     M
>
>     On 04/20/2016 03:12 PM, Andrej Rode wrote:
>     > Hello Jenny,
>     >
>     > I can try to help you, but I'm not quite sure if I am right. If I
>     am wrong I
>     > will be corrected soon.
>     >
>     >>>> Generating: "/home/jenny/Tutorials/rx_ofdm.py"
>     >>>> Executing: "/home/jenny/Tutorials/rx_ofdm.py"
>     >>>> Using Volk machine: sse4_2_64_orc
>     >>>> gr::log :FATAL: geese_vcvc0 - Missing a required length tag on
>     port 1 at
>     >>>> item #0
>     >>>> thread[thread-per-block[46]: <block geese_vcvc (1)>]: Missing
>     length tag.
>     >
>     > This error tells you that your block is missing a length tag in
>     one of his
>     > inputs. A Stream Tag on the first sample is a requirement for a
>     tagged stream
>     > block. This Stream Tag has to provide information about how much
>     input data
>     > your block has to process.
>     > I assume you don't have an tagged stream on each of your inputs
>     and this
>     > causes a problem for your tagged stream block.
>     >
>     > Best you provide a screenshot of your example flowgraph (the
>     relevant parts).
>     > Based on the error it is nothing inside of your block but the way
>     you are
>     > trying to feed it with samples.
>     >
>     > Best Regards,
>     > Andrej
>     >
>     >
>     >
>     > _______________________________________________
>     > Discuss-gnuradio mailing list
>     > address@hidden <mailto:address@hidden>
>     > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >
>
>
>
>     _______________________________________________
>     Discuss-gnuradio mailing list
>     address@hidden <mailto:address@hidden>
>     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>


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




reply via email to

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