Hackfest November 2012 at Ettus Research

The second Hackfest of 2012 (Nov 26-30) is hosted by Ettus Research at Ettus HQ, Mountain View California.

Attendees

  • add yourself here

Projects

ControlPort

http://www.trondeau.com/home/2012/11/18/public-release-of-controlport.html
http://www.youtube.com/watch?v=h_8zmcB6NQI&list=PL503MUVkH-7l03_9l7Jq2wwC_I143aALM&index=1&feature=plpp_video

We've moved ControlPort into gnuradio-core so we can access all ControlPort functionality from any piece of GNU Radio. It's still an optional build and is conditionalized out if ICE is not found or if ENABLE_GR_CTRLPORT=False by hand.

ControlPort was cleaned up, made easier to use, and merged into the 'next' branch, so it will be part of the 3.7 release.

gr-easyMAC (formerly 'pre-cog')

https://github.com/jmalsbury/pre-cog/wiki
http://www.youtube.com/watch?v=pF_4dFQHAZE&list=PL503MUVkH-7l03_9l7Jq2wwC_I143aALM&index=2&feature=plpp_video

Actually decent OFDM frame transmitter/receiver

A full tutorial to come!

Follow the efforts at https://github.com/benreynwar/gnuradio/tree/ofdm

Python Blocks

We had to remove Python Blocks from GNU Radio due to a strange conflict with Scipy. After running into this again recently, we pushed a patch to fix it, but only after reverting the merge of Python Blocks. We went back and reverted the revert to re-introduce Python Blocks into GR on the master branch. Things look like they are working now (yay!).

Check out the tutorial.

Message Passing

http://gnuradio.org/cgit/gnuradio.git/commit/?h=next&id=7fc857a18cdc47f333db56cfedd2a4ed1a8432a9

http://gnuradio.org/doc/doxygen/page_msg_passing.html

GRCC

Added a GNU Radio Companion Compiler to GNU Radio. This is a command-line tool to generate Python files from GRC files without having to open GRC itself. You run it like:

Usage: grcc: [options] filename

Compiles a GRC file (.grc) into a GNU Radio Python program. The program is
stored in ~/.grc_gnuradio by default, but this location can be changed with
the -d option.

Options:
  -h, --help            show this help message and exit
  -d DIRECTORY, --directory=DIRECTORY
                        Specify the directory to output the compile program
                        [default=$HOME/.grc_gnuradio/]
  -e, --execute         Run the program after compiling [default=False]

Metadata Files

We've worked on developing a metadata structure to annotate files with. A file sink block has been created with this header information and a simple Python script to parse it. Going over some details with the Hackfest crew, we've identified a number of areas that need updating. We'll post more about this one later with full details of the structure and how to write and read them.

We've finished up Version 0 of the metadata files. There is a blocks::file_meta_sink and blocks::file_meta_source. The file sink creates a file and writes all data to it, along with headers of metadata. The file source is resourceful in that you can just give it the metadata file itself and it's capable of reading out everything it needs in order to pull the data and source it into a flowgraph. Meanwhile, other metadata gets transferred as stream tags so blocks down the line can also know what's happening with the data. Pretty good stuff!

For a more complete discussion of the metadata header format and how to use it, we've added a page to the Doxygen manual that explains it all. This manual page is not on the gnuradio.org's website version of the documentation since we have not made a release containing this capability (but it will be in 3.6.3, which will be released soon). For now, you can build the documentation locally (in either 'master' or 'next') and you'll have access to the page, which is located under "Related Pages" and "Metadata Information."

http://gnuradio.org/doc/doxygen/page_metadata.html

Direction Finding

Direction-of-Arrival with Root MUSIC in gr-specest

Volk Kernel documentation

Some updates to the Volk page, including items on writing new VolkAddingProtoKernels and VolkAddingNewKernels

add more here

YouTube

All recorded talks are available in this playlist.