Control a Raspberry Pi's hardware from Ruby. GPIO goes through libgpiod v2 — the Linux GPIO character device (uAPI v2) — rather than the deprecated sysfs interface. PWM is either the hardware peripheral through sysfs or timed in Ruby on any line; I2C and SPI are ioctl calls on /dev/i2c-N and /dev/spidev, needing no libgpiod at all. On top sits a gpiozero-style device layer: LED, Button, Motor, PWMLED, RGBLED, Servo, RotaryEncoder, and drivers for the ADT7410 temperature sensor, ST7032 character LCD, MCP3208 ADC, ILI9341 colour TFT and XPT2046 touch panel. Bound through the stdlib `fiddle`, which is built with the interpreter and so matches any Pi's architecture, unlike the precompiled `ffi` gem.

Required Ruby Version

>= 3.3

Authors

ITO Yosei

Versions

  1. 0.1.1
    1. source

      1. 0.1.1 source October 23, 2026 (68 KB)
  2. 0.1.0
    1. source

      1. 0.1.0 source September 29, 2026 (69.5 KB)

Pushed by

SHA 256 checksum