THIS 1960S ROTARY PHONE ANSWERS YOU BACK - A TINY COMPUTER HIDES INSIDE

Lift a 1960s handset, dial a number, and ChatGPT answers through the original earpiece.

by Zoltan Toth-Czifra

FULL CAD BOM FIRMWARE DOCS

AutomationAI

difficulty
●●●○○
time
a weekend
license
MIT
repo
repo ACTIVE56 stars

WHAT YOU’LL NEED

  • Dev board / microcontrollerruns the project firmware

Partner

Run your scrapers in the cloudThis build needs data collection that runs 24/7. Apify's free plan includes $5 in credits every month — no card needed.Try Apify free
1

COMPAREE VERDICT

This is a retrofit, not a kit. You find a rotary phone at a thrift store or online, open it up, and wire a Raspberry Pi to the dial pulses, the hook switch, and the ringer. Zoltan's Python code handles the rest: it counts dial pulses, streams audio to OpenAI's API, and plays responses through the earpiece. The ringer still works, triggered by a relay when an assistant call comes in. The hardest part is not the code — it is identifying which wires in your particular phone carry the dial pulses and whether the ringer runs on mains voltage or a lower supply. Every phone is different, and the README assumes you can read a multimeter and are comfortable opening a decades-old device. If you have never worked with rotary mechanisms before, budget an afternoon just for the wiring detective work. The payoff is a conversation piece that actually works, and the MIT license means you can sell these at a maker fair if you want to. One thing to know: every conversation costs API credits, and a five-minute chat can add up if you forget to set spend limits in your OpenAI account.

NOT IN THE REPO

  • Python code and setup instructions are in the repo, MIT license permits commercial use.
  • No bill of materials — you source your own phone, Raspberry Pi, USB sound card, and relay board.
  • No CAD files; this is a retrofit, not a print.
  • The README walks through wiring the rotary dial and hook switch, but you adapt to your phone's internals.
  • Home Assistant integration code is included for home-automation dial codes.
  • You bring your own OpenAI API key; usage costs apply per conversation.

Can I build this?

Printnothing required
Buyrotary phone (thrift store or online), Raspberry Pi (3 or 4), USB sound card, relay module, jumper wires
Toolsmultimeter, soldering iron, screwdriver set, OpenAI API account
Skillsbasic Python, GPIO wiring, comfortable opening vintage electronics and tracing circuits
Timea weekend — longer if the phone's internals are unfamiliar
Cost$$ — the phone ($20-60), Pi and accessories ($50-80), plus ongoing OpenAI API usage
SafetySome rotary phones have mains-voltage ringers. Check with a multimeter before touching any ringer wires. Disconnect from the wall entirely before opening the case.

This build involves mains voltage — for adults comfortable with electrical work only.

Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.

Ultra-thin power bank that fits anywherePartner · Kickstarter
Ultra-thin power bank that fits anywhere

CORE POWER BANK S: 0.2" thin, 2.8 oz, 5000 mAh with 22.5W fast charging. Semi-solid battery, carbon fiber, IPX7 waterproof.

Learn more

Videos

I built ChatGPT into my rotary phone and made it sound German

Gallery

https://opengraph.githubassets.com/dda511dfa27d644ce853f29012eaaac400d41722e8681d49875a3c2d50cd1449/tcz/rotary-gpt
https://img.youtube.com/vi/y9bsL0o6I-A/maxresdefault.jpg

Start here

Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.

  1. 1.Read the README hardware section and identify your phone's dial and hook-switch wiring (Every phone is different; budget time for tracing wires with a multimeter.)
  2. 2.Install the Python dependencies and test the dial pulse counter before wiring audio (Confirming the dial works first saves debugging audio issues later.)
  3. 3.Set up your OpenAI API key and test with a short prompt to confirm billing limits(Conversations cost per token; set a monthly cap in your OpenAI dashboard.)

Resources

Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.

KNOWN ISSUES

  • Buying a phone with a mains-voltage ringer and not realizing it until you have the case open — check the model online first.
  • Not setting an OpenAI API spending cap and running up a bill during testing.
  • Assuming all rotary phones wire the dial the same way — they do not, and you will need a multimeter to find the pulse contacts.
  • Plugging the Pi into the phone's original wall jack and expecting it to work — this project bypasses the phone network entirely.
  • Using a Raspberry Pi Zero without confirming the USB sound card draws low enough current — some cards brown out the Zero.
  • Forgetting that the relay for the ringer may need a separate power supply if your Pi cannot source enough current.

Does the phone need to be connected to a landline?

No — the Pi replaces the phone network entirely. You never plug the phone into a wall jack.

Can I use this with a different AI service instead of OpenAI?

Yes, but you will need to modify the API calls in the Python code. The repo is structured for OpenAI's streaming format.

How much does each conversation cost?

OpenAI charges per token; a typical five-minute chat runs $0.10-0.30 depending on the model. Set a spending cap in your account.

Will this work with a push-button phone instead of rotary?

The code is written for pulse dialing. Push-button phones use DTMF tones, which would require different detection logic.

Community builds

No community builds yet — be the first, we feature the best ones.

Discussion1

FROM THE COMPAREE TEAM

Every rotary phone wires the dial differently — some use normally-open contacts, others normally-closed. Which wires did yours use, and did you need to add debounce logic?

CompareeTEAM23d agoedited

Practical notes from our verification: the repo is recent and actively maintained, the MIT license is clear, and the code is well-commented Python that anyone comfortable with GPIO can follow. The single biggest variable is the phone itself — some have mains-voltage ringers that require extreme care, others are low-voltage throughout. Zoltan's README assumes you can trace circuits with a multimeter, which is the right assumption; if you cannot, this build will frustrate you. The home-automation integration is a nice bonus, but the core appeal is the conversation piece: a phone that rings, dials, and talks back through the original earpiece.

Zoltan Toth-Czifra

Zoltan built this as a way to make AI conversational in a tactile, nostalgic form factor. The project grew out of home-automation experiments where dialing specific codes could trigger lights and routines.

GitHub

Star the project on GitHub

DISCLAIMER

  • Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
  • Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
  • Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.