2007-02-12

xv6700 gentoo tether

This is how I was able to tether the verizon xv6700 (htc wizard) with gentoo. Use this information at your own risk.

Configure the kernel, you need ppp, ppp_async, ipaq, uhci_hcd

Symbol: PPP [=m]
Prompt: PPP (point-to-point protocol) support
Defined at drivers/net/Kconfig:2467
Depends on: NET
Location:
-> Device Drivers
-> Network device support
Symbol: PPP_ASYNC [=m]
Prompt: PPP support for async serial ports
Defined at drivers/net/Kconfig:2523
Depends on: NET && PPP
Location:
-> Device Drivers
-> Network device support
-> PPP (point-to-point protocol) support (PPP [=m])
Symbol: USB_SERIAL_IPAQ [=m]
Prompt: USB PocketPC PDA Driver
Defined at drivers/usb/serial/Kconfig:192
Depends on: USB!=n && USB_SERIAL
Location:
-> Device Drivers
-> USB support
-> USB Serial Converter support
-> USB Serial Converter support (USB_SERIAL [=m])
Symbol: USB_UHCI_HCD [=m]
Prompt: UHCI HCD (most Intel and VIA) support
Defined at drivers/usb/host/Kconfig:111
Depends on: USB && PCI
Location:
-> Device Drivers
-> USB support
-> Support for Host-side USB (USB [=y])
Install and configure software and kernel.
$ emerge -s wvdial ppp
$ cat /etc/wvdial.conf

[Dialer Defaults]
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
Phone = #777
ISDN = 0
Username = xxxxxxxxxx@vzw3g.com # This should be phonenumber@
Init1 = ATZ
Password = vzw
Modem = /dev/ttyUSB0
Baud = 460800

$ cat /etc/ppp/peers/ver
noauth
name wvdial
connect "/usr/bin/wvdial --chat Defaults"
usepeerdns
ttyUSB0
460800
modem
crtscts
defaultroute

$cat /etc/modules.autoload.d/kernel-2.6
uhci_hcd
ppp
ppp_async
ipaq vendor=0x0bbf product=0x00cf # if OS wont recognize phone, reinsert ipaq *with* options
Now, configure the phone.
   1. Hit Send.
2. Enter ##3328873 and press Send
3. Enter 000000 (six zeros) for the code
4. Now Enable both the BT DUN and Wmodem
5. Tap OK several times and OK to soft reset your device
6. copy wmodem to My Device -> Windows -> Start Menu -> Programs
7. Set connection type to USB
8. click start
9. connect device to system.
Back on the gentoo box.
$ dmesg
...
ipaq 3-1:1.0: PocketPC PDA converter detected
usb 3-1: PocketPC PDA converter now attached to ttyUSB0
usb 3-1: USB disconnect, address 2
ipaq ttyUSB0: PocketPC PDA converter now disconnected from ttyUSB0
ipaq 3-1:1.0: device disconnected
usb 3-1: new full speed USB device using uhci_hcd and address 3
$ sudo pppd call ver
$ sudo tail -f /var/log/messages
Feb 12 22:33:16 gentoo wvdial[25122]: OK
Feb 12 22:33:16 gentoo wvdial[25122]: Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Feb 12 22:33:16 gentoo wvdial[25122]: OK
Feb 12 22:33:16 gentoo wvdial[25122]: Modem initialized.
Feb 12 22:33:16 gentoo wvdial[25122]: Sending: ATDT#777
Feb 12 22:33:16 gentoo wvdial[25122]: Waiting for carrier.
Feb 12 22:33:20 gentoo wvdial[25122]: CONNECT
Feb 12 22:33:20 gentoo wvdial[25122]: Carrier detected. Waiting for prompt.
Feb 12 22:33:49 gentoo wvdial[25122]: Don't know what to do! Starting pppd and hoping for the best.
Feb 12 22:33:49 gentoo pppd[25118]: Serial connection established.
Feb 12 22:33:49 gentoo pppd[25118]: Using interface ppp0
Feb 12 22:33:49 gentoo pppd[25118]: Connect: ppp0 <--> /dev/ttyUSB0
Feb 12 22:33:50 gentoo pppd[25118]: not replacing existing default route to eth0 [xx.xx.xx.xx]
Feb 12 22:33:50 gentoo pppd[25118]: local IP address xx.xx.xx.xx
Feb 12 22:33:50 gentoo pppd[25118]: remote IP address xx.xx.xx.xx
Feb 12 22:33:50 gentoo pppd[25118]: primary DNS address xx.xx.xx.xx
Feb 12 22:33:50 gentoo pppd[25118]: secondary DNS address xx.xx.xx.xx
$ ping www.google.com
PING www.l.google.com (66.102.7.99) 56(84) bytes of data.
64 bytes from www.google.com (66.102.7.99): icmp_seq=1 ttl=243 time=227 ms
64 bytes from www.google.com (66.102.7.99): icmp_seq=2 ttl=243 time=63.1 ms

2 comments:

Phluffy said...
This comment has been removed by the author.
Phluffy said...

Hey, this is an awesome post. I'm doing it with a xv6900 that has a non-stock ROM so I'll let you know how it goes (I don't see the options or number code that you describe above regarding the phone steps). I was curious, what do your use flags look like for ppp and wvstreams? Do you need DHCP to get an IP? Additionally, since I'm using an XV6900 do I need a different line than:

ipaq vendor=0x0bbf product=0x00cf # if OS wont recognize phone, reinsert ipaq *with* options

If so, what or where did you find these options?