MCPcopy Index your code
hub / github.com/EttusResearch/gr-doa

github.com/EttusResearch/gr-doa @v1.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.0 ↗ · + Follow
2,107 symbols 4,011 edges 63 files 61 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

About gr-doa

gr-doa is a demonstration on the phase synchronization capability of Ettus Research's USRP X440. We provide apps to determine the accuracy of phase synchronization achieved and to estimate DoA which fundamentally requires accurate phase synchronization across the receive streams.

Basic Dependencies

UHD >= 4.8.0.0
gnuradio >= 3.11.0.0
armadillo >= 12.6.7

Dependencies Needed for QA Testing

octave (Tested 8.4.0)
octave-signal (Tested 1.4.6)
scipy (Tested 1.16.0)
oct2py (Tested 5.8.0)

What is implemented?

- A wrapper to the USRP source block for a syncronised X440
- Relative phase offset measurement and correction
- Antenna element calibration for linear arrays
- MUSIC algorithm for linear arrays
- Root-MUSIC algorithm for linear arrays

OSs Tested

Ubuntu 24.04

Installation

$ git clone https://github.com/EttusResearch/gr-doa
$ cd gr-doa
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make test
$ sudo make install
$ sudo ldconfig

Documentation

For a concise description of the steps involved: https://github.com/Jreitmei/gr-doa/wiki
For detailed description: gr-doa/docs/whitepaper/doa_whitepaper.pdf

Core symbols most depended-on inside this repo

data
called by 28
docs/doxygen/doxyxml/base.py
name
called by 25
docs/doxygen/doxyxml/base.py
parse
called by 8
docs/doxygen/other/doxypy.py
get_member
called by 7
docs/doxygen/doxyxml/base.py
_parse
called by 7
docs/doxygen/doxyxml/doxyindex.py
combine_descriptions
called by 6
docs/doxygen/update_pydoc.py
in_category
called by 6
docs/doxygen/doxyxml/base.py
make_entry
called by 5
docs/doxygen/update_pydoc.py

Shape

Method 1,854
Class 197
Function 56

Languages

Python98%
C++2%

Modules by API surface

docs/doxygen/doxyxml/generated/compoundsuper.py1,660 symbols
docs/doxygen/doxyxml/generated/compound.py125 symbols
docs/doxygen/doxyxml/generated/indexsuper.py93 symbols
docs/doxygen/doxyxml/doxyindex.py27 symbols
docs/doxygen/doxyxml/base.py25 symbols
docs/doxygen/other/doxypy.py24 symbols
docs/doxygen/update_pydoc.py17 symbols
python/doa/x440_usrp_source.py11 symbols
docs/doxygen/doxyxml/generated/index.py9 symbols
python/doa/bindings/header_utils.py8 symbols
python/doa/qa_calibrate_lin_array.py6 symbols
python/doa/qa_autocorrelate.py6 symbols

For agents

$ claude mcp add gr-doa \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact