rfIDEAS.ReaderIntegrationKit
1.4.1
dotnet add package rfIDEAS.ReaderIntegrationKit --version 1.4.1
NuGet\Install-Package rfIDEAS.ReaderIntegrationKit -Version 1.4.1
<PackageReference Include="rfIDEAS.ReaderIntegrationKit" Version="1.4.1" />
<PackageVersion Include="rfIDEAS.ReaderIntegrationKit" Version="1.4.1" />
<PackageReference Include="rfIDEAS.ReaderIntegrationKit" />
paket add rfIDEAS.ReaderIntegrationKit --version 1.4.1
#r "nuget: rfIDEAS.ReaderIntegrationKit, 1.4.1"
#:package rfIDEAS.ReaderIntegrationKit@1.4.1
#addin nuget:?package=rfIDEAS.ReaderIntegrationKit&version=1.4.1
#tool nuget:?package=rfIDEAS.ReaderIntegrationKit&version=1.4.1
rfIDEAS.ReaderIntegrationKit
A .NET library for communicating with rf IDEAS readers using a high-level reader interface. This package wraps the Reader Integration Kit native library, providing easy integration for .NET applications on Windows and Linux (x64, ARM64, and 32-bit ARM hard-float).
Features
- High-level reader API for reader operations
- Support for WaveID reader types
- Native library support for Windows (x64), Linux (x64), Linux ARM64 (generic + Raspberry Pi 5), and Linux 32-bit ARM (ARMhf)
- .NET 8.0 and .NET 10.0 compatibility
- Distributed via NuGet
Getting Started
- Install via NuGet:
dotnet add package rfIDEAS.ReaderIntegrationKit - Add the using directives:
using rfIDEAS.ReaderIntegrationKit; using rfIDEAS.ReaderIntegrationKit.Objects; using rfIDEAS.ReaderIntegrationKit.Enum;
Prerequisites
- .NET 8.0 or .NET 10.0
- An rf IDEAS reader (e.g., WaveID) connected to your system
- Windows: No additional setup required
- Linux: Appropriate udev rules may be required for USB reader access
Supported Platforms
| Platform | Runtime Identifier | Native Library Path (inside package) |
|---|---|---|
| Windows x64 | win-x64 |
runtimes/win-x64/native/ReaderIntegrationKit.dll |
| Linux x64 | linux-x64 |
runtimes/linux-x64/native/libReaderIntegrationKit.so |
| Linux ARM64 (generic) | linux-arm64 |
runtimes/linux-arm64/native/generic/libReaderIntegrationKit.so |
| Linux ARM64 (Raspberry Pi 5) | linux-arm64 |
runtimes/linux-arm64/native/pi5/libReaderIntegrationKit.so |
| Linux ARM 32-bit (ARMhf) | linux-arm |
runtimes/linux-arm/native/libReaderIntegrationKit.so |
Native libraries are included in the NuGet package and are automatically resolved at runtime for supported platforms.
ARM64: generic vs. Raspberry Pi 5
The package ships two ARM64 builds under runtimes/linux-arm64/native/:
generic/— a neutralaarch64build that runs on any ARMv8-A device.pi5/— a build optimized for the Raspberry Pi 5 (-mcpu=cortex-a76).
At runtime the library picks the variant via the RIK_ARM_VARIANT environment variable when set
(pi5 or generic); otherwise it inspects /proc/device-tree/model and falls back to generic.
Set RIK_ARM_VARIANT=pi5 to force the Pi 5-optimized build, or generic for the portable build.
Usage Example
WaveID Reader
using rfIDEAS.ReaderIntegrationKit;
using rfIDEAS.ReaderIntegrationKit.Objects;
using rfIDEAS.ReaderIntegrationKit.Enum;
var readerDefinition = new ReaderDefinition
{
DeviceId = new DeviceId { VendorId = 0x0c27, ProductId = 0x3bfa },
ProtocolType = ProtocolType.FeatureReport
};
using var reader = new Reader(readerDefinition);
reader.Init();
// Get reader metadata (populated lazily on first access)
var metadataStruct = reader.GetMetadata();
Console.WriteLine($"Part Number: {metadataStruct.PartNumber}");
// Force refresh metadata from device
metadataStruct = reader.GetMetadata(forceRefresh: true);
// Beep the reader
reader.Beep(2, BeepDuration.BeepDurationShort);
// Get beeper volume
var volume = reader.GetBeeperVolume();
Console.WriteLine($"Beeper Volume: {volume}");
Documentation
For integration guides and complete API reference, see the rf IDEAS Documentation.
License
This package is distributed under the rf IDEAS End-User License Agreement (EULA). By installing or
using this package, you agree to the terms of the EULA included in the package. See the rfIDEAS_EULA.txt
file distributed with this package for full terms and conditions.
Copyright rf IDEAS, Inc. All rights reserved.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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. |
-
net10.0
- No dependencies.
-
net8.0
- 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.