Introduction: Rotary Phone Puzzle for My Breakout Game
A couple of weeks ago i bought a old rotarie telephone on the internet. Finally i had some free time to make a new puzzle part voor my breakout game. My idea is to use the telephone as a input device, a player have to try to fine the right phonenumber.
because i am not so good in programming i first lookt on the web for some samplescodes en lucky enough i found a youtube video from a guy here in the netherlands. I send him an e-mail with a request if it whas possible that he send me his arduino code of his project. Lucky enough i received a email back with the arduino code en schematics.
my rotary model have 3 wires : blue , yellow and red
4 Comments
5 years ago
Hey guys.
I’ll tell you what... I’ve been down this road and I have several phones running in escape rooms.
I just finished my newest iteration of my SD card version. Which uses an SD card to store and play custom audio recordings. It also lets you control up to 7 pins based on number dialed should you decide to have multiple triggers based on phone number..
I’ve also built in file based pin configuration and triggering.
Best part is that I use no shields.
Reply 4 years ago
Hi Sigmaz,
Would you share this? Does it recognises pulse, off-hook and play sound all from arduino without shields?
-Dominic
Reply 4 years ago
Check my RotaryLockSD3 instructable and see if it fits your needs.
I use an SD card adaptor wired directly to SPI for storage and all of the sounds are played via the arduino without any audio shields.
I’d be glad to fill in any info you might need.
I am a terrible Instructable writer.
5 years ago
As I am making a final version of this, I chose the Adafruit Feather + Feather Music Maker for my hardware platform. But this board works on 3.3.V instead, and I didn't know how to change the resistors.
So I decided to do the following with my Dutch PTT / Ericsson phone: connected Blue to pin 3, Red to pin 4, Yellow to Ground. No more resistors. Use INPUT_PULLUP and you're done, basically.
The Blue wire will connect to ground when the dial is turned a bit: an indicator that someone's using the dial.
A very short piece of code to let you see what happens on both pins:
int inRed = 4;
int inBlu = 3;
unsigned long tijd = 0;
void setup()
{
Serial.begin(9600);
pinMode(inRed, INPUT_PULLUP);
pinMode(inBlu, INPUT_PULLUP);
Serial.println("Setup gereed");
}
void loop()
{
int readRed;
int readBlu;
readRed = digitalRead(inRed);
readBlu = digitalRead(inBlu);
if (readBlu == 0) {
Serial.print("Pin2: ");
Serial.print(readRed);
Serial.print(" Pin3: ");
Serial.print(readBlu);
Serial.print(" Tijd: ");
Serial.print(millis() - tijd);
Serial.println();
if (tijd == 0) {
tijd = millis();
}
}
}