libgpiod V2: New Major Release with a Ton of New Features
summary
libgpiod v2 implements a redesigned user API: immutable line info snapshots, separated request config vs line config to avoid reconfigure mistakes, per-request file-descriptor objects with an edge-event buffer to avoid reallocations, line watch/info events to notify status changes, and per-line plus global sequence numbers for ordered events. Kernel side uses the new GPIO character device v2, testing uses gpio-sim via configfs, bindings exist for C, C++ and Python with Rust in progress, CLI adds gpio watch and interactive gpio set; release pending.
AI-written summary · about
chapters (12)
- 0:00Introduction and speaker background
- 3:15Why libgpiod exists
- 7:08Kernel GPIO character device recap
- 10:25Limitations of libgpiod V1
- 15:25libgpiod V2 API overhaul
- 17:14New line watch feature
- 19:44Compound line configuration
- 22:13Sequence numbers for events
- 23:16Testing with gpio-sim
- 25:05Language bindings and CLI tools
- 27:51Resources and getting involved
- 28:34Q&A on bit-banging and eBPF
related talks
32mLibgpiod V2: New Major Release with a Ton of New Features
44mNew GPIO Interface for User Space
23mGive Me Back My GPIO Persistence Intro to the libgpiod GPIOManager
23mGive Me Back My GPIO Persistence Intro to the libgpiod GPIOManager
51mGPIO for Engineers and Makers
48mPin Control and GPIO Update
35mCompound Interest - Dealing with Two Decades of Technical Debt in Embedded...
37mIntroduction to Pin Muxing and GPIO Control Under Linux
