Linux Simple I/O Library

libsimpleio is an attempt to encapsulate (as much as possible) the ugliness of Linux I/O device access. It provides services for the following types of I/O devices:

Although libsimpleio was originally intended for Linux microcomputers such as the Raspberry Pi, it can also be useful on larger desktop Linux systems.

The C wrapper functions exported by libsimpleio all follow the same uniform pattern:

All of the C wrapper functions are declared between _BEGIN_STD_C and _END_STD_C for C++. Additional source code libraries are provided for Ada, C++, C#, Free Pascal, Modula-2, and Python that define OOP (Object Oriented Programming) thick binding classes for libsimpleio.

Documentation

The user manual for libsimpleio is available at UserManual.pdf. Installation instructions are on pages 6 and 7.

The man pages specifying the libsimpleio API are available at libsimpleio.html.

Git Repository

The libsimpleio source code tree is available at:

https://github.com/pmunts/libsimpleio

Use the following command to clone it:

git clone https://github.com/pmunts/libsimpleio.git

Debian Package Repository

Prebuilt libsimpleio packages for Debian Linux are available at:

http://repo.munts.com/debian12

Alire Crates

libsimpleio mcp2221 remoteio

The Munts Technologies Alire crate index fork is available at:

https://github.com/pmunts/alire-index.git

Use the following command to reference it:

alr index --add git+https://github.com/pmunts/alire-index.git --name pmunts --before community

NuGet Packages for .Net

libremoteio libremoteio-templates
libsimpleio libsimpleio-templates

Use one of the following command sequences to create a .Net program project:
dotnet new install libremoteio-templates
dotnet new csharp_console_libremoteio -o myprogram
Or
dotnet new install libsimpleio-templates
dotnet new csharp_console_libsimpleio -o myprogram

Questions or comments to Philip Munts phil@munts.net