April 2020
Intermediate to advanced
412 pages
9h 58m
English
Our application uses a new, recommended way of accessing GPIO devices in Linux. Since it was added only recently, it requires the latest version of the Raspbian distributive, buster, to be installed.
The gpiod library itself provides high-level wrappers to communicate with GPIO kernel modules using the ioctl API. This interface is designed for C languages and on top of it, there is an additional layer for C++ bindings. This layer lives in the libgpiocxx library, which is part of the libgpiod2 package along with the libgpiod library for C.
The library uses exceptions to report errors, so the code is simple and not cluttered with checks of return codes. Also, we do not need to bother with releasing the capture's resources; it ...