| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Leftover data from last time CAC triggered, or just leading zeroes
being ignored.
This commit prevents these by assuring that we've processed at least
as many bits as the code is, before allowing a trigger.
|
|/ |
|
|
|
|
| |
This fixes compilation with MSVC.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All of the removed `from __future__ import` were needed in older
versions of Python (mostly 2.5.x and below) but later became mandatory
in most versions of Python 3 hence are not necessary anymore.
More specifically, according to __future__.py[1]:
- unicode_literals is part of Python since versions 2.6.0 and 3.0.0;
- print_function is part of Python since versions 2.6.0 and 3.0.0;
- absolute_import is part of Python since versions 2.5.0 and 3.0.0;
- division is part of Python since versions 2.2.0 and 3.0.0;
Get rid of those unnecessary imports to slightly clean up the codebase.
[1] https://github.com/python/cpython/blob/master/Lib/__future__.py
|
|
|
|
|
|
|
|
|
|
| |
When the module is used as a dependency for the docstring substitution
task, any change to any file in the module will cause the regeneration
of the bindings for the entire module and all modules that are dependent
on that one.
There is still probably a better way tie the docstring substitution into
the custom commands, per file
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* digital: restructure equalizers and add dfe
This commit restructures the linear equalizer to have a separate
specifiable adaptive algorithm. Generally this works the same as the
previous LMS and CMA decision directed equalizers, but also adds the
ability to equalize using training sequences as well.
Also, a Decision Feedback Equalizer structure is added
* digital: more const in equalizers
* digital: equalizers - more safety based on review
* digital: dfe - use deque instead of vector for decision_history
* digital - equalizers, further cleanup
|
|
|
|
|
|
|
| |
Python has a RuntimeError that's thrown during the pmt to_python function.
Instead of throwing this error, SWIG has been updated to throw a TypeError.
This allows us to keep the same behavior whereby we iterate over PMT types
until the proper conversion is found
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The generic mod implementation is a convenience hier block to modulate
bits to symbols and apply an RRC filter. One downside is the output is
delayed by the length of the RRC filter (which is specified inside the
block). This adds an option to truncate the output according to the
length of the filter response such that the start of output is aligned to the first symbol.
Fixes #2920
|
|
|
|
|
|
|
|
| |
Tests nees to run until both payload_sink and header_sink recive the
specified amount of data or the time limit is reached and should not
stop when only one of the sinks has received enough data.
This should fix the sporadic tests failures.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These blocks have been marked deprecated for a while and had been slated
for removal. They are now being removed.
This includes the following blocks:
- ofdm_frame_acquisition
- ofdm_frame_sink
- ofdm_insert_preamble
- ofdm_sync_fixed
- ofdm_sync_pn
- ofdm_sync_pnac
- ofdm_sync_ml
- ofdm_receiver
|
|
|
|
|
|
|
|
| |
This allows to specify multiple CP lengths that can be used one
after another, for example for LTE modulators.
- Improve sanity checking
- Maintains old API
|
|
|
|
|
|
|
|
|
|
|
|
| |
Do not chain two additive scramblers to check whether the reset is
performed correctly: A flaw in the reset logic can not be detected this
way as the same logic is used both in the scrambler and the descrambler.
Instead, check whether the first N elements generated by the scrambler
are repeated in the output (where N is the reset count). This test does
fail as of this commit; see [1].
[1] https://github.com/gnuradio/gnuradio/issues/2926
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Found via `codespell -q 3 -L ans,sinc,hist,ist,ith,uint,fo -S ./volk`
Fix typos in gnuradio-runtime/
Fix typos in gr-digital/
Fix typos in gr-qtgui/
Fix typos in gr-channels/
Fix typos in grc/
Fix typos gr-filter/
Fix typos in gr-uhd/
Fix typos in gr-blocks/
Fix typos in gr-fec/
|
| |
|
|
|
|
|
|
| |
This affects all Python-based unit tests which use the Python random
module. If they do, this change adds random.seed(0) to every setUp()
call, so that all QA runs are reproducible.
|
|
|
|
| |
This removes any randomness from the test.
|
|
|
|
| |
No functional changes.
|
|
|
|
|
|
|
|
|
|
|
| |
- Used a fixed random seed
- Removed messages that declare that failures aren't a big deal
- Removed some usage of channel.channel_model
- Fixed some Pylint warnings
- Factored out the creation of test vectors
Note: The SNR value for test_003_multiburst was slightly decreased, but
it's still high and given the fixed seed, it also won't matter.
|
|
|
|
|
|
|
|
| |
We essentially monkeypatched Python's `threading` module inelegantly to
get around shortcomings in Python 2.3 and 2.4.
Since support for these versions is long gone: removal of this clutch
and its usage.
|
|
|
|
|
|
|
|
|
| |
This should reduce the number of times users are prompted to install
pylab || scipy when they'd actually get away with functionality fully
contained in numpy and matplotlib.
This only solves the obvious cases. There's some usage of `pylab.mlab`
that would need more than 20s of consideration.
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes #1081.
These blocks were just overly specific wrappers for RRC + constellation
decoders/encoders.
With the nice constellation objects, no need to keep these around.
Note that they are still in use as *possible* constellations
(runtime-detected) in examples like narrowband/tunnel.py, but reducing
these in functionality is inavoidable at this point. Progress of
updating them is tracked in #1956.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
a previous change to py3k introduced synactically incorrect
`old_div` function calls. A replacement with `//` and `/` where applicable is
more appropriate.
Eventually `from __future__ import division` needs to be added as well to have
the "real" division also for integer values in python
closes #1902
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Formerly to_string() returned a byte string in Python2 and a
unicode string in Python3.
To get the same behaviour for Python2 and Python3 the Unicode
String in Python3 is converted to bytes. Which is a desired behaviour
for to_string() since the carried payload of messages includes
invalid unicode characters.
|
| | |
|
| |
| |
| |
| |
| |
| | |
The test was relying on randint() to return the same integers, but since
Python 3.2 it doesn't. Now, we create bits using random.random(), which
will create reproducible bits across Python versions.
|
| | |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Manual merge conflict resolution has been applied to following
conflicts:
* Typos:
* gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py
* gr-blocks/python/blocks/qa_wavfile.py
* gr-filter/examples/gr_filtdes_api.py
* grc/blocks/parameter.xml
* gr-uhd/python/uhd/__init__.py
* ValueError -> RuntimeError:
* gr-blocks/python/blocks/qa_hier_block2.py
* relative Imports & other Py3k:
* gr-digital/python/digital/psk_constellations.py
* gr-digital/python/digital/qam_constellations.py
* gr-digital/python/digital/test_soft_decisions.py
* gr-digital/python/digital/gfsk.py
* SequenceCompleter:
* gr-utils/python/modtool/modtool_add.py
* gr-utils/python/modtool/modtool_rename.py
* gr-utils/python/modtool/modtool_rm.py
* Updated API on next:
* gr-blocks/grc/blocks_file_source.xml
* gr-blocks/python/blocks/qa_file_source_sink.py
* gr-qtgui/grc/qtgui_time_sink_x.xml
* GRC Py3k Updates:
* grc/core/Block.py
* grc/core/Constants.py
* grc/core/Platform.py
* grc/core/utils/odict.py
* grc/gui/Actions.py
* grc/gui/Block.py
* grc/gui/Executor.py
* grc/gui/Port.py
|
| | | |
|
| | |\
| | | |
| | | |
| | | |
| | | | |
Conflicts:
volk
|
| | |\ \ |
|
| | |\ \ \ |
|
| | |\ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Conflicts:
gr-digital/python/digital/qa_packet_format.py
|
| | | | | | | |
|
| |\ \ \ \ \ \
| | |_|_|_|_|/
| |/| | | | | |
|
| | |_|_|_|/
| |/| | | | |
|
| |\ \ \ \ \
| | |_|_|_|/
| |/| | | | |
|
| |\ \ \ \ \
| | |_|_|_|/
| |/| | | | |
|