Writing
·
Notes
·
Projects
···
~/ projects/

#school #technology

Rotary Interface System

This was a project I completed in my first year at UCSB for an introductory computer engineering class.

Abstract

phone outer

This project repurposes the interface of a rotary dial telephone by integrating its original dial, hook switch, and wiring with a modern speaker and arduino microcontroller. The system runs native C++ via the Arduino Environment and uses audio playback and onboard storage to support software-driven experiences such as audio players, branching menus, and utility applications. Files and programs can be updated over USB through the Arduino IDE or via MTP without opening the enclosure, and the device can operate from any 5V USB power source, enabling fully portable use.

Parts List

inside phone

  • MAX98357 I2S Amp Breakout
  • Teensy 4.1 Microcontroller
  • 4 Ohm 2.5W Thin Speaker
  • Sparkfun Electret Breakout Microphone1
  • 1960’s Automatic Electric Rotary Dial Monophone
  • Assorted Assembly Equipment (Breadboards, Wires, etc)

How it works

phone

The phone functions as a finite state machine, defined by a CSV-based configuration file. At startup, The teensy parses this to build the menu system and load wav files. State transitions can be triggered automatically, via rotary-dial input, or by detecting handset on/off hook events.

Both the hook switch and rotary dial interface through input-pullup pins that detect momentary connections to ground. The hook switch provides a simple steady on/off signal, while the rotary dial generates a timed sequence of ground pulses; by counting these pulses within a defined window, the system derives the user’s numeric input.

Future Improvements

Aside from material delays, the main issue in the final build was wiring. Reusing the phone’s original four-wire harness left only two lines for the amp output and two for the microphone’s VCC and audio. I attempted to share the speaker’s “ground” with the mic, but the amp’s output is not a true ground reference, so the microphone could not operate without its own dedicated ground line. Replacing the handset or running a new ground wire would enable usage of the mic with the speaker.


Footnotes

  1. Not implemented in final project, (See Future Improvements). ↩

© mmxxvi npn

Click the Yin-Yang to toggle theme