Packet.Rig.Flrig
0.23.0
dotnet add package Packet.Rig.Flrig --version 0.23.0
NuGet\Install-Package Packet.Rig.Flrig -Version 0.23.0
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="Packet.Rig.Flrig" Version="0.23.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Packet.Rig.Flrig" Version="0.23.0" />
<PackageReference Include="Packet.Rig.Flrig" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Packet.Rig.Flrig --version 0.23.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Packet.Rig.Flrig, 0.23.0"
#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.
#:package Packet.Rig.Flrig@0.23.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Packet.Rig.Flrig&version=0.23.0
#tool nuget:?package=Packet.Rig.Flrig&version=0.23.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Packet.Rig.Flrig
IRigControl over flrig's XML-RPC server
(default 127.0.0.1:12345). The client contract deliberately mirrors hamlib's own flrig
backend (rigs/dummy/flrig.c) — the most battle-tested flrig client — including its meter
conversions, so both report identical values.
await using var rig = await FlrigRig.ConnectAsync();
Console.WriteLine(rig.Info.Model); // rig.get_xcvr
Console.WriteLine(rig.FlrigVersion); // main.get_version
await rig.SetFrequencyAsync(7_074_000);
// flrig mode names are rig-native — enumerate before you set:
Console.WriteLine(string.Join(", ", rig.SupportedModes)); // e.g. LSB, USB, CW, DATA-U
await rig.SetModeAsync(RigMode.From("DATA-U"));
var swr = await rig.ReadSwrAsync(); // rig.get_SWR, falling back to get_swrmeter
var watts = await rig.ReadRfPowerWattsAsync();
// Anything else on flrig's method table:
await rig.CallRawAsync("rig.cat_string", ["FA;"]); // raw CAT passthrough
flrig dialect notes (handled for you)
- Frequency gets return strings of Hz (
rig.get_vfo); sets take XML-RPC doubles (main.set_frequency). - Mode names are whatever the attached transceiver calls them. Setting a mode outside
SupportedModesthrows instead of being silently ignored (flrig drops unknown mode strings without complaint — and the server-side "Ignore xmlrpc mode changes" option drops all of them). - The get side reports no passband width (
PassbandHzisnull), and widths cannot be set. - SWR uses the newer direct
rig.get_SWRwhen present, else interpolates the 0–100rig.get_swrmeterdeflection through hamlib's anchor table (capped at 10:1). - Power:
rig.get_pwrmeter(0–100 deflection) scaled byrig.get_pwrmeter_scale— relative = deflection/100 × scale, watts = deflection × scale (hamlib's exact contract). - Meters are only meaningful while transmitting; flrig answers 0 when idle or unmetered.
- Poll-only, multiple clients supported by flrig, state can change under you.
Testing: flrig is a GUI app with no headless mode — this package's tests script an in-process XML-RPC fake (the established technique for flrig clients).
Part of Packet.NET.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Packet.Rig (>= 0.23.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.