periph is a Go library that unifies hardware I/O on single-board computers and embedded Linux devices, exposing clean interfaces for GPIO, I²C, SPI, UART, PWM, and more. Its philosophy is “no daemon, no codegen”—you link a Go package and speak directly to the hardware via stable abstractions, keeping deployments simple and auditable. The project auto-detects host capabilities at runtime and selects the best driver backend, smoothing over kernel and board differences across Raspberry Pi, BeagleBone, and other platforms. A large set of device drivers (sensors, displays, LED controllers, storage, RTCs) give you batteries-included building blocks for prototypes and production systems. Command-line tools like periph-info help verify wiring, enumerate buses, and inspect capabilities before you ship. The API favors composability and testability, so you can mock buses and pins and keep logic unit-testable even when targeting real hardware.

Features

  • Unified Go interfaces for GPIO, I²C, SPI, UART, PWM, 1-Wire and more
  • Host detection and backend selection for popular SBCs and kernels
  • Growing catalog of sensor and display drivers with examples
  • Zero-daemon, zero-codegen deployment with plain static binaries
  • CLI utilities for board inspection, bus probing, and quick validation
  • Mockable connections for unit tests and CI without hardware attached

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

Apache License V2.0

Follow Periph

Periph Web Site

Other Useful Business Software
Get the most trusted enterprise browser Icon
Get the most trusted enterprise browser

Advanced built-in security helps IT prevent breaches before they happen

Defend against security incidents with Chrome Enterprise. Create customizable controls, manage extensions and set proactive alerts to keep your data and employees protected without slowing down productivity.
Download Chrome
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Periph!

Additional Project Details

Programming Language

Go

Related Categories

Go Libraries

Registered

2025-10-10