Stokes’ ProjBlog

A journal documenting innumerable, mostly terminally in-progress undertakings. Nerdiness abounds.


Hanging on the Telephone September 25, 2013

Filed under: Miscelaneous Projects,New project! — Stokes @ 2:04 am

rotary-dialWith the Atari keypad working, I want to adapt another old input device to work with modern machines. I’m going to set my sights a bit further back this time.

When I was in my single-digit years, I was given a broken telephone to play with: a standard Bell desktop model with a rotary dial, nearly identical to the other phones in the house. I discovered that a flashlight bulb and battery could be wired to the dial so that the bulb would blink when a number was dialed. Not just blink, I noticed: blink the same number of times as the number dialed. I also noticed that the bulb was normally on, and would wink off when dialing — the opposite of the way I expected a switch to work. These observations lead me to discover that a real phone could be dialed by quickly tapping the switch hook. I suspect I dialed a few wrong numbers during my research, but I was so thrilled by my discovery that I can’t remember them now. I may not have noticed them then, either.

My new project: create a USB rotary numeric ‘keypad.’ I know this has been done before, but as a tribute to my early experiments, I’m going to do mine without any research from the ‘net. This will be a purely experimental venture.

dial-backThe dial I’m using is of relatively modern make; it appears to be date-coded February 1982. It has four wires: two blue, two white. Each like-colored pair is attached to a leaf switch. The blue pair’s switch is normally closed and opens for each pulse of the number dialed; the white pair’s switch closes while the dial is in motion. The latter I did not remember; I was planning on having to start/restart a timer with each dialing pulse, and then send the total pulse-count when the timer expired, but the white switch simplifies things.

For the microcontroller in this project, I’m going to use a Digispark, a small, cheap, and somewhat Arduino-compatible board. I’ve had one sitting around for months; I’d nearly forgotten about it. Its standard libraries include software USB keyboard emulation, but using it requires two of the board’s six I/O pins. Since I only need two for the rotary dial, the Digispark perfect for this project.

More to follow.


Leave a Reply

You must be logged in to post a comment.