[Discuss-gnuradio] Layer Mapper in GnuRadio

2013-04-28 Thread omar nadim
Hello

I'm supposed to create a block in GnuRadio that has 1 input and 2 or 4
outputs , it's actually a Layer mapper in MIMO processing of LTE.

I have written the constructor :

Layer_Mapper_Transmit_Diversity_cc_impl::Layer_Mapper_Transmit_Diversity_cc_impl(int
numLay,int constNum)
  : gr_block("Layer_Mapper_Transmit_Diversity_cc",
  gr_make_io_signature(1, 1, sizeof
(float)*16/(constNum)),
  gr_make_io_signature(2, 4, sizeof
(float)*16/(constNum*numLay)))
{
NumLay=numLay;   //Number of Layers
M=constNum;   //Constellation Cardinality
}


and the Forecast Function:

void
Layer_Mapper_Transmit_Diversity_cc_impl::forecast (int noutput_items,
gr_vector_int &ninput_items_required)
{
ninput_items_required[0] = NumLay * noutput_items;
}


In The General Work Function I wanted to create 4 outputs this way:

int
Layer_Mapper_Transmit_Diversity_cc_impl::general_work (int
noutput_items,
   gr_vector_int &ninput_items,
   gr_vector_const_void_star &input_items,
   gr_vector_void_star &output_items)
{
const float **in = (const float **) input_items[0];
float **out0 = (float **) output_items[0];
float **out1 = (float **) output_items[1];
float **out2 = (float **) output_items[2];
float **out3 = (float **) output_items[3];

Because the inputs and outputs are arrays so I declared them as matrices ,
does GnuRadio accept this ?
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] GSOC ideas [802.11]

2013-04-28 Thread Tom Rondeau
On Thu, Apr 25, 2013 at 11:15 AM, Martin Braun (CEL)
 wrote:
> On Thu, Apr 25, 2013 at 04:38:19PM +0200, 2_...@libero.it wrote:
>> Hi guys,
>> I've a question(maybe this is spam): I'm thinking about my proposal,where I
>
> As long as you don't want an investment of 100 from us, it's
> probably not spam :)
>
>> want move some part on cuda( in this way,you can also see/verify the 
>> difference
>> in term of performance). Is cuda okay for you, or do you prefer openCL?
>
> I'm not sure you will be able to do either for this project. Have you
> checked the mailing list archives? Getting GPU-based processing into a
> GNU Radio flowgraph is quite hard, given the structure of the
> scheduler. Also, which elements are you hoping to accelerate?
>
> To answer your question, the more portable, the better, so my gut says
> OpenCL > CUDA.
>
> MB

