Show HN: Rotary Phone Dial Linux Kernel Driver

146 sephalon 12 5/24/2025, 1:02:00 PM gitlab.com ↗
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.

Comments (12)

anonymousiam · 47m ago
Back in the late 70's, I made a rotary phone dialer for my HP41C calculator. I connected a NC reed relay to the piezoelectric beeper and put the NC contacts in-line with my telephone line. I used "synthetic programming" (undocumented opcodes) to get the short duration beeps needed for the dialing pulses. I could enter a name (alphanumeric!) and it would look up and dial the phone number.

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

mauvehaus · 1h ago
When the iPhone was just a rumor, I suggested that making it with a touch wheel like the iPods of the time would be a great opportunity to bring back rotary dialing. This was soundly rejected by all present.

Thanks to this, all I need to do is set up a Linux box so I can have that classic rotary vibe!

spicybright · 8m ago
That would have been a hilarious timeline if they just upgraded ipods with cell networking, at least for one model.

Then you can use this for typing: https://www.youtube.com/watch?v=9BnLbv6QYcA

VladVladikoff · 50m ago
I bet there is an app that lets you rotary dial on the touch screen to make calls.
woleium · 19m ago
iirc apple are/were very protective of the phone interface and would not allow apps that replace it.
gchamonlive · 2h ago
About time somebody put that rotary phone to good use and beat Dark Souls with it.
jeroenhd · 3h ago
Very nice! I love these minimal driver implementations. It shows off how little actual code you need for a driver (but also how many flags and kernel methods you need to know exist to make a basic driver work).

>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.

That's interesting (and quite disappointing, though hardly unexpected). I think documenting your approach and the setbacks you've encountered could make for an interesting blog post, if you care about writing such things.

CodeBeater · 1h ago
This article pops up as I have a rotary phone disassembled right on my desk (rewinding the clock spring). Neat coincidence!
jermaustin1 · 1h ago
Real question: how long has the phone been disassembled on your desk?

If you are like me: around 2 years ;).

stavros · 47m ago
I made mine into a mobile a while back:

https://www.stavros.io/posts/irotary-saga/

reaperducer · 1h ago
Need a DTMF version.

There's a guy in Australia who makes tiny line-powered boxes that translate rotary pulses into Touch Tones.

They let me keep using my rotary phones until a few years ago when I moved into a building that had no POTS wiring. Sad.

Daviey · 44m ago
Connect it to a an FXS/ATA and make it a voip phone? I have, agmonst others, a candlestick phone from the 1920's still functional using this.