boneIO

A low level GPIO library for the BeagleBone board family

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version Unknown
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-21 05:24

Installation

nimble install boneIO
choosenim install boneIO
git clone https://github.com/xyz32/boneIO

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
boneIO - - - - - - -

Source

Repository https://github.com/xyz32/boneIO
Homepage https://github.com/xyz32/boneIO
Registry Source nimble_official

README

BeagleBone GPIO for Nim

GPIO implementation for the BeagleBone black for the Nim language. The implementation is using the sysfs to "talk" to the hardware.

License

The library is licensed under the MIT license.

Install

The library is part of the nimble repository. Use it as you would use any other library.

If you want to install it yourself: cd into the root of the project and run:

nimble install

Useing it with nimble

See Install

In your PROJECT.nimble file add:

[Deps]
Requires: "..., boneGPIO, ..."

Cross compiling

For arm cross compiling download the linaro tool chain. Edit the nim.cfg file and point all the compiles specific paths to the arm toolchain. For example:

arm.linux.gcc.path = "/home/xyz/apps/gcc-linaro/bin"
arm.linux.gcc.exe = "arm-linux-gnueabihf-gcc"
arm.linux.gcc.linkerexe = "arm-linux-gnueabihf-gcc"

Run the nimble build command (or nimble install to get a release optimized build).

TODO

Left to be done: - [X] GPIO - [X] PWM - [X] Servos (needs some testing) - [X] ADC - [X] I2C - [ ] UART - [ ] eQEP enhanced Quadrature-Encoder Pulse - [ ] PRU Support. (After 1.0) - [ ] Implement ASYNC version of the library. (After 1.0)