Cookies and Capacitors

Siri-enabled bluetooth rotary phone

Tue, Dec 13, 2011 at 4:05AM

Siri Rotary

Today, I’ve been participating in a twenty-four hour hack-a-thon. Tired of coding all day (what exactly that was, I’ll post later), I switched focus on hardware hacks to keep my mind fresh.

Since October, when Apple released the iPhone 4S with Siri, I’ve been kicking around the idea of using the Siri service as a virtual operator. Back in the old days (I’m not sure if I’m “qualified” to say that) telephone users could, at a premium charge, dial zero to have an operator arrange a call with someone, given you knew who they were or where they lived. Siri is remarkably similar to an old-fashioned operator; when it comes to automatic dialing, her impersonation is spot-on!

My surplus bags contained everything I needed to rig up a quick-and-dirty Siri system. Rotary telephone (bought non-functional): check. Bluetooth headset (only $2 from eBay): check. That’s it! Two pieces.

Onwards! Let’s rip apart this cheap, little bluetooth headset.

Bluetooth headset

Bluetooth headset circuit board

Ripping apart the bluetooth headset

First of all, let’s re-locate that button. Since the headset is going inside the telephone, that button isn’t doing any good attached to that circuit board.

Relocating bluetooth headset button

Let’s relocate that speaker while we’re at it.

Relocating bluetooth headset button

Extending the speaker to the handset

The handset already had wires leading to the base from it’s past life. I can utilize these to extend the button which enables Siri, and to extend the charging port.

Handset wires

Now to fit the rectangular circuit board into the round handset…

Circuit board

All that’s left to do is connect the headset’s button to the rotary encoder wheel. When a number on the wheel is dialed, the two white wires close. Their connection-duration depends on which number is dialed: the higher the number, the longer they are connected. This is why I dial “one” instead of “zero.” Dialing zero holds the button down too long.

To clear up some confusion, there is another pair of wires coming from the encoder wheel that have a normally closed state, and open X times, where X equals the digit dialed. I am not using these mainly because their normally closed state adds unnecessary complexity to this quick and dirty hack.

Wires from handset

Easy terminals

And we’re done!

Finished rotary phone

Finally, here’s a demo video. This was quite the easy hack, I hope someone out there extends upon it. Maybe, if I come back to it, I’ll use an ATiny (I have a few on-hand) as a wrapper for the encoder wheel so I can dial zero. However, the wait from dialing zero feels like an eternity. :/