* before having possibility to set VGA from outside,
it was set to 0x8 (=16.3 dB) for manual, but
it was set to 0xb (=26.5 dB) for automatic (LNA/Mixer) gain.
erroneously it was initialized to 0x0 in r82xx_init_array[]
* also fixed parsing/processing of ifm value
* might fix https://github.com/librtlsdr/librtlsdr/issues/81
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* bugfix wrong return value in r82xx_set_pll(),
when "PLL not locked" was printed.
removed all similar messages - regarded as noise,
e.g. when running rtl_test -t
* suppress output of tuning band 0 - 0 Hz in rtl_test
Signed-off-by: hayati ayguen <h_ayguen@web.de>
This scans 0 - 3GHz looking for frequencies that can be tuned to without
error, and refines the band edges further once a tuneable band is found. It
should work with any tuner that correctly reports tuning errors. It takes
about 1.5 minutes to complete on a R820T.
(cherry picked from commit a710e4eed2a1662fa758b3d538e7643760330d52)
Signed-off-by: hayati ayguen <h_ayguen@web.de>
(cherry picked from commit c5d7ebee5c7a40e52dbc50e3931f7d5096d7a9a6)
set rtlsdr_set_opt_string() - especially sideband,
before testing tuning range
Signed-off-by: hayati ayguen <h_ayguen@web.de>
(cherry picked from commit d59b178cc1eb27f0beca802a9cf82f1d6ded3a48)
* adapted for thread mutex .. thus, we can't do early exit
* removed all the additional rtlsdr_set_i2c_repeater() calls!
* checked all calls to rtlsdr_set_i2c_repeater()
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* removed version defines in rtl-sdr.h
version is now from single source: rtl_app_ver.h.in
* output version information with usage() - in all tools:
- of their build
- and the utilized library (.so)
* unified usage() messages over all tools
Signed-off-by: hayati ayguen <h_ayguen@web.de>
If the librtlsdr code comes from a tarball, it doesn't have any .git/
metadata, and therefore even if Git (as a tool) is found, the logic in
cmake/Modules/Version.cmake fails finding a version through Git:
-- Extracting version information from git describe...
fatal: Not a git repository (or any of the parent directories): .git
As a consequence, the VERSION variable is empty, which later causes
cmake to bail out with:
CMake Error at /home/test/autobuild/run/instance-1/output-1/host/share/cmake-3.15/Modules/WriteBasicConfigVersionFile.cmake:43 (message):
No VERSION specified for WRITE_BASIC_CONFIG_VERSION_FILE()
Call Stack (most recent call first):
/home/test/autobuild/run/instance-1/output-1/host/share/cmake-3.15/Modules/CMakePackageConfigHelpers.cmake:225 (write_basic_config_version_file)
CMakeLists.txt:173 (write_basic_package_version_file)
To avoid this, we only use Git to determine the version if the cmake
project top-level source directory has a .git/ folder.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit feb5d9c6b7bcec788f9b01781c205e31fff260e7)
This is an import of the rtl_biast command line tool from the
rtlsdrblog github repository. It's easier to include it here than
try to package up the separate application because they both
wish to install dynamic libraries.
(cherry picked from commit 43b257854c2c4f6d30649e34d1d1473e72630c5a)
resolved conflicts and amended API documentation on
rtlsdr_set_bias_tee() and rtlsdr_set_bias_tee_gpio()
Signed-off-by: hayati ayguen <h_ayguen@web.de>
rtl_biast allows for non-default GPIO pins to be used.
Add an API call which allows for that.
(cherry picked from commit 5d0735f5dfe276203261b8bcd3817341d4630ab2)
fixed conflicts
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* other case: setting bandwidth before r82xx_set_freq()
* r82xx_set_tv_standard() now sets rf_freq
* r82xx_set_pll() keeps last valid frequency for freq=0
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* added documentation for rtlsdr_open()
* added documentation for rtlsdr_close()
* fixed documentation for rtlsdr_set_center_freq()
* amended documentation for rtlsdr_get_freq_correction()
and rtlsdr_get_tuner_gain() - but no good error indication possible
without API change
* added documentation for rtlsdr_reset_buffer() and rtlsdr_read_sync()
Signed-off-by: hayati ayguen <h_ayguen@web.de>
librtlsdr uses two fileds of struct rtlsdr_dev to communicate
between threads. On hardware with weak memory model it is not
guaranteed that it will work, as C memory model guarantees
nothing for simple variables.
Using C11 atomics seems to be overkill here, but async_status
and async_cancel better be marked as "volatile".