Python, asyncio, libgpiod, and Pointless Blinking
06.04.2024 , HS i2
Sprache: English

Python's lovely asyncio library allows me to write event-driven programs in a style that looks much like multithreaded code but isn't. Combining asyncio with the equally lovely Linux GPIO subsystem is just another logical step. In this talk I show what asyncio is, how libgpiod works, and how both are used to do pointless projects.


Continuing the story of pointlessly blinking lights from my last year's talk, I show

  • How GPIO interrupts are configured to get notified of hardware button presses, and how this can look like in Python (hint: generators, and iteration).
  • How button-events can be used in an async programming style (hint: asyncronous generators, and async for).
  • How this fits into the pointless project of blinking lights.

Additionally, I give an overview of async libraries that are more to the point, like

  • Textual, a terminal UI framework
  • python-sdbus, the Python binding for the systemd D-Bus client implementation

"Slide" material available on my homepage

  • Born in Graz, and bound to die in Graz
  • Been around as an employee in and around Graz for many years
  • Self employed as trainer and consultant for even more years
  • https://www.faschingbauer.me