There is the gr-gpu project (it's a CGRAN project) that is based on
using CUDA for the development of the signal processing blocks.
Mostly, this was done because OpenCL was too new at the time and was
not really usable for this purpose. On the other hand, CUDA is
incompatible with GNU Radio's license, so while it's fine to have
gr-gpu use CUDA and GNU Radio, it's not a solution we can integrate.
If OpenCL can now solve the problem, I would suggest/support using
that.

And, an aside on co-processor projects like gr-gpu. My opinion on this
is that we wouldn't carry gr_block's that are written for
co-processors in GNU Radio, anyways. So the license doesn't matter so
much for that. What we will hopefully be able to do is support the
interface between GNU Radio and the co-processor, but that for a given
co-processor, someone would have an external project that defines
blocks for use with that (like a CUDA-gpu, OpenCL-gpu, etc., etc.).
This is a developing concept, so we'll be figuring it out as more of
these projects exist.

Tom

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


Re: [Discuss-gnuradio] Barker Code GNadio

2013-04-28 Thread Tom Rondeau
On Wed, Apr 24, 2013 at 11:47 PM, Jumail Soba  wrote:
> Dear friends,
>
> We want to generate 13 bit barker code on gnuradio companion software. Can
> you help me how to generate this radar signal, together with the block
> diagram and the setting parameter for the block diagram.
>
> For any help and information we are very thank you.
>
> Regards.

Jumail,

You'll probably want to write your own block for this. Look at the
glfsr_source or the lfsr_32k_source_s blocks as a starting point.

Tom

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


Re: [Discuss-gnuradio] Polyphase clock sync ccf symbols needed ?

2013-04-28 Thread Tom Rondeau
On Mon, Apr 15, 2013 at 12:25 AM, Sam mite  wrote:
>
>
>
>> > Hi list,
>> >
>> > I want to calculate the number of symbols taken by my Polyphase clock
>> > sync
>> > ccf block after which it locks. Although I am getting 0 BER (except at
>> > start) but I want to know after how many symbols loop get lock. And then
>> > by
>> > varying different parameters I want to observe the lock time/symbols
>> > needed.
>> > From which plot I can get this information and how? . Current parameters
>> > set
>> > are:
>> >
>> > Sample/symbpol= 4
>> > Loop BW= pi/100
>> > damp factor= 0.707
>> > filter size = 32
>> > output sps = 1
>> > max rate dev = 1.5
>> > initial_phase=16
>> >
>> > Phase plot is showing some sinusoidal output. Attached are the two phase
>> > plots. phase2.jpg is zoomed in version of phase1.jpg.
>> >
>> > Thanks ahead of time.
>> >
>> >
>> > --
>> > Best Regards,
>> >
>> > Sam
>>
>> Sam,
>>
>> Yes, the phase output port of the sync block is the one you want to
>> look at. The phase rounded to the nearest integer (unless it's the
>> floor) is the number of the filterbank being used at that time, which
>> represents the phase offset of the signal.
>>
>> Are you tracking a real signal being received or a simulated signal?
>> You're going to see some movement, plus or minus, around the closest
>> phase, though. If its a real signal being received, there's going to
>> be some small jitter in the timing between the two radios that the
>> algorithm is trying to track. Also noise will affect if somewhat as it
>> tries to keep a lock. The fact that it looks like it's actually
>> oscillating is interesting. Have you tried to reduce the loop
>> bandwidth to see how that affects things?
>>
>> Tom
>>
>
> Thanks Tom,
>
> Currently, I am tracking a simulated signal (although I am getting zero BER
> through USRPs as well). There is currently no additive noise. Reducing loop
> bandwidth by a factor of 4 gives nice plots, as tracking become good by
> reducing noise bandwidth. But, steady state value of 24 reaches after
> approximately 9000samlples. That means my loop is taking 9000/4 symbols to
> get lock? And after that it 'll produce desired output.  Am i doing
> something wrong? Something I am missing?
>
> Attached are the snapshots of new phase plots.
>
> --
>
> Best Regards,
>
> Sam


Sam,

No, I don't think that you are doing something wrong here. But those
figures you've posted look like the circuit is under-damped. It should
be critically damped, so it'd be interesting to see what's going wrong
inside of the algorithm. I've looked at it with this in mind, but I
can't see that anything is being done differently than the normal
control loops that we use, and the parameters should be set to be
critically damped.

This sounds like something we can develop and discuss on the signal
processing wiki page. Would you be able to start something here?
There's already a section for Synchronization. Maybe just create a new
page off that for discussing this particular algorithm/block.

(for signing up to post on the wiki:
http://gnuradio.org/redmine/projects/gnuradio/wiki/FAQ#How-can-I-post-on-this-wiki-use-the-bug-tracker)

Thanks!
Tom

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


Re: [Discuss-gnuradio] S/N ratio vs BER reference?

2013-04-28 Thread Martin Braun (CEL)
On Fri, Apr 26, 2013 at 04:36:36PM -0400, Gregory Warnes wrote:
> Hi All,
> 
> I'm playing around with digital modulation techniques in GnuRadio and
> would like to get a sense of how successful my efforts are in terms of
> BER vs. S/N ratio.
> 
> Can someone suggest a reference that provides BER vs S/N ratio curves
> for some of the common encoding approaches?

Hi Gregory,

not sure if this is what you want, but have you checked
gr-digital/examples/berawgn.py?

Also, perhaps you want to read
http://gnuradio.org/redmine/projects/gnuradio/wiki/Simulations

Cheerio,
MB

-- 
Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin Braun
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071
www.cel.kit.edu

KIT -- University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association


pgpvnxbh4eRH1.pgp
Description: PGP signature
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] FM Stereo decoder, frequency doubler, IIR issues

2013-04-28 Thread Tom Rondeau
On Wed, Apr 24, 2013 at 8:56 AM, Chuck Ritola  wrote:
> Hi list,
>
> I just got started with GNU Radio Companion for use with my FCDPP and it's
> been great, already am decoding FM stereo and it sounds very good. However
> it probably isn't the most optimal way to do it:

There are FM receivers/demod blocks already that you can play and
experiment with. In 3.6, they are located in
gnuradio-core/src/python/gnuradio/blks2impl, look for wfm_rcv blocks.

Obviously, though, nothing stopping you from building and
experimenting on your own.

> My filters are the inbuilt bandpass - they're a bit hard on the CPU and was
> hoping to use the IIR filters as biquads instead but I can't seem to get
> them to work. Filter was designed with this applet (
> http://www.earlevel.com/main/2010/12/20/biquad-calculator/ ) and I fed the A
> values into Feed-Forward of the IIR and B values to the Feed-Backward and it
> would not pass signal so I swapped A and B values and it apparently just
> passed the signal unaffected. Any ideas what I'm doing wrong?

I think this has already been addressed in another email thread, but
try negating the A vector. And try using the gr_filter_design tool.

> What is the internal resolution for the IIRs? I am asking because some of my
> filter Q's are in the 10-60 range and am concerned about blowing them up.

The taps are passed in as double-precision floating point.

> Also, what would be the most efficient way (in GNU Radio) to get the
> absolute value of a signal? The best I've come up with so far was a
> Float->Complex feeding a Complex->Magnitude.

Well, you could always write a block to do that yourself. There's also
the blocks::transcendental block that you can use. Should be able to
pass it "fabsf" and "float" as the arguments.

> Thanks!
>
> Chuck

Tom

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


Re: [Discuss-gnuradio] RFID at 2.4GHz simulation-Encoding, Modulation techniques (grc implementation)

2013-04-28 Thread Tom Rondeau
On Sat, Apr 27, 2013 at 4:31 AM, stefosee  wrote:
> Hi everyone,
> i'm an undergraduate student of ee and currently i'm working on my thesis
> which is related to an RFID standard simulation in GNURadio.
>
> I don't have a USRP device yet, so i'm just working on the grc tool with
> default signal sources.
>
> As i figured out, there are already some pre-installed blocks for bpsk or
> gmsk simulation methods that i need in my thesis.
> Although, i also need ASK simulation.
> I implemented it with a square and cosine source multiplication and i think
> it works properly. What should i take care of?
>
> Also, i have to implement manchester and fm0 encoding. I started the
> implementation by creating an edge detecting circuit. Before carrying on,
> i'd like to ask you if i'm on the right path (i mean creating boolean,
> mathematical functions between sources and constant numbers) or i have to
> change the way of thinking.
> Finally, is it necessary to use code for any of this techniques i mentioned
> above, or it is possible to manage it just with grc blocks?
>
> Thank you in advance.

Those are all very vague questions. I think you're going to have to
get a good start on things yourself, first, then come back with any
specific questions you have.

Tom

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


Re: [Discuss-gnuradio] How to diagnose make test failures

2013-04-28 Thread Tom Rondeau
On Sun, Apr 21, 2013 at 6:26 PM, Barry Jackson  wrote:
> On 21/04/13 22:42, Stamper, Brian wrote:
>>
>> Some additional information..
>>
>>> When I run make test I get the following failures:
>>>
>>>
>>> 22/192 Test #22: qa_fft_filter ***Failed 1.05 sec
>>> 85/192 Test #85: test_gr_filter ...***Failed 0.27 sec
>>> 91/192 Test #91: qa_fft_filter ***Failed 1.11 sec
>>> 92/192 Test #92: qa_hilbert ...***Failed 1.09 sec
>>> 93/192 Test #93: qa_filter_delay_fc ...***Failed 1.10 sec
>>> 94/192 Test #94: qa_pfb_arb_resampler .***Failed 1.13 sec
>>> 95/192 Test #95: qa_rational_resampler ***Failed 1.23 sec
>>> 97/192 Test #97: qa_fir_filter ***Failed 1.23 sec
>>> 114/192 Test #114: qa_ctcss_squelch .***Failed 1.21 sec
>>
>>
>>> My question is how should I go about diagnosing the problems?
>
>
>
> I am seeing similar errors with tests, but only when building on an i586
> system, these (except for #1) don't appear in x86_64.
> The following tests FAILED:
>   1 - qa_volk_test_all (Failed) #1 Can't find
> libvolk.so.0.0.0
>  52 - qa_fft_filter (Failed)#52 Segmentation
> fault
>  84 - test_gr_filter (Failed)   #84 Segmentation
> fault
>  86 - qa_fractional_interpolator (Failed)   #16 Pass #86
> Segmentation fault
>  87 - qa_pfb_decimator (Failed) #87 Segmentation
> fault
>  93 - qa_fft_filter (Failed)#93 Segmentation
> fault
>  96 - qa_adaptive_fir_filter (Failed)   #96 Segmentation
> fault
>  97 - qa_channel_model (Failed) #97 Segmentation
> fault
>  98 - qa_freq_xlating_fir_filter (Failed)   #98 Assertion Errors
>  99 - qa_pfb_synthesizer (Failed)   #99 Segmentation
> fault
> 100 - qa_pfb_channelizer (Failed)   #100 Segmentation
> fault
> 102 - qa_fir_filter (Failed)#102 Segmentation
> fault
> 103 - qa_pfb_interpolator (Failed)  #103 Segmentation
> fault
> 104 - qa_pfb_arb_resampler (Failed) #104 Segmentation
> fault
> 156 - qa_qtgui (Failed) #156 Passes when not
> run from script
> Errors while running CTest
>
> Output of all failing tests with ctest -V -R is attached.
>
> I too would like to know how to resolve these failures.


That's very concerning about not finding libvolk.so. Make sure you
have, in the build directory, volk/lib/libvolk.so.0.0.0. If that's not
there, volk didn't build properly, which is necessary for the rest of
the QA tests that are failing.

Tom

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


[Discuss-gnuradio] Nothing known about namespace 'pmt'

2013-04-28 Thread Alex Dusowitz
Hi,

I am trying to install the gr-ieee802-11 project from CGRAN on top of my
gnuradio-3.6.4.1 installation and keep getting the following error during
'make':

...
Scanning dependencies of target _ieee802_11_swig_swig_tag
[ 38%] Building CXX object
swig/CMakeFiles/_ieee802_11_swig_swig_tag.dir/_ieee802_11_swig_swig_tag.cpp.o
Linking CXX executable _ieee802_11_swig_swig_tag
[ 38%] Built target _ieee802_11_swig_swig_tag
[ 42%] Generating doxygen xml for ieee802_11_swig_doc docs
[ 47%] Generating ieee802_11_swig_doc.i
[ 52%] Generating ieee802_11_swig.tag
[ 57%] Swig source
/usr/local/include/gnuradio/swig/gr_basic_block.i:27: Error: Nothing known
about namespace 'pmt'
make[2]: *** [swig/ieee802_11_swigPYTHON_wrap.cxx] Error 1
make[1]: *** [swig/CMakeFiles/_ieee802_11_swig.dir/all] Error 2
make: *** [all] Error 2


Also all the required libs seem to be found during cmake including GRUEL
and "/usr/local/include/gruel/swig/pmt_swig.i", where namespace 'pmt' is
defined, exists.
Also the package was installed on an identical machine with Ubuntu 12.04
just fine!

I noticed this issue was raised some time before in the thread below for
gr-osmosdr installation, but no solution was given at the end:

http://lists.gnu.org/archive/html/discuss-gnuradio/2013-02/msg00306.html

Any thoughts?

Thanks,
Alex
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] GNU Radio portable 3.6.4.1 released

2013-04-28 Thread Morning Star
Hi,

Here is a build of GNU Radio, for 32-bit and 64-bit Windows, that should
not require Administrator privileges, apart from the installation of USB
drivers, Python dependencies and Visual C++ 2010 runtime. It can be
downloaded from
https://drive.google.com/folderview?id=0B6epa28Yi91sRUYzdVJJNkRLTEU&usp=sharing

This is not an official GNU Radio distribution, I'm only sharing it in the
hope that it will be useful to others. The installation guide also includes
the steps to recompile GNU Radio / UHD, as well as other optional
components (rtl-sdr, gr-osmosdr, grextras, itpp). There is no guarantee
that this build works correctly, so please be sure to report any
error/misbehaviour that you encounter.

Thanks,

Morning Star
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] New OFDM blocks

2013-04-28 Thread Sean Nowlan
If I'm reading ofdm_carrier_allocator_cvc_impl.cc right, it appears that 
the user must make sure that the occupied carrier indexes and pilot 
tones don't refer to the same positions with OFDM symbols, otherwise the 
occupied data carriers will get blown array. Is this correct?


--sean

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


Re: [Discuss-gnuradio] Layer Mapper in GnuRadio

2013-04-28 Thread Josh Blum

> In The General Work Function I wanted to create 4 outputs this way:
> 
> int
> Layer_Mapper_Transmit_Diversity_cc_impl::general_work (int
> noutput_items,
>gr_vector_int &ninput_items,
>gr_vector_const_void_star &input_items,
>gr_vector_void_star &output_items)
> {
> const float **in = (const float **) input_items[0];
> float **out0 = (float **) output_items[0];
> float **out1 = (float **) output_items[1];
> float **out2 = (float **) output_items[2];
> float **out3 = (float **) output_items[3];
> 
> Because the inputs and outputs are arrays so I declared them as matrices ,
> does GnuRadio accept this ?
> 
> 

So input_items[0] or output_items[1] for example, is a pointer to a
linear chunk of memory. Casting it to a float ** might imply that its an
array of pointers which each point to a linear row/column of a matrix.
But that isnt the case, so things will likely segfault.

You could cast the pointer to a C matrix with the double brackets and
the fixed widths like a [64][4] for example, I think C will map those
double bracketed access nicely to a linear chunk of memory.

I hope that helps!
-josh

> 
> ___
> 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] Is there any PN cross correlator implementation for packet detection in Gnuradio?

2013-04-28 Thread Yingjie Chen
Hi guys,

I noticed that Gnuradio uses schmidl PN correlator for packet detection by
defalt, where the 1st copy autocorrelate with 2nd copy in one preamble.

I wonder if any PN cross correlator is implemented, which means the
received signal is cross correlated with known preamble stored locally.
Thank you so much.

Best,
Kay
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio