Hi everybody,
I discovered GNU Radio few months ago, in a before-go-to-bed surfing.
I found it very interesting, but complicated because of my poor skills
in programming Python or C++. I'm doing research on Global Navigation
Satellite Systems (GNSS) receivers, and I'm used to code everything in
Matlab. Night after night, I've been browsing the documentation and
making humble steps: I installed Ubuntu on my laptop, followed the
-excellent, also for dummies like me- guide for installing all the
software, read diagonally the documentation and played with sample
codes. Some Hello Worlds, some problems with the audio module, getting
used to read the mailing list, feeling astonished by the intense
activity of this community... nothing new, I guess.
Now I want to take it more seriously. I've seen that both python and
c++ have very well done matrix algebra libraries, and that's exactly
what I need for my research (you can call me naive). I would like to
implement a GNSS receiver (in the wide sense) based on an antenna
array and play with beamforming algorithms and weird RF front-end
architectures (direct RF, IF sampling, etc). My main concern is
synchronization, concretely I want to implement some signal processing
algorithms in a real receiver in order to assess their impact in the
whole system, testing them with real data. I've been working in the
development of some algorithms that -theoretically- performs better in
multipath environments, but I want to see if this is true beyond
classical academic benchmarks.
What is the state of GNSS receivers development in GNU Radio? I have
found some expressions of interest in the Internet, but nothing
concrete. I'm willing to start it from the scratch, but it is nonsense
to reinvent the wheel. I would like to put in contact with other
people interested on these topics. Taking advantage of your patience,
I have some other questions (and you will see my newbie approach):
- I've seen some statements about "beamforming is possible". To what
extend? I'm trying to understand the multi-antenna code example, but
it is possible to use the four ADC at the same time? How well are they
synchronized? it is possible to compute the weight values in software
and perform the multiplication in the FPGA at real time? There is any
other major bottleneck than algebraic weight computation time?
- My first target is a "traditional" L1 C/A code GPS receiver. I guess
that I can choose between RFX1200 and a BasicRx with an external
front-end. Have someone worked in the connection of GNU Radio with gpstk?
- It is 32 MHz the maximum bandwidth available? Will the USRP 2.0
increase this bandwidth? It is possible to decrease the resolution of
the ADCs and/or increase their sampling frequency?
- I also would like to work on the Galileo signal structure and the
new L2CS GPS signal, mostly on the correlators. I have a background on
signal processing, but I'm strongly matlab-shaped in what about
programming is concerned. I'm willing to learn, but am I pointing to
the right direction?
If someone could enlighten me in some of this questions, it would be
greatly appreciated. Sorry for the long text.
Best regards,
Carles Fernandez