A Linux kernel driver that turns a rotary phone dial into an evdev input device. You might be interested in this driver if you
- prefer the slow pace of dialing over typing numbers with your numpad,
- want to bring your old rotary phone into the digital era,
- are an educator looking for a simple example driver with a VM-based end-to-end development & test environment (no real hardware needed)
- have another creative use case in mind!
This driver was my introduction to embedded Linux years ago—and ultimately led to my career. However, it remained unfinished and unpublished until now. Initially, I intended to reimplement the driver in Rust to explore the state of the Rust for Linux project. Unfortunately, I soon realized that the necessary bindings simply are not available yet, so that part will have to wait.
About 10 years ago, I met a guy named Keith Jarrett at my company. As I was about to ask him if he was the Keith Jarrett who wrote a HP-41C Synthetic Programming Manual, he interrupted me and said, "No, I'm not the musician. Everybody asks me that." So I finished my question and he was very happy and surprised, because he was the author of the book I had read 35 years prior.
https://picclick.com/HP-41-Synthetic-Programming-Made-Easy-b...
https://www.hpmuseum.org/prog/synth41.htm