Introduction

This library package provides libremoteio.dll, a .Net Standard 2.0 library assembly that provides a .Net client implementation of the Remote I/O Protocol.

libremoteio provides services to control ADC (Analog to Digital Converter) inputs, DAC (Digital to Analog) outputs, GPIO (General Purpose I/O) pins, I2C devices, PWM (Pulse Width Modulated) outputs, servo outputs, motor outputs, and SPI (Serial Peripheral Interface) devices connected to a Remote I/O Protocol server.

With libremoteio you can develop .Net application programs for Windows or Linux target computers that control I/O devices connected to a Remote I/O Protocol server. Such programs may be used for physical computing, test fixtures, instrumentation, and other kinds of embedded systems.

The API documentation for libremoteio is available at http://git.munts.com/libsimpleio/doc/libremoteio.dll.pdf.

Usage

The easiest and best way to use libremoteio is to install the .Net template package libremoteio-templates, by running the following command from a Linux or Windows command line:

dotnet new install libremoteio-templates

The above command will install a .Net 8 application program project template called csharp_console_libremoteio. You can then create a project using it with commands like the following:

mkdir myprogram
cd myprogram
dotnet new csharp_console_libremoteio

On Windows, after you have run the dotnet new install command above, Visual Studio will automatically pick up the csharp_console_libremoteio project template. You can then create a project using it with FileNewProject... and then search for libremoteio.

Remote I/O Protocol Servers

A free and open source Remote I/O Protocol server framework written in Ada for Linux is part of the Linux Simple I/O Library. See test_server_dummy.adb.

Some board specific example Remote I/O Protocol server programs for MuntsOS Embedded Linux using that framework are available here.

The MuntsOS Embedded Linux GPIO Thin Servers for BeagleBone, PocketBeagle, and Raspberry Pi boards include Remote I/O Protocol support.

Two commercial USB HID Remote I/O Protocol server products available for purchase on tindie.com, both of which use reprogrammed Adafruit MCP2221A breakout boards.