I'm reminded of a game I used to play as a young boy on long transatlantic flights. Having played Microprose's "F-15 Strike Eagle" on my Apple IIc, I was under the impression that I knew the basics of flying a jet, and would often imagine that the little lever that allows the tray table to be in the stowed position, was actually the flight controls of the 747 in which I was flying. I would "fly" the 747 by tweaking this little lever around as the plane banked this way and that, engaged in a childish fantasy that the flight controls had been routed from the cockpit to the tray latch in seat 19E.
This boyhood game has more to do with VOIP technology than you might think. Let's start with how VOIP works, in a nutshell. When you pick up your home phone, the dial tone you hear is coming from your Vonage box on your home network. When you dial the number you want to call, the number is encoded and sent over the Internet to the Vonage Internet network, where they determine what locale you're trying to call. With knowledge about what locale you're trying to reach, your Vonage device is connected to a Vonage-operated device in that locale, which has been provided with the number you originally dialed. This remote Vonage-operated device is connected to the standard "PSTN" (Public Switched Telephone Network), and completes the phone call, in that local area, as a local (i.e. effectively "free") call.
From then on, all the noises picked up by your phone are converted from analog sound waves into digital voice data which is encoded by your Vonage box on your home network, and sent over the Internet as 1's and 0's to that remote box in the locale you called, which ultimately decodes those 1's and 0's back into an analog sound wave sent over the last few miles of the PSTN network to your intended destination.
Compare this to one of the technologies of yesteryear, analog modem communications. By contrast, the modem is taking almost exactly the opposite approach. A modem is a way of using a standard POTS (Plain Old Telephone Service) line to do digital communication. Your computer, for example, speaks 1's and 0's internally. But when it connects via a "dialup" call, it "modulates" the digital signal into an audio signal, which can then be transmitted over a phone line to another modem which will "demodulate" that audio data into 1's and 0's that it can itself understand natively.
It starts to get interesting when you combine these technologies. Not out of choice, mind you. People who buy Vonage service are looking to kick their crufty old RBOC (Regional Bell Operating Company, i.e. Qwest in my case) to the curb. And the geeky early adopters who'd sign up for Vonage are probably just that teensy bit more likely to also be somewhat ahead of the adoption curve on technologies like Satellite TV and TiVo too. Enter DirecTiVo, which, at least until recently, only shipped with the ability to get certain updates from the TiVo "mothership" over its built-in analog modem.
Perhaps you see where I'm going with this. If not, let me break it down thusly: A Linux-based TiVo box, which encodes its 1's and 0's as a modulated analog signal for delivery via a telephone line, dials a number in an area code over a simulated phone line which in reality is being proxied through an Internet gateway, which means it gets re-encoded into 1's and 0's again, gets delivered across the Internet as tiny little TCP/IP packets, gets re-assembled on the other end as a stream of digital bits, undergoes a digital to analog conversion into voice data, and is finally picked up by a modem on the other side, and undergoes a final analog to digital demodulation to complete the circuit.
And if that didn't make a whole lot of sense, it's nearly akin to making an European train with a 1m running gear operate on an American guage track 3ft. across using nothing but baling wire and popsicle sticks to build a mechanical coupling between the two. And if that
didn't make sense, suffice it to say that "Vonage is from Mars, and DirecTiVo is from Venus".
Clear as mud so far? Great.
Well, after hours of troubleshooting (read: twiddling the tray table dial) I seemed to find a way to make it work (read: I am under the illusion that I'm actually flying the 747 from seat 19E).
First, however, I should tell you a little about my setup.
- DirecTiVo: RCA DVR39
- Linksys WRT54GP2; Firmware Version 1.28.00; Voice Version 3.1.3(LI) [find your version at http://192.168.your.iphere/Voice_Info.htm]
The key to making it all work is to fool your TiVo into dialing into a Manhattan phone number. I'm not sure why this is key. I'm guessing that Vonage's Internet network is low-latency and high quality of service between most points in the United States and New York, and so too, most likely, are most of our broadband connections. Couple that with high quality phone lines between the Vonage networks and the telephone company's central office in South Manhattan, and we've effectively got a few of the flight controls such that they'll be responsive to the tray dial in seat 19E. Since not all of us originally put the 212 area code into our TiVo's, we need to trick the TiVo box into using this number.
Another key is to make a "high quality" phone call by using the *99 prefix which I'm guessing tells your Vonage device "I'm going to make a data call, so don't use lossy compression like you would on a standard voice call".
You also want to tell your TiVo box to use "low band" communication with its modem, with a prefix like #096 (9600 bps), #019 (19,200 bps), #034 (34,800bps). The idea here is that in the encoding/decoding, the less modulation you do per second, the less likely one of the fragile links in this outrageous chain of technology is to break.
And finally, since you've slowed the data rate for communications waaaaaaaaaaaay down, your data calls are going to take much longer, which means you should also inform your Vonage device to turn off call waiting (code: *70), which would really be a bummer since an incoming call would impose an audible beep into your data call and cause the whole thing to fall apart somewhat unspectacularly.
This results in the following settings:
Dial Prefix: 12122773895
Call Waiting Prefix: *99,,*70,,#019,,
Phone Available: Off
Dial Tone Detect: Off
Now, I'm pretty sure the FAA would never allow any 747 to take off with it's flight controls, hydraulic lines and electrical systems wired into seat 19E. But so long as the pilots are known to be dead in the cockpit, everyone else on the flight is in mortified terror, and you're the only one who has the gumption to take any action, perhaps a little seatback rudder and stick action won't crash and burn every time your 747 comes in for a landing. In other words, your mileage may vary, but I've managed to make a few successful calls with this setup which enabled me to at least complete a test call whereas before I couldn't connect at all.
I'm still running TiVo version 3.1.1e01-2-121 as of this post -- stay tuned to see if I can stay connected long enough to complete a firmware upgrade with these settings.