<?xml version='1.0' encoding='utf-8'?>
<?grc format='1' created='3.7.10'?>
<flow_graph>
<timestamp>Wed Mar 16 15:35:51 2016</timestamp>
<block>
<key>options</key>
<param>
<key>author</key>
<value></value>
</param>
<param>
<key>window_size</key>
<value></value>
</param>
<param>
<key>category</key>
<value>Custom</value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>description</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(8, 8)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>generate_options</key>
<value>qt_gui</value>
</param>
<param>
<key>hier_block_src_path</key>
<value>.:</value>
</param>
<param>
<key>id</key>
<value>top_block</value>
</param>
<param>
<key>max_nouts</key>
<value>0</value>
</param>
<param>
<key>qt_qss_theme</key>
<value></value>
</param>
<param>
<key>realtime_scheduling</key>
<value></value>
</param>
<param>
<key>run_command</key>
<value>{python} -u {filename}</value>
</param>
<param>
<key>run_options</key>
<value>prompt</value>
</param>
<param>
<key>run</key>
<value>True</value>
</param>
<param>
<key>thread_safe_setters</key>
<value></value>
</param>
<param>
<key>title</key>
<value></value>
</param>
</block>
<block>
<key>variable</key>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(528, 11)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>center_freq</value>
</param>
<param>
<key>value</key>
<value>2.4e9</value>
</param>
</block>
<block>
<key>variable</key>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(384, 11)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>const</value>
</param>
<param>
<key>value</key>
<value>2</value>
</param>
</block>
<block>
<key>variable</key>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(448, 11)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>preamble</value>
</param>
<param>
<key>value</key>
<value>'11101'</value>
</param>
</block>
<block>
<key>variable</key>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(168, 11)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>samp_rate</value>
</param>
<param>
<key>value</key>
<value>1e6</value>
</param>
</block>
<block>
<key>variable</key>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(320, 11)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>sps</value>
</param>
<param>
<key>value</key>
<value>4</value>
</param>
</block>
<block>
<key>blks2_packet_encoder</key>
<param>
<key>access_code</key>
<value></value>
</param>
<param>
<key>bits_per_symbol</key>
<value>1</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>1</value>
</param>
<param>
<key>_coordinate</key>
<value>(512, 187)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>blks2_packet_encoder_0_0</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>pad_for_usrp</key>
<value>False</value>
</param>
<param>
<key>payload_length</key>
<value>0</value>
</param>
<param>
<key>preamble</key>
<value></value>
</param>
<param>
<key>samples_per_symbol</key>
<value>4</value>
</param>
</block>
<block>
<key>blocks_file_sink</key>
<param>
<key>append</key>
<value>False</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>file</key>
<value></value>
</param>
<param>
<key>_coordinate</key>
<value>(512, 323)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>blocks_file_sink_0</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>unbuffered</key>
<value>False</value>
</param>
<param>
<key>vlen</key>
<value>1</value>
</param>
</block>
<block>
<key>blocks_head</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>2</value>
</param>
<param>
<key>_coordinate</key>
<value>(176, 227)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>blocks_head_0</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>num_items</key>
<value>1024*4-1</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>vlen</key>
<value>1</value>
</param>
</block>
<block>
<key>blocks_throttle</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>1</value>
</param>
<param>
<key>_coordinate</key>
<value>(680, 227)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>blocks_throttle_0</value>
</param>
<param>
<key>ignoretag</key>
<value>True</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>samples_per_second</key>
<value>samp_rate</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>vlen</key>
<value>1</value>
</param>
</block>
<block>
<key>blocks_throttle</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>2</value>
</param>
<param>
<key>_coordinate</key>
<value>(344, 227)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>blocks_throttle_0_0</value>
</param>
<param>
<key>ignoretag</key>
<value>True</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>samples_per_second</key>
<value>samp_rate</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>vlen</key>
<value>1</value>
</param>
</block>
<block>
<key>blocks_vector_source_x</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(24, 211)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>blocks_vector_source_x_0</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>repeat</key>
<value>True</value>
</param>
<param>
<key>tags</key>
<value>[]</value>
</param>
<param>
<key>vlen</key>
<value>1</value>
</param>
<param>
<key>vector</key>
<value>(0, 1,0)</value>
</param>
</block>
<block>
<key>qtgui_number_sink</key>
<param>
<key>autoscale</key>
<value>False</value>
</param>
<param>
<key>avg</key>
<value>0</value>
</param>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(832, 211)</value>
</param>
<param>
<key>gui_hint</key>
<value></value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>graph_type</key>
<value>qtgui.NUM_GRAPH_HORIZ</value>
</param>
<param>
<key>id</key>
<value>qtgui_number_sink_0</value>
</param>
<param>
<key>type</key>
<value>byte</value>
</param>
<param>
<key>color1</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor1</key>
<value>1</value>
</param>
<param>
<key>label1</key>
<value></value>
</param>
<param>
<key>unit1</key>
<value></value>
</param>
<param>
<key>color10</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor10</key>
<value>1</value>
</param>
<param>
<key>label10</key>
<value></value>
</param>
<param>
<key>unit10</key>
<value></value>
</param>
<param>
<key>color2</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor2</key>
<value>1</value>
</param>
<param>
<key>label2</key>
<value></value>
</param>
<param>
<key>unit2</key>
<value></value>
</param>
<param>
<key>color3</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor3</key>
<value>1</value>
</param>
<param>
<key>label3</key>
<value></value>
</param>
<param>
<key>unit3</key>
<value></value>
</param>
<param>
<key>color4</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor4</key>
<value>1</value>
</param>
<param>
<key>label4</key>
<value></value>
</param>
<param>
<key>unit4</key>
<value></value>
</param>
<param>
<key>color5</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor5</key>
<value>1</value>
</param>
<param>
<key>label5</key>
<value></value>
</param>
<param>
<key>unit5</key>
<value></value>
</param>
<param>
<key>color6</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor6</key>
<value>1</value>
</param>
<param>
<key>label6</key>
<value></value>
</param>
<param>
<key>unit6</key>
<value></value>
</param>
<param>
<key>color7</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor7</key>
<value>1</value>
</param>
<param>
<key>label7</key>
<value></value>
</param>
<param>
<key>unit7</key>
<value></value>
</param>
<param>
<key>color8</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor8</key>
<value>1</value>
</param>
<param>
<key>label8</key>
<value></value>
</param>
<param>
<key>unit8</key>
<value></value>
</param>
<param>
<key>color9</key>
<value>("black", "black")</value>
</param>
<param>
<key>factor9</key>
<value>1</value>
</param>
<param>
<key>label9</key>
<value></value>
</param>
<param>
<key>unit9</key>
<value></value>
</param>
<param>
<key>max</key>
<value>1</value>
</param>
<param>
<key>min</key>
<value>-1</value>
</param>
<param>
<key>name</key>
<value>""</value>
</param>
<param>
<key>nconnections</key>
<value>1</value>
</param>
<param>
<key>update_time</key>
<value>0.10</value>
</param>
</block>
<connection>
<source_block_id>blks2_packet_encoder_0_0</source_block_id>
<sink_block_id>blocks_throttle_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_head_0</source_block_id>
<sink_block_id>blocks_throttle_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_throttle_0</source_block_id>
<sink_block_id>qtgui_number_sink_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_throttle_0_0</source_block_id>
<sink_block_id>blks2_packet_encoder_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_throttle_0_0</source_block_id>
<sink_block_id>blocks_file_sink_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>blocks_vector_source_x_0</source_block_id>
<sink_block_id>blocks_head_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
</flow_graph>
As an attachment I send the .grc on which I'm doing tests.
So:
- with head and/or throttle between source and packet encoder -> fine
- bypassing Head and Throttle -> huge file
- bypassing Head, Throttle and Encoder -> fine
I answered your questions below.
Another question: I'm using Packet Encoder only to add a preamble to
perform frame sync. Is it the only way?
On 22-03-2016 21:42, Marcus Müller wrote:
> Hi Miguel,
>
> On 22.03.2016 21:54, Miguel Santos wrote:
>> On 22-03-2016 20:32, Marcus Müller wrote:
>>> Hi Miguel,
>>>
>>> On 22.03.2016 17:14, Miguel Santos wrote:
>>>> Yes, it's set to repeat.
>>> oh!
>>>> My real flow graph ends with a file sink, but
>>>> here, as an example to test which block was the problem, I used a number
>>>> sink just to be able to run it and test it.
>>> But then, how does your flow graph decide it's done?
>> It doesn't. For now, I'm dealing with transmitting and receiving
>> problems, so I don't really care about the message. For testing purposes
>> I'm transmitting an infinite amount of 0s and 1s (the same repeated
>> sequence defined in Vector Source block) and I manually stop the flow
>> graph after a certain amount of time.
> Ah, so there's no "right" amount of samples. It all depends on when you
> decide to manually stop, and on the speed at which samples are processed.
> I'd recommend adding a "head" block somewhere. That will signal "hey,
> we're done" as soon as the specified amount of samples have passed.
Exactly! I tested with the Head block and it behaves as it should. I
think the problem occurs only when vector source is connected directly
to packet encoder.
By the way, why does the file becomes empty if "Num items"<4096? I'm new
to this world and there's a LOT of things I don't understand.
>> The differences between the two
>> cases I presented were noted running the flow graph for, for instance, 5
>> seconds (counted by me). It's not very accurate, I know, but we're
>> talking of a big difference (like a few KB or MB to hundreds of MB or
>> even a few GB), so it's not important.
> So, sorry for asking again, but I really want to be sure: *with* the
> packet_encoder, the file is much much larger than without, right?
>
> Best regards,
> Marcus
Yeah, that's it: WITH
>> Thanks for your time and sorry for not being explicit enough.
> Don't worry! If this is a bug, it's really worth figuring out.
> Also, we're a helpful bunch of people.
>
> Best regards,
> Marcus
>>> Best regards,
>>> Marcus
>>>> I've made more tests and if I switch Throttle with Packet Encoder, it's
>>>> all good. The same happens if I connect File Sink to Throttle (when they
>>>> are switched).
>>>> So maybe the problem is with the position of throttle? After watching
>>>> the tutorials I thought that its position was irrelevant...
>>>>
>>>> On 22-03-2016 08:02, Marcus Müller wrote:
>>>>> Hi Miguel,
>>>>>
>>>>> I assume your Vector Source is not set to "Repeat"? Or how does your
>>>>> Flow graph Terminate?
>>>>> Generally, no block can modify its input buffer; hence, what File Sink
>>>>> "sees" as an input number sequence must be identical (unless we really
>>>>> have a bad memory access bug at hand, which I don't think).
>>>>>
>>>>> Bet regards,
>>>>> Marcus
>>>>>
>>>>> On 22.03.2016 00:39, Miguel Santos wrote:
>>>>>> Hi all!
>>>>>> While I was using the block Packet Encoder I realized that my input file
>>>>>> (saved before that block) becomes a lot bigger.
>>>>>> So I made a simple example to show that problem.
>>>>>>
>>>>>> Vector Source ---> Packet Encoder ---> Throttle ---> Number Sink
>>>>>> ---> File Sink
>>>>>>
>>>>>> Just to make it clear, File Sink is connected to Vector Source, BEFORE
>>>>>> Packet Encoder.
>>>>>> Running the flow graph the same amount of time, I get an input file of
>>>>>> 700~800 MB for this flow graph and ~3MB for the same flow graph with
>>>>>> Packet Encoder bypassed.
>>>>>> Is this a bug? Could it be a larger processing time of that block that's
>>>>>> delaying the data flow? Am I missing something? How can I solve that?
>>>>>> Any help would be nice.
>>>>>>
>>>>>> Thanks for your time,
>>>>>> Miguel
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Discuss-gnuradio mailing list
>>>>>> Discuss-gnuradio@gnu.org
>>>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>>> _______________________________________________
>>>>> Discuss-gnuradio mailing list
>>>>> Discuss-gnuradio@gnu.org
>>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>> _______________________________________________
>>>> Discuss-gnuradio mailing list
>>>> Discuss-gnuradio@gnu.org
>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>> _______________________________________________
>>> Discuss-gnuradio mailing list
>>> Discuss-gnuradio@gnu.org
>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>> _______________________________________________
>> Discuss-gnuradio mailing list
>> Discuss-gnuradio@gnu.org
>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
No comments:
Post a Comment