GNU Radio – the Free and Open Software Radio Ecosystem
GPL-3.0 License
Bot releases are visible (Hide)
Published by willcode over 2 years ago
get_gpio_attr()
The following people contributed commits to this release. They are credited by the name used in commits. There are may people who contribute in other ways ... discussions, reviews, bug reporting, testing, etc. We just don't have an easy way to provide credit for all that valuable work.
Published by willcode over 2 years ago
get_gpio_attr()
The following people contributed commits to this release. They are credited by the name used in commits. There are may people who contribute in other ways ... discussions, reviews, bug reporting, testing, etc. We just don't have an easy way to provide credit for all that valuable work.
Published by willcode over 2 years ago
get_gpio_attr()
The following people contributed commits to this release. They are credited by the name used in commits. There are may people who contribute in other ways ... discussions, reviews, bug reporting, testing, etc. We just don't have an easy way to provide credit for all that valuable work.
Published by willcode over 2 years ago
get_gpio_attr()
The following people contributed commits to this release. They are credited by the name used in commits. There are may people who contribute in other ways ... discussions, reviews, bug reporting, testing, etc. We just don't have an easy way to provide credit for all that valuable work.
Published by willcode over 2 years ago
affinity
, minoutbuf
and maxoutbuf
to be adjusted via script paradefault
as a flowgraph ID to prevent always starting in an error statedelay
selection.The following people contributed commits to this release. There are may people who contribute in other ways ... discussions, reviews, bug reporting, testing, etc. We just don't have an easy way to provide credit for all that valuable work.
Published by willcode over 2 years ago
exit()
in several places.jsonschema
is required for the JSON Config and YAML Config blocks. Those blocks will be disabled if jsonschema
is not found.affinity
, minoutbuf
and maxoutbuf
to be adjusted via script parameters.gnuradio-runtime
and code compiled against it (via cmake flags).pythonschema
to build- and run-time dependencies.delay
selection.The following people contributed commits to this release. There are may people who contribute in other ways ... discussions, reviews, bug reporting, testing, etc. We just don't have an easy way to provide credit for all that valuable work.
Published by willcode over 2 years ago
Published by willcode over 2 years ago
Published by willcode over 2 years ago
This patch level release fixes an off-by-one error in output buffer allocation. This release should be API and ABI compatible with v3.10.1.0.
Published by willcode over 2 years ago
This is mostly a bug fix release. It is API compatible with 3.10.X.Y releases. Code built against GNU Radio libraries (including OOTs) will likely need to be recompiled, as ABI compatibility is not guaranteed.
Published by willcode over 2 years ago
This is mostly a bug fix release. It is API compatible with 3.10.X.Y releases. Code built against GNU Radio libraries (including OOTs) will likely need to be recompiled, as ABI compatibility is not guaranteed.
Published by mormj almost 3 years ago
It is with much excitement (and after only 4 RCs!!) that we release the next step forward for GNU Radio - 3.10.0.0!
Not only does this release bring in some extremely useful new modules (gr-iio, gr-pdu, and arguably gr-soapy thought that thankfully made it also into recent 3.9 maintenance releases), but also sets a path forward for using GNU Radio in heterogeneous compute environments by providing "custom buffers" for more efficiently interacting with accelerators (GPUS, FPGAs, TPUs, etc.).
We have been fortunate this year to have extremely active backporting and consistent maintenance releases from co-maintainter Jeff Long - so many of the fixes and smaller features (and larger ones) have already seen the light of day in the 3.9.x.x and even 3.8.x.x releases. Here are some highlights of the 3.10 release:
PDUs (protocol data units) in GNU Radio are a special type of PMT that have a dictionary and a uniform vector type representing a burst of data with some metadata. Up to this point, support of pdus has been scattered throughout the codebase with minimal supporting the way of handling this type of data consistently. Fortunately, Jacob Gilbert has been able to upstream much of the amazing work from himself and the team at Sandia National Labs which brings in-tree a suite of tools for manipulating these data objects (see https://github.com/sandialabs/gr-pdu_utils). Also, many of the previous PDU processing blocks that existed in other in-tree modules have been migrated to this module, so there has been some block re-arrangement. Please see https://www.youtube.com/watch?v=bT60hVVte48 for more detailed information
IIO is the industrial I/O framework that provides an industry standard method for communicating with a wide-range of devices. Analog Devices has supported out of tree a gr-iio module that brings this capability into GNU Radio and now upstreamed this module so support for devices like the PlutoSDR are available out of the box. Special thanks here to Adam Horden, Dave Winter, Volker Shroer for bringing this in-tree and working through many of the complexities.
Please see https://www.youtube.com/watch?v=2gKbollW6wg for a more technical description of IIO and gr-iio.
NOTE: this is an advanced "experimental" feature that if not actively employed will not affect normal GNU Radio usage.
David Sorber from Black Lynx has introduced a feature that enables streamlined data movement between GNU Radio blocks and hardware accelerators. By creating a "custom buffer" class (or using one that is provided by someone else), blocks can be made to abstract the data movement behind the scenes so that when the work
function is reached, data already exists in the device memory.
Let me give a quick example - previously if you wanted to write a GPU accelerated block with CUDA, you would have to get into the work function, move the data from the GNU Radio circular buffers to GPU device memory, execute the CUDA kernels, then move the data back to GR buffers. Now that data movement is done behind the scenes if the block is set up right so that when the work function is hit, the data is in GPU device memory and will get transferred back to CPU memory behind the scenes as well. This allows back to back HW accelerated blocks to not have to ingress/egress in and out of GR memory unnecessarily. Also, the single mapped buffer abstraction brings huge performance benefits as can be seen here:
https://www.youtube.com/watch?v=VO1zMXowezg for a much better description, and for all the technical details: https://wiki.gnuradio.org/index.php/Custom_Buffers
For examples of this in action, please see the gr-cuda repository here: https://github.com/gnuradio/gr-cuda - which contains the CUDA custom buffers (that can be re-used in your OOT) and some example blocks.
Log4CPP has previously been our logging backend library, but has become a troublesome dependency. A huge thanks to Marcus Müller for fixing all of this up, replacing Log4CPP with spdlog - a more modern logging library, and also for his ongoing architectural leadership on this project. The move to spdlog also opens up the door for more modern logging statements that don't rely on Boost.format, and libfmt (which is now also a dependency) can be used for general string manipulation as well. All the previous methods and macros still exist (except for the log4cpp specific ones), but there is now new capability to log in a more convenient way using the libfmt statements.
Previous: GR_LOG_INFO(this->d_logger, boost::format("this happened: %d") % code)
New: this->d_logger->info("this happened {:d}", code)
Much appreciation to all that contributed through code, documentation, review, and just generally being a part of this wonderful community. The code contributors for 3.10 includes AT LEAST the following:
0xloem [email protected]
a-andre [email protected]
Adam Horden [email protected]
Adarsh Singh [email protected]
Aditya Thomas [email protected]
Adrien Michel [email protected]
André Apitzsch [email protected]
Andrej Rode [email protected]
Artem Pisarenko [email protected]
Bernard Tyers - Sane UX Design [email protected]
beroset [email protected]
Bill Muzika [email protected]
Callyan [email protected]
Chris [email protected]
Christophe Seguinot [email protected]
Christoph Koehler [email protected]
Chuang Zhu [email protected]
Clayton Smith [email protected]
cmrincon [email protected]
Codey McCodeface [email protected]
Daniel Estévez [email protected]
David Pi [email protected]
David Sorber [email protected]
David Winter [email protected]
Derek Kozel [email protected]
Doron Behar [email protected]
duggabe [email protected]
efardin [email protected]
Elof Wecksell [email protected]
Emmanuel Blot [email protected]
Ferenc Gerlits [email protected]
GitHub [email protected]
gnieboer [email protected]
Håkon Vågsether [email protected]
Igor Freire [email protected]
Ipsit [email protected]
Jacob Gilbert [email protected]
japm48 [email protected]
JaredD [email protected]
Jason Uher [email protected]
Jeff Dumps [email protected]
Jeff Long [email protected]
Jeppe Ledet-Pedersen [email protected]
jfmadeira [email protected]
jmadeira [email protected]
Johannes Demel [email protected]
John Sallay [email protected]
Josh Blum [email protected]
Josh Morman [email protected]
karel [email protected]
lenhart [email protected]
Liu, Andrew Z [email protected]
luz paz [email protected]
Marc L [email protected]
Marcus Müller [email protected]
Mark Bauer [email protected]
Mark Pentler [email protected]
Martin Braun [email protected]
Martyn van Dijke [email protected]
masw [email protected]
Matt Ettus [email protected]
Matt Mills [email protected]
muaddib1984 [email protected]
Nicholas Bruce [email protected]
Nicholas Corgan [email protected]
Nick Foster [email protected]
Nick M [email protected]
Nick Østergaard [email protected]
Niki [email protected]
Notou [email protected]
Oleksandr Kravchuk [email protected]
Pavon [email protected]
Philip Balister [email protected]
rear1019 [email protected]
Rohan Sharma [email protected]
Ron Economos [email protected]
Ryan Volz [email protected]
schneider42 [email protected]
Sebastian Koslowski [email protected]
Seth Hitefield [email protected]
shwhiti [email protected]
Solomon Tan [email protected]
Sylvain Munaut [email protected]
Terry May [email protected]
Thomas Habets [email protected]
Tim Huggins [email protected]
Travis F. Collins [email protected]
Vasilis Tsiligiannis [email protected]
Vasil Velichkov [email protected]
Victor Wollesen [email protected]
Volker Schroer [email protected]
Zackery Spytz [email protected]
Published by mormj almost 3 years ago
Release candidate 4 for v3.10.0.0
This is a hard freeze and will convert into v3.10.0.0 if no serious issues are found
Published by willcode almost 3 years ago
This is an API compatible update to GNU Radio 3.8. Code written for 3.8.X versions should compile and link without modification. The ABI is not guaranteed to be compatible, so a rebuild of OOT modules may be necessary.
At LEAST the following authors contributed to this release.
Published by willcode almost 3 years ago
This is an API compatible update to GNU Radio 3.9. Code written for 3.9.X versions should compile and link without modification. The ABI is not guaranteed to be compatible, so a rebuild of OOT modules may be necessary.
find_package
At LEAST the following people contributed to this release:
Published by mormj almost 3 years ago
Release candidate 3 of v3.10.0.0
Published by willcode almost 3 years ago
Published by willcode almost 3 years ago
Published by mormj almost 3 years ago
Second release candidate for v3.10.0.0
Published by mormj almost 3 years ago
Release candidate for v3.10.0.0. This release introduces the following major features: