aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2020-08-03disable OsmoSDR as well as MiriSDR device supportv0.2.1Eric Wild2-10/+10
The actual osmosdr had only a very limited production run many years ago and is therefore of little interest to most gr-osmosdr users. Mirisdr was experimental at best, because the dongles were never widely avaialble outside of Japan and had multiple unconnected antenna ports.
2020-08-03cmake: actually make linking workEric Wild16-18/+26
Appending to lists from subdirs does not work as expected, so work around that to allow collecting the necessary libs.
2020-08-03grc: Fix YML block generationMike Walters1-2/+2
This fixes the template syntax that removes a set of variables from sink blocks. Previously, this was causing NameErrors when trying to generate a flowgraph containing a sink block. Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-03Remove unused imports of endian.hpp.Wim Lewis3-3/+0
Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-03HackRF: convert _lut to float[] to reduce size by a factor of 256Wim Lewis2-18/+11
Similar to commit 33a8d1c for RTL-SDR, this uses two lookups in a 256-element LUT instead of one lookup in a 65536-element LUT, which saves a bit of CPU cache. It also eliminates a dependency on the host's byte ordering. Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-03fcd: restore support for FUNcube Dongle and Pro+Clayton Smith6-46/+43
Support for the original FUNcube Dongle used to live in GNU Radio's gr-fcd module, which was removed in version 3.8. As a result, gr-osmosdr lost support for both FUNcube Dongle and FUNcube Dongle Pro+. The gr-fcdproplus out-of-tree module subsequently added support for the original FUNcube Dongle, meaning that it now supports both types. As a result, FUNcube support can easily be restored in gr-osmosdr. The now. Signed-off-by: Eric Wild <ewild@sysmocom.de> XXX
2020-08-02A lot of Boost functionality is available in C++11. Since GNU Radio is ↵Clayton Smith25-79/+85
moving away from Boost, it probably makes sense to do so in gr-osmosdr as well. This change removes all usage of boost::mutex, boost::mutex::scoped_lock, boost::unique_lock, and boost::condition_variable. It also removes usage of boost::shared_ptr and boost::weak_ptr outside of block definitions (which must continue to use Boost until GNU Radio 3.9). Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-02I'm using an Airspy HF+ Discovery with the Soapy driver. Whenever I turn AGC ↵Anton Blanchard1-3/+8
off it stops receiving samples. On closer inspection, switching AGC off results in samples stalling for an extended period (hundreds of milliseconds). As such, we hit the timeout in SoapyAirspyHF::readStream() and return SOAPY_SDR_TIMEOUT (-1). Things go wrong at this point. It takes a long time before readStream() is called again, presumably because we returned 0 from work(). By this time our buffers have overflown, readStream() returns SOAPY_SDR_OVERFLOW (-2) and work() returns 0. We loop forever, continually overflowing buffers. Fix this by looping in soapy_source_c::work() when ->readStream returns SOAPY_SDR_OVERFLOW so that we consume the buffers straight away. Signed-off-by: Anton Blanchard <anton at ozlabs.org> Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-02rtl_tcp: Throw an exception if TCP connection failsClayton Smith1-5/+5
Currently, rtl_tcp_source_c repeatedly calls ::connect until it succeeds. This can result in 100% CPU utilization and/or a lot of network traffic. In addition, GUI applications like Gqrx freeze up. To solve these problems, I've changed the code to report an error if ::connect fails. Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-02cmake: Go back CMake min ver. 3.8 by removing need for CMP0079Piotr Krysik17-21/+22
CMake 3.13 is not present in older (~2 years old) Linux distributions and GNU Radio requires min CMake version 3.8. All that is needed in order to avoid bumping CMake version is to not use 'target_link_libraries' in subdirectories. Here this is done by creating a list of needed libraries and adding them for linking at the end (like it was done in gr-osmosdr before porting to GNU Radio 3.8). One thing that is lost here is 'PRIVATE' statement in case of FCD libraries linking. Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-02-16cmake: Set CMake min version to 3.13 for CMP0079v0.2.0Sylvain Munaut1-1/+1
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16apps/osmocom_fft: Handle continuous range for sample rate gracefullySylvain Munaut1-1/+1
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16cmake: Remove the FindGnuradioUHD cmake fileSylvain Munaut1-34/+0
This was missed during the initial cleanup but is no longer necessary gnuradio-uhd module installs its own version and that should be used Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16apps: Forward port osmocom_fft to Python 3 and Qt WidgetStefan `Sec` Zehl2-556/+420
From: Stefan `Sec` Zehl <sec@42.org> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16apps: Initial forward port to Python 3Sylvain Munaut6-64/+63
Both from 2to3 and some manual tweaks from here and there. Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16lib/{source/sink}: Fix the set_sample_rate value return value if no changeSylvain Munaut2-2/+2
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16hackrf: replace boost::assign with C++11Clayton Smith4-51/+26
Since GNU Radio is gradually replacing Boost with C++11, it seemed worth doing that for the HackRF blocks I was working on. This change removes all usage of boost::assign. From: Clayton Smith <argilo@gmail.com> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16hackrf: allow transmit/receive switchingClayton Smith7-752/+693
To allow switching between transmit and receive mode within a single flow graph, I've followed the model used by the BladeRF: I factored common code into hackrf_common.cc and hackrf_common.h, and created a "_devs" map there to keep track of which devices have been previously opened. Shared pointers are used to track how many source & sink blocks are using a particular device. Because some properties (center frequency, sample rate, bandwidth, RF amplifier state, bias tee) are shared between receive and transmit, the blocks defer setting these until receiving or transmitting is started. That way a source and sink can safely use different values for these properties, and the correct values are set during T/R switching. Because the HackRF driver and/or hardware does not seem to fully transmit all samples sent to it, the code adds some silence to the end of transmissions to ensure all samples are transmitted. I've also replaced boost with C++11 code where possible. From: Clayton Smith <argilo@gmail.com> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16airspy: fix cmake target_link_librariesClayton Smith1-1/+1
From: Clayton Smith <argilo@gmail.com> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16airspyhf: Add initial support for Airspy HF+Alexandru Csete9-0/+652
Info: http://airspy.com/airspy-hf-plus/ From: Alexandru Csete <oz9aec@gmail.com> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16build: Update build system to GR 3.8 standardsSylvain Munaut22-498/+399
Part of GNURadio 3.8 migration Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16grc: Convert XML GRC blocks to YMLSylvain Munaut2-477/+386
Conversion done by Mickey Vänskä <mvaenskae@gmail.com> Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16build: Update CMakeLists.txt copyright headerSylvain Munaut22-88/+88
Part of GNURadio 3.8 migration Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16docs: Update docs template to the latest from GNURadioSylvain Munaut26-3246/+1383
Part of GNURadio 3.8 migration Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16build: Remove cmake modules previously copied from GR treeSylvain Munaut11-1638/+0
Part of GNURadio 3.8 migration Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2019-12-01update version to 0.1.5v0.1.5gr3.7Sylvain Munaut1-1/+1
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2018-08-15bladerf: update bladerf to catch up with libbladeRFRobert Ghilduta2-21/+22
2018-08-15bladeRF: add support for biastee on bladeRF microRey Tucker4-0/+54
2018-08-15bladerf: remove vestigial mapRey Tucker1-12/+0
2018-08-15bladerf: use bladerf_get_channel_count where availableRey Tucker1-9/+5
2018-08-15bladerf: compatibility with older libbladeRFRey Tucker4-6/+174
Implement compatibility with older libbladeRF versions
2018-08-15bladerf: add support for MIMORey Tucker6-1123/+1665
Squashed commit of rtucker-bladerf-hierarchy branch: commit 35442da7d390919f6f9cbae3f69d6dc32ca595bb through commit 9026136cfdbc7116f55af18cb06d1731330fa13f
2018-08-15bladerf_common: tweak buffer/transfer settingsRey Tucker1-4/+11
Based on experimentation, a good value for transfers seems to be 16, but more buffers are definitely warranted for an optimal default experience.
2018-08-15bladerf: add set_rx_mux_mode functionalityRyan Tucker2-1/+40
Also plumb through as rxmux= device argument
2018-08-15bladerf: add firmware loopback modeRyan Tucker1-0/+2
2018-08-15bladerf_common: add agc= option to set gain modeRyan Tucker1-0/+10
2018-08-15bladerf: use nchan option to enable multi-channelsRyan Tucker4-52/+52
By default, the bladeRF source and sink will expose 1 channel, unless nchan is set, in which case it will expose either that number of channels, or the number of channels supported by the device if lesser. If nchan > 1 (after validation), MIMO mode is enabled.
2018-08-15bladerf: fix get_gain_names populationRyan Tucker1-9/+9
Instead of haphazardly iterating through the gain strings, just use the count returned.
2018-08-15bladerf: formatting/style fixes on .h filesRyan Tucker3-98/+99
2018-08-15bladerf: formatting/consistency fixesRyan Tucker3-602/+645
2018-08-15bladerf_common: formatting/whitespace/consistencyRyan Tucker1-352/+395
2018-08-15bladerf: replace bladerf_module with bladerf_directionRyan Tucker4-87/+60
More closely matches the handling in the API
2018-08-15bladerf_common: cleanup on set_gain_modeRyan Tucker1-15/+4
Turns out that source/sink_impl already handle the AGC->MGC gain preservation, so this was redundant and counterproductive. Also DRY the code a bit.
2018-08-15bladeRF: fix identification of channelsRyan Tucker2-29/+30
2018-08-15bladeRF: remove set_bb_gainRyan Tucker6-20/+0
This is not meaningful with bladeRF hardware
2018-08-15update copyright datesRey Tucker6-6/+6
2018-08-15formatting/wording tweaksRey Tucker1-3/+4
2018-08-15bladerf2: add get_gain_mode and set_gain_modeRyan Tucker1-4/+42
2018-08-15WIP: libbladeRF rev2 refactoring etcRyan Tucker3-63/+82
2018-08-15WIP: more port workRyan Tucker4-60/+77