New QTGUI Eye Sink proposal

2020-01-17 Thread Christophe Seguinot

  
  
Hi 

I developed a QTGUI eye sink block for GRC and hope it will be
  interesting for the community. I will soon submit it as a pull
  request. The code was tested on the latest master branch (gnuradio
  3.9) but it may be easily merge in 3.8 (I did 't tested it on
  3.8). 

I really want to congratulate developers for their good quality
  code of GNURadio. Without that I wouldn't have been able to
  develop this eye_sink. 

The eye sink has been written starting from a raw copy of the
  time sink code: 


  all time sink functionalities have been kept except some
unusefull ones such as stemplot and xAxis scaling 
  
  each eye_sink block handles several input streams, 
  
  each single stream eye pattern is plotted on a separate
QwtPlot
  eye length is fixed at 2 symbol time.
  each stream is used to displays all available subset of length
2 symbol time found in the input stream
  this requires that the symbol rate be an integer multiple of
the sample rate.
  
  triggering is identical as time_sink

Il must be noticed that a real eye diagram would be triggered
  with  a (recovered) symbol clock. For these reasons, triggering of
  noisy and/or unsynchronized (receiver) signals is tricky and may
  lead to incorrect eye pattern
Regards, Christophe 







  




Re: New QTGUI Eye Sink proposal

2020-01-17 Thread CEL
Hi Christophe,

That's awesome! I'm looking forward to reviewing that PR!

On Fri, 2020-01-17 at 11:13 +0100, Christophe Seguinot wrote:
> I really want to congratulate developers for their good quality code of 
> GNURadio. Without that I wouldn't have been able to develop this eye_sink. 

I think you're making more than one developer blush here :)
> Il must be noticed that a real eye diagram would be triggered with  a 
> (recovered) symbol clock. For these reasons, triggering of noisy and/or 
> unsynchronized (receiver) signals is tricky and may lead to incorrect eye 
> pattern

Ah, that's not a bad limitation: that's what trigger-on-tag is for; you
can write a synchronizer for your specific waveform (and synchronizers
are different for different systems...) and just tag the correct point
in time.

Best regards,
Marcus


smime.p7s
Description: S/MIME cryptographic signature


trellis.fsm method invoked with polynomials

2020-01-17 Thread Matteo Campanella
Hello, I have noticed that such a method ia available:


//# Automatically generate the FSM from the generator matrix
//# of a (n,k) binary convolutional code
//##
fsm::fsm(int k, int n, const std::vector& G) I am doing some
experimentation with BPSK31 code generation which uses Rate=1/2, Constraint
length=5 convolutional code, polys are 0x17 and 0x19
now, k = 5 and n = 2, but how do I describe the polys in terms of array? I
though, being poly1=0b10111 and poly2=0b11001, I had to specify them as a
single array [1,0,1,1,1,1,1,0,0,1], but the comment talks about the
generator matrix. Unluckily any attempt to specify a matrix returns error,
and the C code seems to confirm an array is expected. any help? thank in
advance matteo


GRC do not account for line color defined in time_sink and other sink

2020-01-17 Thread Christophe Seguinot

  
  
Hi 

When using GNURadio Companion 3.9, one can define color in
  different sinks such as the time sink. 


  these color are not taken into account
  the .py generated code variable colors only account for
default colors (colors = ['blue', 'red', 'green', 'black',
...'dark blue'])
  so that self.qtgui_time_sink_x_0_0_0.set_line_color(i,
colors[i]) does not apply correct colors

Does anyone knows how to correct this which seems to be a minor
  bug and fix? 

Regards, Christophe



  




Re: Library for matrix operations? (eigenvalues, pseudoinverse)

2020-01-17 Thread Laura Arjona
Thank you all so much for the detailed responses, really appreciate it.

To give some background, my application is to build a CCA  (canonical
correlation analysis)  filter as an OOT C++ block. And the inputs are two
digital signals (represented as matrices) - one of them I receive and
decode real time with my SDR (using usrp n210 with ubuntu).

I am going to try Eigen and Armadillo to start with.

Cheers
Laura.

On Thu, Jan 16, 2020 at 2:33 PM Müller, Marcus (CEL) 
wrote:

> True, Eigen is pretty popular for people needing to do Matrix
> operations – I wasn't aware they even have Matrix decompositions[1]!
> (in hindsight... considering the library name...)
> I like Eigen, but there's two caveats, I find:
>
> 1. indexing is done with () instead of [] (I guess it's made for people
> who come from Matlab)
> 2. It's very much mathematician's software – I found (but that's about
> a decade in the past, at the very least, so older compilers, older
> processors, older Eigen) that things like Matrix·Matrix products were
> relatively slow
>
> I do recommend it to students that simply need some Matrix
> functionality, as performance usually is of secondary concern and can
> be optimized as soon as the software works.
>
> Best regards,
> Marcus
>
> [1]
> http://eigen.tuxfamily.org/dox/group__TopicLinearAlgebraDecompositions.html
> On Fri, 2020-01-17 at 11:16 +1300, Jeremy Reeve wrote:
> > Hi Laura,
> >
> > Just to add to the suggestions, I've seen Eigen [1] used in the past.
> > It's a template library (headers only) and has no external
> > dependencies other than the standard library and that might be
> > something to consider given your use-case.
> >
> > [1] http://eigen.tuxfamily.org/index.php?title=Main_Page
> >
> > Jeremy
> >
> > On Fri, 17 Jan 2020 at 10:02, Laura Arjona  wrote:
> > > Hi all,
> > >
> > > Is there any library to use in gnuradio for algebra operations, such
> as matrix eigenvalues, and pseudoinverse? Or I'd need to code them myself
> in C++?
> > >
> > > I need to integrate those operations into my OOT C++ blocks.
> > >
> > > Thanks for your time
> > >
> > > Best
> > >
> > > --
> > > Laura Arjona
> > > Washington Research Foundation Innovation Postdoctoral Fellow in
> Neuroengineering
> > >
> > > Paul G. Allen School of Computer Science & Engineering
> > > 185 E Stevens Way NE
> > > University of Washington
> > > Seattle, WA 98195-2350
>


-- 
*Laura Arjona *
Washington Research Foundation Innovation Postdoctoral Fellow in
Neuroengineering

*Paul G. Allen School of Computer Science & Engineering*
185 E Stevens Way NE
University of Washington
Seattle, WA 98195-2350