Re: Verizon Express Network (1X, 3G) Under Linux
From: Jared (ziplux_at_attbi.com)
Date: 07/10/03
- Next message: David Schwartz: "Re: Full duplex socket communication"
- Previous message: Nathan Higgins: "Re: Task, allow nodes to connect via WLAN but not talk to each other"
- Next in thread: Jared: "Re: Verizon Express Network (1X, 3G) Under Linux"
- Maybe reply: Jared: "Re: Verizon Express Network (1X, 3G) Under Linux"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 9 Jul 2003 19:40:41 -0700
Thank you for posting this information! It is the most concise and
complete guide I have seen for getting this type of setup working.
I've got the same phone as you (Motorola v120e) and I just picked up
the cable so I'll definitaly try this.
I read on a message board I frequent that all Verizon phones get free
Express Network service if they were activated after June 1, 2003.
I'm going to call up Verizon and attempt to confirm this, but I think
I may just try to connect to the Express Network and see if it works.
Can anyone else with a Verizon phone confirm this?
celldev@gearnine.com (Mitch Walker) wrote in message news:<7e176081.0306272349.44d0ea67@posting.google.com>...
> This is an answer, not a question. Sorry in advance for the
> prolicity.
>
> I've spent the last week slamming my head against a wall trying to get
> a linux machine (Kernel 2.4.21) talking on the new Verizon Express
> Network by way of a Motorola v120e handset. Hours on the phone with
> Verizon's tech support got me nowhere. Most of them didn't even know
> what Express Network was. Somehow, through a lucky blend of divine
> inpiration and raw force of brute heuristics, I got the damn thing
> working. I'm just writing this to pass the word on. If this helps
> ANYONE, please drop me a line. I'd like to know I've saved someone
> else the days of toil and frustration I just went through.
>
> The answer to the problem is simple, and if Verizon documented their
> system at all, it'd be easy to find.
>
> The 1X (Express Network) server uses CHAP MD-5 AUTHENTICATION over
> PPP. That took me three whole days to find out. Let's just savor it
> for a moment... CHAP MD-5.
>
> If that doesn't instantly trigger a "EUREKA!" equivalent, here's the
> blow-by-blow walk-thru:
>
> 0. Sign Up for Express Network
>
> The natural 0th step in getting most commercial services to work is
> busting out the pocketbook. You need to call Verizon and specifically
> set up the Express Network feature. This is greatly confounded by the
> fact that most of the reps don't know anything about it (as of this
> writting). Most of the reps I talked to suggested that I might mean
> Mobile Office, but that's just the low speed ISP that everyone gets
> stock. Express Network is a very specific feature that only works on
> 1X compatible phones, only works in a few key cities and costs an arm
> and a leg. As I'm writting this, it costs about $80/mo for unlimitied
> access (doesn't eat into air time, either, so they call it
> promotional. Promotional, for $80/mo?! God save us all from the
> regular service, then.) I think the cheapest plan is $35/mo for 150
> minutes that also costs you air time. Anyway, if you're reading this,
> you've probably wrapped your head around the costs... and if you're
> going to put down that kind of money, you're certainly going to want
> it working. So here's the technical junk:
>
> 1. USB Setup.
>
> I connected my handset with a cheap USB cable, but I suppose you could
> do it through the parport or serial port(?). I'll explain USB here,
> since that's what I know (and it's most common). You need to compile
> your kernel with USB support (obviously). Make sure you compile the
> module or built-in for the hub type you're using (UHCI or OHCI). When
> in doubt, it doesn't hurt to go with both. In addition, make sure to
> compile the ACM (Abstract Comm. Module) module. That's the guy who
> talks to your phone. I think it comes up as "USB modems" or something
> in the kernel config.
> ** IMPORTANT **
> If you're compiling Linux 2.4.20 or before, YOU MAY NEED TO MODIFY THE
> ACM MODULE a little so it will detect your phone. I know the Motorola
> v120e needed modification to the ACM.
> Find this function near the end (~line 653) of
> /usr/src/linux/drivers/usb/acm.c:
>
> static struct usb_device_id acm_ids[] = {
> { USB_DEVICE_INFO(USB_CLASS_COMM, 0, 0) },
> { }
> };
>
> In older code, the define USB_CLASS_COMM isn't used; it's just the
> number 2.
> Add another call to the USB_DEVICE_INFO macro with args
> USB_CLASS_COMM, 2, 0, so it looks like this:
>
> static struct usb_device_id acm_ids[] = {
> { USB_DEVICE_INFO(USB_CLASS_COMM, 0, 0) },
> { USB_DEVICE_INFO(USB_CLASS_COMM, 2, 0) },
> { }
> };
>
> Compile this and it should do you proud.
>
> Once the new kernel and mods are up and running, plug in the phone.
> It should squeek and possibly light up if it can draw enough power
> from the USB to relieve its batteries. Tail the message log. It
> should rattle on about registering a USB device. If you're using a
> recognized phone, the name of the handset should appear somewhere near
> the end. That's a really good sign that it's working. Near the name
> of your phone should be a line like:
>
> Jun 24 15:57:16 nomad kernel: ttyACM0: USB ACM device
>
> This means the phone is tied to the device ttyACM0 (may be different
> on your machine). Look for this file in the /dev directory (it may be
> under a sub, like input/) and memorize its location. Essentially,
> this file IS the phone as far as the kernel's concerned. If you want,
> set up a less cludgy symlink, like /dev/phone.
>
> 2. Check Your Phone
>
> Check to see if your phone was properly set up with the system. If
> you have a terminal emulator like minicom, just point it to your phone
> device (/dev/input/ttyACM0 with my setup) and try to dial out. Type
> 'ATDT555555' (where 5555555 is your landline or nearby city phone and
> you don't type the 's). First of all, if you can type at all, things
> are going well, and the phone's screen should light up and say it's
> calling. Then the target phone should ring. If this works, you're
> almost there. If not, you need to hack at the USB stuff more, or
> maybe just check the connections on the cable (mine is amazingly
> fickle).
>
> 3. Set up a Dialer Script
>
> Most modern distros of Linux ship with wvdial these days, or some
> equiv. My thinking is "Smoke 'em if you got 'em". You gain a little
> extra control by going the grizzled pppd-and-chat route, but I didn't
> need it, and nothing could actually be MORE esoteric than chat and
> pppd. Never-the-less, I'll include the appropriate chat/pppd call
> here.
>
> But first, wvdial. Your /etc/wvdial.conf file should look like this:
>
> [Dialer Defaults]
> Modem = /dev/input/ttyACM0
> Baud = 115200
> Init1 = ATZ
> Init2 = AT$QCMDR=3
> Modem Type = Digital Modem
> Phone = #777
> Username = 5555555555@vzw3g.com
> Password = vzw
> Stupid Mode = on
>
> Modem is the device that's assigned to your phone. The username is
> your 10-digit number @vzw3g.com (3G network, get it?). Everyone's
> password is vzw. Stupid mode just starts PPP negotiation immediately.
> Saves waiting for a timeout on the log in prompt. You may not need
> the other entries... if parsimony's your kick, read the man pages and
> weed out the fluff. This posting isn't gospel.
>
> If you don't have wvdial or all that black-boxing galls you too much,
> here's a functional call to pppd/chat. Don't say I didn't warn you
> about the esoteria:
>
> pppd /dev/input/ttyACM0 115200 debug connect \
> "chat -vs '' AT OK ATDT#777 CONNECT '\d\c'" \
> nobsdcomp nodeflate noauth user 55555555555@vzw3g.com defaultroute
>
> You may not need to disable bsd compression, deflation or two-way
> authentication, but I was trying to keep things simple (and you might
> not have the mods).
>
> You can try running wvdial or pppd/chat now, but you won't get in, and
> that's the joke. It'll connect and the phone should say something
> like "Packet Data", but after a few seconds it'll konk out. This is
> the problem I'd been railing against for 72 hours and that no one at
> Verizon knew anything about. So, finally, here's the key you've all
> been waiting for--
>
> 4. Set up a CHAP User/Pass
>
> The confusing thing is that wvdial (or pppd/chat) has your user/pass,
> but, if you watch it, it won't use it. That's because it's waiting
> for a plain-text prompt which never comes (Stupid Mode spares you the
> fruitless waiting process). The server actually authenticates through
> a method called CHAP (CHallenge Authentication Process?), and that's
> pppd's job. The pppd will authenticate with CHAP if you've got a
> record in the /etc/ppp/chap-secrets file. Modify that file to look
> something like this:
>
> # Secrets for authentication using CHAP
> # client server secret IP addresses
> 5555555555@vzw3g.com * vzw *
>
> Again, replace the 5s with your number. The asterisks simply mean
> this record applies to all servers and IP addresses (note the table
> headers).
>
> AND...
>
> THAT'S IT.
>
> Once you've put this record in the /etc/ppp/chaps-secrets file, you
> can fire up wvdial or pppd/chat and enjoy all the wonders of
> high-latency, exhorbitant wireless networking. With Linux, no less.
> Will wonders never cease.
>
> 5 (opt.) Low Speed (QNC/Mobile Office/14.4k) Connection
>
> On an optional note, even if you don't subscribe to the special
> Express Network service, anyone can set up a low speed data-link with
> verizon for any nerdy emergencies that might require it. Just follow
> the above steps, but instead of the initialization string
> "AT$QCMDR=3", substitute "AT$QCMDR=2". It's my understanding that
> this Hayes code loads a register in the phone (QCMDR) with the
> connection requested, which is used for routing by Verizon. Allowable
> values are:
>
> 3 = Express Network (High Speed)
> 2 = Mobile Office (14.4kbps)
> 1 = ?
> 0 = PDAs? (Just kicks me out...)
>
> Anyway, that's not really important. Back to Mobile Office: note that
> it costs you air time, so be careful when you use it. In theory, it
> yields a 14.4k pipe, but in practice its even slower, and with the
> same regretable latancy of Express Network, you'd better be thinking
> "POP3" instead of "PINE through SSH or Telnet". You won't live long
> enough.
>
>
> Anyway, that's the deal. I've never posted to these groups before,
> but after days of desperately searching them for help, I thought I'd
> better start. If it saves even one other guy the torment of nebulous
> error messages and well-intentioned-but-under-trained help-desk
> attendants, then I've done my job. I hope it helps.
- Next message: David Schwartz: "Re: Full duplex socket communication"
- Previous message: Nathan Higgins: "Re: Task, allow nodes to connect via WLAN but not talk to each other"
- Next in thread: Jared: "Re: Verizon Express Network (1X, 3G) Under Linux"
- Maybe reply: Jared: "Re: Verizon Express Network (1X, 3G) Under Linux"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|