On Wed, Jul 3, 2013 at 3:57 PM, LD Zhang <ldz10...@gmail.com> wrote: > Is it true that the blks2 is gotten rid of in 3.7? I have gotten used to some > code that uses blks2 and some documentation. Will those online > documentation/code examples also be updated with version 3.7? > > We are getting a new USRP, should I stick with 3.6 or go to 3.7? > > Thanks, > > LD
All of the blocks in blks2impl are still there but are now in their more natural components. Look for them under the python/ directory for different top-level components. Specifically, you'll find many in gr-digital, gr-analog, and gr-filter. This wiki is designed to help people transition over to the new code. Help in documenting where some of these blocks went would be very welcome: http://gnuradio.org/redmine/projects/gnuradio/wiki/Move_3-6_to_3-7 Tom > > -----Original Message----- > From: discuss-gnuradio-bounces+ldz10565=gmail....@gnu.org > [mailto:discuss-gnuradio-bounces+ldz10565=gmail....@gnu.org] On Behalf Of > Johnathan Corgan > Sent: Wednesday, July 03, 2013 12:03 PM > To: Discuss-gnuradio@gnu.org > Subject: [Discuss-gnuradio] GNU Radio release 3.7.0 available for download > > GNU Radio release 3.7.0 is available for download: > > http://gnuradio.org/releases/gnuradio/gnuradio-3.7.0.tar.gz > > MD5 sum: > > c2856ee14b415a64abf5dc9af0f5374c gnuradio-3.7.0.tar.gz > > This is a major new release of GNU Radio, culminating a year and a half of > side-by-side development with the new features added to the GNU Radio > 3.6 API. With the significant restructuring that was occurring as part of the > 3.7 development, at times this seemed like rebuilding a race car engine while > still driving it. > > All the appropriate bug fixes applied in the 3.6.0 - 3.6.5.1 series of > releases were incorporated into 3.7.0 and are not re-listed here. > Otherwise, this release has all the features added to 3.6 and the new ones > listed below that could only be done in the 3.7 API. > > The GNU Radio SDR framework/runtime gained many new capabilities in 3.6, and > our project focus now during the 3.7 development series will be to use these > new capabilities to improve GNU Radio DSP block libraries and example > applications. > > The detailed release notes follow. > > > Contributors: > > Ben Reynwar <b...@reynwar.net> > Gerald Baier <gerald.ba...@student.kit.edu> Jaroslav Škarvada > <jskar...@redhat.com> Jeff Long <j...@longhouse.net> Johnathan Corgan > <johnat...@corganlabs.com> Josh Blum <j...@joshknows.com> Mark Plett > <mark.pl...@jhuapl.edu> Martin Braun <martin.br...@kit.edu> Michael Dickens > <m...@alum.mit.edu> Nicholas Corgan <nick.cor...@ettus.com> Nick Foster > <n...@ettus.com> Nick McCarthy <namcc...@gmail.com> Philip Balister > <phi...@balister.org> Sreeraj Rajendran <rsree...@gmail.com> Tim Newman > <tim.new...@gmail.com> Tim O'Shea <tim.oshea...@gmail.com> Tom Rondeau > <trond...@vt.edu> Volker Schroer <dl1...@gmx.de> > > > Code Structure Changes (Johnathan Corgan, Tom Rondeau) > > The GNU Radio source code was restructured and flattened. All top-level > components now use the same structure for consistency and ease of use. > All blocks were moved out of gnuradio-core, which has been renamed to > gnuradio-runtime. The blocks are now in their appropriate top-level > components and reimplemented with the new 3.7 API style. The new API makes > use of C++ namespaces and the virtual private implementation class pattern to > better hide GNU Radio internals from user code. > > Details about this can be found here: > > http://gnuradio.org/redmine/projects/gnuradio/wiki/Move_3-6_to_3-7 > > A Google doc showing all items that were moved from one place to another in > the new style is here: > > http://ow.ly/mDpey > > Blocks not listed were already in their own components. Many blocks were > removed. All columns marked with ‘-----’ means that column is not applicable > to that block or class. Any column (except those marked as > Remove) that are blank means that we might be able to improve upon it, which > normally indicates using VOLK or improving documentation. > > A Google doc showing the new component and Doxygen categories for all > components is here: > > http://ow.ly/mDplO > > > Important new features: > > ControlPort (Tom Rondeau, Tim O’Shea) > > ControlPort is a new interface for standardizing remote procedure calls in > GNU Radio: > > * Remote control and visualization. > * Use of ControlPort to debug without requiring extra debug streams. > * Abstracted interface, but currently using ICE (www.zeroc.com). > * No additional CPU usage while no monitoring is occurring. > * Can connect multiple remotes to same GNU Radio application. > * Can also have single ControlPort app control multiple GR apps. > > Each block creates interfaces to control data members, by defining ‘get’ > and ‘set’ interface to query and update values of block variables. > Preference files control the state of ControlPort in section [ControlPort] of > gnuradio-runtime.conf. > > ControlPort comes with a generic utility to allow you to see all interfaces > of a flowgraph: > > * gr-ctrlport-monitor <ip address> -p <port> > > Within a flowgraph, one can also use ControlPort probes to pass vectors of > data to a ControlPort client, including complex IQ data. One useful probe > calculates the power spectral density of a block output for remote display. > > See the ControlPort page in the GNU Radio manual for more information: > > http://gnuradio.org/doc/doxygen/page_ctrlport.html > > > Performance Measurement Tools > > Performance Counters were first built into GNU Radio in 3.6.5, but could only > be accessed locally. Now, all Performance Counters can be exported over > ControlPort. > > Performance Counters must be compiled into GNU Radio using > -DENABLE_PERFORMANCE_COUNTERS=True. They can be toggled on/off at runtime > using the [PerfCounters] section in gnuradio-runtime.conf. Use option > ‘export’ to export Performance Counters over ControlPort. > > We now include a new tool to visualize the Performance Counters over > ControlPort. This is installed as gr-perf-monitorx and requires the Python > modules Scipy, NetworkX, and Matplotlib. Nodes of the flowgraph are > represented as blue squares. The size of the square is proportional to the > amount of time spent in the work function (either thread time or monotonic > (wall clock) time). The size and depth of the shade of red of the edges is > proportional to how full the block’s output buffer is. > > > QTGUI Enhancements (Tom Rondeau, Nick Foster, Ben Reynwar) > > The QTGUI widgets defined in gr-qtgui have had a major overhaul in 3.7. > All plots are now split out into individual components, including: > > * Time plots (amplitude versus time) > * FFT plots (or PSD) (log magnitude versus frequency) > * Waterfall plots (or spectrograms) (time versus frequency with magnitude as > the color intensity) > * Constellation plots (imaginary (quadrature) versus real (inphase)) > * Time raster plots (time vs. time) > > Each plot can accept multiple connections that will overlay the signals on > them. Zooming and unzooming are the same using the left and right mouse > buttons. The center mouse button will pull up a context menu to allow > manipulations of all kinds of properties of the display, such as line and > marker styles, the size of the FFT, averaging, line transparency, etc. > Significant work has gone into improving the performance, including the use > of VOLK and more intelligent ways of handling the display to reduce the > computational load. > > QT defined QT Style Sheets (QSS) that allow us to specify looks, colors, and > other properties of a display. Support for the use of QSS has been added to > gr-qtgui to make establishing your preferences easier. > > gr-qtgui/examples contains a number of examples showing how to use each type > of plot and the QSS definition and interface. > > > Uninstalled imports (Ben Reynwar) > > The GNU Radio source tree was updated to allow us to directly import all GNU > Radio components in-tree before install but using the same syntax. > This change greatly reduces problems and complexity of writing Python code > for use in both normal installations and QA code. This change will also allow > us to automatically build the Sphinx Python manual during make. > > > Updated gr_filter_design (Sreeraj Rajendran) > > Overhauled the current gr_filter_design to add better visualization and > interactive tools. Installed as part of the gr-filter component now, the > gr_filter_design tool adds many new features for visualizing filters as well > as support for IIR filter tap design. The new tool also includes a > programmatic API that allows a user to launch the filter design tool inline > in a program, design the new filter, and pass back an object containing the > filter taps and parameters. Passing a callback function allows the designer > to run in a separate thread and every time a new filter is designed, the > callback function can be triggered to update a filter. > > Examples of using the programmatic access to gr_filter_design can be found in > gr-filter/examples/gr_filtdes_*. > > > Other New Components and Features > > New blocks added: > > * gr::analog::fast_noise_source - pre-generates a table of random samples > from the selected PDF and randomly samples from them. This has somewhat less > entropy than the normal noise_source block but is significantly faster. > > * gr::analog::agc3_*: Performs an initial linear gain ramp to quickly > converge on a signal during startup and then falls back to an iterative loop > similar to agc2. > > * The agc, agc2, and agc3 blocks have been made to use a unified interface > that now includes a default maximum gain value (set to 2^16 so that it can > scale up even the LSB of a USRP’s device). > > > New gr-fec component > > This new top-level component mainly functions as a placeholder for new FEC > block implementations. Currently contains only a couple of purpose-built FEC > blocks. > > > New gr-channels component (Tim O'Shea) > > This new top-level component holds current and future channel model blocks. > The standard AWGN channel_model has moved here. In addition, there are two > new channel models: > > * fading_model - Uses configurable max Doppler shift, Rician power factor, > and lists of the delays (in samples) and magnitudes of a power delay profile. > > * selective_fading model - Basic fading model that can have a number of > sinusoids, max Doppler shift, and Rician power factor defined for it. > > > volk_modtool (Nick McCarthy) > > This new tool allows the creation of out-of-tree VOLK libraries. These allow > developers or organizations to develop a set of VOLK kernels for internal use > apart from the main libvolk provided by GNU Radio. > > > GnuradioConfig.cmake (Tom Rondeau, Tim O’Shea) > > New GnuradioConfig.cmake and GnuradioConfigVersion.cmake cmake files are > installed into the system under $prefix/lib/cmake/gnuradio. These files can > be used by any other project to easily test if any GNU Radio components are > installed and the minimum API-compatible version required. > > Set GR_REQUIRED_MODULES to any of the top-level components in GNU Radio in > all caps. Then use find_package(Gnuradio) to search for them. The second > optional argument is the API compatible version is was built against. For > example, to test if gnuradio-runtime, gnuradio-blocks, and gnuradio-filter > are installed, we would use: > > set(GR_REQUIRED_MODULES RUNTIME BLOCKS FILTER) find_package(Gnuradio 3.7.0) > > > Additional Fixes (Ben Reynwar, Tom Rondeau, Josh Blum, Nicholas Corgan) > > * Added symbol output stream from constellation_receiver so we can see the > locked constellation as well as the output bits. > > * Introduced a new pfb_arb_resampler kernel class that can be used by other > blocks. We have used this to significantly simplify the > pfb_arb_resampler_ccf/fff blocks. > > * All PFB code has new QA and fixed a few minor bugs in the calculation of > some of the filters. > > * Added more QAM support with Gray coding. > > * Reworked VOLK. All kernels are now in volk/kernels/volk, made all kernels > consistent in use of num_points, and redid any kernels that used num_bytes. > > * Removed assumptions that were Linux-only to continue to support native MSVC > builds. > > > Obsoleted and/or removed functionality > > The following components have been removed or redone: > > * gr-shd (removed) > * gruel (removed; all functionality now in gnuradio-runtime) > * gr-howto-write-a-block (functionality replaced by gr_modtool) > > For more removed items, see: > > http://ow.ly/mDpey > > > Deprecated functionality > > These are items that are currently part of GNU Radio, but are planned to be > removed in the next API release (3.8). > > * gr-noaa - will be reimplemented as a stand-alone, out-of-tree project and > supported with PyBOMBS > > * gr-pager - will be reimplemented as a stand-alone, out-of-tree project and > supported with PyBOMBS > > > -- > Johnathan Corgan > Corgan Labs - SDR Training and Development Services http://corganlabs.com > > > > _______________________________________________ > 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