Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-28 Thread Marcus Müller
Hi Jeon, this looks like good code; it's an excellent design choice to use a tagged stream block here, where you'd want GNU Radio to make sure you get the whole packet that you need to encode into a single work call. I think it should work; of course, I'm not your computer ;) . With the existing

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-28 Thread Jeon
Dear, Marcus Thank you for your advice. I will test it as soon as possible after fixing another problem in the entire module (not related with RLL.) And will report the result on the discuss-gnuradio. Regards, Jeon. 2015-03-28 21:50 GMT+09:00 Marcus Müller marcus.muel...@ettus.com: Hi Jeon,

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-27 Thread Marcus Müller
Hi Jeon, could you paste the whole C++ file to the gist? Basically, what I suspect is that you're not checking whether get_tags_in_range() produced a tag at all, or/and might have an error in your state machine that stores the current coder. Greetings, Marcus On 03/27/2015 06:23 AM, Jeon wrote:

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-27 Thread Jeon
Dear, Marcus Here's my codes include/rll.h: https://gist.github.com/gsongsong/07e28c797bb65572982b lib/rll_impl.h: https://gist.github.com/gsongsong/615649f628262c44c8cf lib/rll_impl.cc: https://gist.github.com/gsongsong/14e7bdab27216bbe7a17 Please excuses some typos and syntax violation if

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-26 Thread Jeon
After thinking about it for a couple of days, I've decided not to use two separated RLL blocks. Instead, I made a block as below: In work() function: get_tags_in_range(tags, 0, nitems_read(0), nitems_read(0) + ninput_items[0], pmt::mp(rll_coding)); RLL_CODE rll_code =

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-26 Thread Kevin Reid
On Mar 25, 2015, at 2:15, Marcus Müller marcus.muel...@ettus.com wrote: source -+-- custom_block0 --- encoder0 --- add -- +-- custom_block1 --- encoder1 --^ you'd need to implement custom_block in python or C++, that would either pass through items, just like the block does that

[Discuss-gnuradio] Switching flow between two paths.

2015-03-25 Thread Jeon
I will be using either Manchester code or 4B6B (something like 8B10B) coding. Only one of them should be used at a time. What I ama thinking can be drawn like the following: By using a certain variable that indicates it is Manchster or 4B6B, I think the flow works. Do you think this flow makes

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-25 Thread Marcus Müller
Hi Jeon, in principle, your flow graph does make a lot of sense. However, there's one problem: GNU Radio is a series of tubes, so to speak; as you switch the upstream selector, there's still items in the in- and output buffers of the previously selected encoder. Thus, you'd need to switch the

Re: [Discuss-gnuradio] Switching flow between two paths.

2015-03-25 Thread Martin Braun
Maybe the matrix multiplier can be of use here. Try the corresponding example in gr-blocks/examples. M On 25.03.2015 02:15, Marcus Müller wrote: Hi Jeon, in principle, your flow graph does make a lot of sense. However, there's one problem: GNU Radio is a series of tubes, so to speak; as you