RtlSdrManager 0.2.1
dotnet add package RtlSdrManager --version 0.2.1
NuGet\Install-Package RtlSdrManager -Version 0.2.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RtlSdrManager" Version="0.2.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RtlSdrManager --version 0.2.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: RtlSdrManager, 0.2.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install RtlSdrManager as a Cake Addin #addin nuget:?package=RtlSdrManager&version=0.2.1 // Install RtlSdrManager as a Cake Tool #tool nuget:?package=RtlSdrManager&version=0.2.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Installation
RTL-SDR Manager Library is available via NuGet package manager. You can easily install it via the usual ways.
# dotnet CLI
dotnet add package RtlSdrManager
# nuget CLI
nuget install RtlSdrManager
Usage
Handling RTL-SDR device:
// Initialize the Manager instance.
var manager = RtlSdrDeviceManager.Instance;
// Open a managed device and set some parameters.
manager.OpenManagedDevice(0, "my-rtl-sdr");
manager["my-rtl-sdr"].CenterFrequency = new Frequency {MHz = 1090};
manager["my-rtl-sdr"].SampleRate = new Frequency {MHz = 2};
manager["my-rtl-sdr"].TunerGainMode = TunerGainModes.AGC;
manager["my-rtl-sdr"].AGCMode = AGCModes.Enabled;
manager["my-rtl-sdr"].MaxAsyncBufferSize = 512 * 1024;
manager["my-rtl-sdr"].DropSamplesOnFullBuffer = true;
manager["my-rtl-sdr"].ResetDeviceBuffer();
Asynchronous sample reading from the device:
// Start asynchronous sample reading.
manager["my-rtl-sdr"].StartReadSamplesAsync();
Read samples from the buffer:
// Dequeue from the buffer.
if (!manager["my-rtl-sdr"].AsyncBuffer.TryDequeue(out var data))
{
Thread.Sleep(100);
continue;
}
// Use the sample
Console.WriteLine(data);
Using KerberosSDR related functions:
// Enable KerberosSDR mode.
manager["my-rtl-sdr"].KerberosSDRMode = KerberosSDRModes.Enabled;
// Using frequency dithering and configuring GPIO directly.
manager["my-rtl-sdr"].FrequencyDitheringMode = FrequencyDitheringModes.Enabled;
manager["my-rtl-sdr"].SetGPIO(1, GPIOModes.Enabled);
Release Notes
v0.2.1 - January 10, 2020
- Implement KerberosSDR related features (frequency dithering, direct GPIO control)
- Implement Bias Tee settings
- Minor fixes in the documentation
v0.2.0 - June 10, 2018
- Bugfix in DeviceInfo handling
- Implement singleton pattern for RtlSdrDeviceManager
v0.1.3 - June 9, 2018
- First public NuGet package
v0.1.2 - June 3, 2018
- Handling crystal frequencies (RTL2832, IC)
- Support tuner bandwidth selection (Automatic, Manual)
- Support direct sampling (I-ADC, Q-ADC)
- Support offset tuning mode for zero-IF tuners
v0.1.1 - May 12, 2018
- First public release of the RTL-SDR Manager
- Supports most of the imporant functions of RTL-SDR device
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Includes NuGet support.