BlackBerry Forums Support Community

BlackBerry Forums Support Community (http://www.blackberryforums.com/)
-   Linux Users Corner (http://www.blackberryforums.com/linux-users-corner/)
-   -   T-Mobile BB Curve 8320 modem challenges (http://www.blackberryforums.com/linux-users-corner/138908-t-mobile-bb-curve-8320-modem-challenges.html)

woodyofid 07-08-2008 12:12 AM

T-Mobile BB Curve 8320 modem challenges
 
Ok, I've followed every guide on this site and many others and come to the conclusion that there is something that is either strange about my curve or my pppd.

It should be noted that I did test the curve on Windows just to prove my data plan was not the issue. It works like a charm (other than being windows).

If I truly use no username, pppd will not attempt (allow) pap authentication and I get a loop of 0.0.0.0 addresses and then a timeout. See the IPCP ConfReq and Conf Rej, I am using wvdial for more verbosity in the chat, but using regular chat results in the same LCP failure...

[root@muspell dun]# pppd call gprs
--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATH
ATH
OK
--> Sending: ATE1
ATE1
OK
--> Sending: AT+CGDCONT=1,"IP","wap.voicestream.com","",0,0a
AT+CGDCONT=1,"IP","wap.voicestream.com","",0,0a
OK
--> Modem initialized.
--> Sending: ATDT*99***1#
--> Waiting for carrier.
ATDT*99***1#
CONNECT
--> Carrier detected. Waiting for prompt.
--> Don't know what to do! Starting pppd and hoping for the best.
Serial connection established.
using channel 35
Using interface ppp0
Connect: ppp0 <--> /dev/rfcomm0
sent [LCP ConfReq id=0x1 <asyncmap 0x0>]
rcvd [LCP ConfReq id=0x0 <asyncmap 0x0> <auth pap>]
No auth is possible
sent [LCP ConfRej id=0x0 <auth pap>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0>]
rcvd [LCP TermReq id=0x1]
sent [LCP TermAck id=0x1]
rcvd [LCP TermAck id=0x1]
sent [LCP ConfReq id=0x1 <asyncmap 0x0>]
rcvd [LCP TermReq id=0x2]
sent [LCP TermAck id=0x2]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0>]
sent [LCP ConfAck id=0x1 <asyncmap 0x0>]
rcvd [LCP TermAck id=0x2]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [CCP ConfAck id=0x1 <deflate 15> <deflate(old#) 15>]
rcvd [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfRej id=0x1 <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [CCP ConfAck id=0x1 <deflate 15> <deflate(old#) 15>]
Deflate (15) compression enabled
rcvd [IPCP ConfRej id=0x1 <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0>]
rcvd [LCP TermReq id=0x3]
LCP terminated by peer
sent [LCP TermAck id=0x3]
rcvd [LCP TermAck id=0x3]
Connection terminated.
---------------------------------------------------------

It appears that you *must* authenticate even if the credentials are bogus. Even in the examples of working chat/pppd output (as posted on this forum) if you look closely pap auth does occur.

Now if I use a username (pick one, here I use 'guest'), the LCP negotiation dies with the PAP auth send. notice that the BB never responds.


[root@muspell dun]# pppd call gprs
--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATH
ATH
OK
--> Sending: ATE1
ATE1
OK
--> Sending: AT+CGDCONT=1,"IP","wap.voicestream.com","",0,0a
AT+CGDCONT=1,"IP","wap.voicestream.com","",0,0a
OK
--> Modem initialized.
--> Sending: ATDT*99***1#
--> Waiting for carrier.
ATDT*99***1#
CONNECT
--> Carrier detected. Waiting for prompt.
--> Don't know what to do! Starting pppd and hoping for the best.
Serial connection established.
using channel 36
Using interface ppp0
Connect: ppp0 <--> /dev/rfcomm0
sent [LCP ConfReq id=0x1 <asyncmap 0x0>]
rcvd [LCP ConfReq id=0x4 <asyncmap 0x0> <auth pap>]
sent [LCP ConfAck id=0x4 <asyncmap 0x0> <auth pap>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0>]
sent [PAP AuthReq id=0x1 user="guest" password=""]
sent [PAP AuthReq id=0x2 user="guest" password=""]
sent [PAP AuthReq id=0x3 user="guest" password=""]
sent [PAP AuthReq id=0x4 user="guest" password=""]
sent [PAP AuthReq id=0x5 user="guest" password=""]
sent [PAP AuthReq id=0x6 user="guest" password=""]
sent [PAP AuthReq id=0x7 user="guest" password=""]
sent [PAP AuthReq id=0x8 user="guest" password=""]
sent [PAP AuthReq id=0x9 user="guest" password=""]
sent [PAP AuthReq id=0xa user="guest" password=""]
No response to PAP authenticate-requests
sent [LCP TermReq id=0x2 "Failed to authenticate ourselves to peer"]
sent [LCP TermReq id=0x3 "Failed to authenticate ourselves to peer"]
Connection terminated.

------------------------------------------------------------------------------

At this point the BB will no longer respond to pppd (at all!) on any subsequent connect attempts. the chat will work (and I can converse with the modem via minicom), but no LCP responses. To make life interesting, Windows can no longer get the BB to connect either (dies on auth, post chat). I have to drop the battery on the bb to get Windows to work again and/or to get LCP responses in Linux/pppd.

I am using Mandriva 2008.1 (current on updates)
pppd 2.4.4
BB O/S 4.2.2.180

I have used both bluetooth and the usb cable w/XmBlackBerry. Both methods get the same exact result.

I have played with different pppd options (disabled every single compression and encryption option). I have tweaked the dial string (*99#, and so forth), I have tweaked the CDGCONT string based on many different variants posted on the web (that others have had work on various blackberries and T-Mobile). None of those changes have had an impact (positive or negative).

Any thoughts? I would call T-mobile, but since it works in Windows (I wish the ppp terminal in windows would show ALL in/output), I doubt they will much of an idea.

I have seen *one* example of a 8320 on T-Mobile work in Linux but the BB OS was a 4.5 beta which I am not quite yet willing to try.

woodyofid 07-09-2008 01:53 AM

Follow up diagnostics (debugging a working Windows connection)
 
I spent a few hours pulling apart the modem and ppp trace from Windows XP to compare to my pppd debug ouput.

Windows sends the following chat sequence before ppp:

Send: AT<cr>
Send: ATE0V1<cr>
Send: AT<cr>
Send: AT+cgdcont=1,"IP","wap.voicestream.com"<cr>
Send: ATS0=0<cr>
Send: AT<cr>
Send: ATE0V1<cr>
Send: AT<cr>
Send: AT+cgdcont=1,"IP","wap.voicestream.com"<cr>
Send: ATDT*99#<cr>

---------------------------------------------------

To close the modem, Windows sends (post ppp)

Send: ATH<cr>
Send: AT<cr>
Send: ATE0V1<cr>
Send: AT<cr>
Send: AT+cgdcont=1,"IP","wap.voicestream.com"<cr>
Send: ATS0=0<cr>

---------------------------------------------------

Now on to the Windows ppp trace (I have interspersed English translations of the LCP, CCP and IPCP packets):

[1188] 19:18:46:625: PPPEMSG_Start recvd, d=, hPort=6,callback=0,mask=83034a,IfType=-1
[3852] 19:18:46:625: Line up event occurred on port 6
[3852] 19:18:46:625: Local identification = MSRAS-0-AMYCOMP
[3852] 19:18:46:625: PortName: COM3
[3852] 19:18:46:625: Starting PPP on link with IfType=0xffffffff,IPIf=0xffffffff,IPXIf=0xffffffff
[3852] 19:18:46:625: RasGetBuffer returned 2f588a0 for SendBuf
[3852] 19:18:46:625: FsmInit called for protocol = c021, port = 6
[3852] 19:18:46:625: ConfigInfo = 83034a
[3852] 19:18:46:625: APs available = 5e
[3852] 19:18:46:625: FsmReset called for protocol = c021, port = 6
[3852] 19:18:46:625: Inserting port in bucket # 6
[3852] 19:18:46:625: Inserting bundle in bucket # 2
[3852] 19:18:46:625: FsmOpen event received for protocol c021 on port 6
[3852] 19:18:46:625: FsmThisLayerStarted called for protocol = c021, port = 6
[3852] 19:18:46:625: FsmUp event received for protocol c021 on port 6
[3852] 19:18:46:625: <PPP packet sent at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: <Protocol = LCP, Type = Configure-Req, Length = 0x19, Id = 0x0, Port = 6
[3852] 19:18:46:625: <C0 21 01 00 00 17 02 06 00 00 00 00 05 06 08 EE |.!..............|
[3852] 19:18:46:625: <1C 62 07 02 08 02 0D 03 06 00 00 00 00 00 00 00 |.b..............|

LCP (sent) -- Link Control Protocol
Conf-Req
02 asyncmap 0
05 magic# 88 EE 1C 62
07 pcomp
08 accomp
0D callback 6


[3852] 19:18:46:625:
[3852] 19:18:46:625: InsertInTimerQ called portid=10,Id=0,Protocol=c021,EventType=0,fAuth=0
[3852] 19:18:46:625: InsertInTimerQ called portid=10,Id=0,Protocol=0,EventType=3,fAuth=0
[3696] 19:18:46:625: Packet received (16 bytes) for hPort 6
[3852] 19:18:46:625: >PPP packet received at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: >Protocol = LCP, Type = Configure-Req, Length = 0x10, Id = 0x0, Port = 6
[3852] 19:18:46:625: >C0 21 01 00 00 0E 02 06 00 00 00 00 03 04 C0 23 |.!.............#|

LCP (recv)
Conf-Req
02 asyncmap 0
03 PAP (proto id: C0 23)


[3852] 19:18:46:625:
[3852] 19:18:46:625: <PPP packet sent at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: <Protocol = LCP, Type = Configure-Ack, Length = 0x10, Id = 0x0, Port = 6
[3852] 19:18:46:625: <C0 21 02 00 00 0E 02 06 00 00 00 00 03 04 C0 23 |.!.............#|

LCP (sent)
Conf-Ack
02 asyncmap 0
03 PAP (C0 23 ?)


[3852] 19:18:46:625:
[3696] 19:18:46:625: Packet received (19 bytes) for hPort 6
[3852] 19:18:46:625: >PPP packet received at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: >Protocol = LCP, Type = Configure-Reject, Length = 0x13, Id = 0x0, Port = 6
[3852] 19:18:46:625: >C0 21 04 00 00 11 05 06 08 EE 1C 62 07 02 08 02 |.!.........b....|
[3852] 19:18:46:625: >0D 03 06 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|

LCP (recv)
Conf-Rej
05 magic#
07 pcomp
08 accomp
0D callback


[3852] 19:18:46:625:
[3852] 19:18:46:625: RemoveFromTimerQ called portid=10,Id=0,Protocol=c021,EventType=0,fAuth=0
[3852] 19:18:46:625: <PPP packet sent at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: <Protocol = LCP, Type = Configure-Req, Length = 0xc, Id = 0x1, Port = 6
[3852] 19:18:46:625: <C0 21 01 01 00 0A 02 06 00 00 00 00 00 00 00 00 |.!..............|

LCP (sent)
Conf-Req
02 asyncmap 0


[3852] 19:18:46:625:
[3852] 19:18:46:625: InsertInTimerQ called portid=10,Id=1,Protocol=c021,EventType=0,fAuth=0
[3696] 19:18:46:625: Packet received (12 bytes) for hPort 6
[3852] 19:18:46:625: >PPP packet received at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: >Protocol = LCP, Type = Configure-Ack, Length = 0xc, Id = 0x1, Port = 6
[3852] 19:18:46:625: >C0 21 02 01 00 0A 02 06 00 00 00 00 00 00 00 00 |.!..............|

LCP (recv)
Conf-Ack
02 asyncmap 0


[3852] 19:18:46:625:
[3852] 19:18:46:625: RemoveFromTimerQ called portid=10,Id=1,Protocol=c021,EventType=0,fAuth=0
[3852] 19:18:46:625: FsmThisLayerUp called for protocol = c021, port = 6
[3852] 19:18:46:625: LCP Local Options-------------
[3852] 19:18:46:625: MRU=1500,ACCM=0,Auth=0,MagicNumber=0,PFC=OFF,ACFC= OFF
[3852] 19:18:46:625: Recv Framing = PPP,SSHF=OFF,MRRU=1500,LinkDiscrim=0,BAP=OFF
[3852] 19:18:46:625: LCP Remote Options-------------
[3852] 19:18:46:625: MRU=1500,ACCM=0,Auth=c023,MagicNumber=0,PFC=OFF,AC FC=OFF
[3852] 19:18:46:625: Send Framing = PPP,SSHF=OFF,MRRU=1500,LinkDiscrim=0
[3852] 19:18:46:625: LCP Configured successfully
[3852] 19:18:46:625: <PPP packet sent at 07/09/2008 01:18:46:625
[3852] 19:18:46:625: <Protocol = LCP, Type = Identification, Length = 0x14, Id = 0x2, Port = 6
[3852] 19:18:46:656: <C0 21 0C 02 00 12 08 EE 1C 62 4D 53 52 41 53 56 |.!.......bMSRASV|
[3852] 19:18:46:656: <35 2E 31 30 00 00 00 00 00 00 00 00 00 00 00 00 |5.10............|

LCP (sent) (byte seq 2)
Ident (MS RAS v5.10)


[3852] 19:18:46:656:
[3852] 19:18:46:656: <PPP packet sent at 07/09/2008 01:18:46:656
[3852] 19:18:46:656: <Protocol = LCP, Type = Identification, Length = 0x19, Id = 0x3, Port = 6
[3852] 19:18:46:656: <C0 21 0C 03 00 17 08 EE 1C 62 4D 53 52 41 53 2D |.!.......bMSRAS-|
[3852] 19:18:46:656: <30 2D 41 4D 59 43 4F 4D 50 00 00 00 00 00 00 00 |0-AMYCOMP.......|

LCP (sent) (byte seq 3)
Ident (MS RAS 0-AMYCOMP) <- machine's name - BlueTooth style? "0-"; this is a BT connection.


[3852] 19:18:46:656:
[3852] 19:18:46:656: Authenticating phase started
[3852] 19:18:46:656: Calling APWork in APStart
[3852] 19:18:46:656: <PPP packet sent at 07/09/2008 01:18:46:656
[3852] 19:18:46:656: <Protocol = PAP, Type = Protocol specific, Length = 0x8, Id = 0x14, Port = 6
[3852] 19:18:46:656:
[3852] 19:18:46:656: InsertInTimerQ called portid=10,Id=20,Protocol=c023,EventType=0,fAuth=0
[3696] 19:18:46:656: Packet received (24 bytes) for hPort 6
[3852] 19:18:46:656: >PPP packet received at 07/09/2008 01:18:46:656
[3852] 19:18:46:656: >Protocol = LCP, Type = Code-Reject, Length = 0x18, Id = 0x1, Port = 6
[3852] 19:18:46:656: >C0 21 07 01 00 16 0C 02 00 12 08 EE 1C 62 4D 53 |.!...........bMS|
[3852] 19:18:46:656: >52 41 53 56 35 2E 31 30 00 00 00 00 00 00 00 00 |RASV5.10........|

LCP (recv)
Code-Rej
Ident (MS RAS v5.10)


[3852] 19:18:46:656:
[3852] 19:18:46:656: PPP Code Reject rcvd, rejected Code = 12
[3696] 19:18:46:656: Packet received (29 bytes) for hPort 6
[3852] 19:18:46:656: >PPP packet received at 07/09/2008 01:18:46:656
[3852] 19:18:46:656: >Protocol = LCP, Type = Code-Reject, Length = 0x1d, Id = 0x2, Port = 6
[3852] 19:18:46:656: >C0 21 07 02 00 1B 0C 03 00 17 08 EE 1C 62 4D 53 |.!...........bMS|
[3852] 19:18:46:656: >52 41 53 2D 30 2D 41 4D 59 43 4F 4D 50 00 00 00 |RAS-0-AMYCOMP...|

LCP (recv)
Code-Rej
Ident (MS RAS 0-AMYCOMP)


[3852] 19:18:46:656:
[3852] 19:18:46:656: PPP Code Reject rcvd, rejected Code = 12
[3696] 19:18:47:078: Packet received (6 bytes) for hPort 6
[3852] 19:18:47:078: >PPP packet received at 07/09/2008 01:18:47:078
[3852] 19:18:47:078: >Protocol = PAP, Type = Protocol specific, Length = 0x6, Id = 0x14, Port = 6
[3852] 19:18:47:078:
[3852] 19:18:47:078: RemoveFromTimerQ called portid=10,Id=20,Protocol=c023,EventType=0,fAuth=0
[3852] 19:18:47:078: FsmThisLayerUp called for protocol = c023, port = 6
[3852] 19:18:47:078: NotifyCaller(hPort=6, dwMsgId=17)
[3852] 19:18:47:078: NotifyCaller(hPort=6, dwMsgId=3)
[3852] 19:18:47:078: Will not initialize CP 8029
[3852] 19:18:47:078: Will not initialize CP 802b
[3852] 19:18:47:078: FsmInit called for protocol = 80fd, port = 6
[3852] 19:18:47:078: FsmReset called for protocol = 80fd, port = 6
[3852] 19:18:47:078: FsmInit called for protocol = 8021, port = 6
[3852] 19:18:47:078: FsmReset called for protocol = 8021, port = 6
[3852] 19:18:47:078: FsmOpen event received for protocol 80fd on port 6
[3852] 19:18:47:078: FsmThisLayerStarted called for protocol = 80fd, port = 6
[3852] 19:18:47:078: FsmUp event received for protocol 80fd on port 6
[3852] 19:18:47:078: <PPP packet sent at 07/09/2008 01:18:47:078
[3852] 19:18:47:078: <Protocol = CCP, Type = Configure-Req, Length = 0xc, Id = 0x4, Port = 6
[3852] 19:18:47:078: <80 FD 01 04 00 0A 12 06 00 00 00 01 00 00 00 00 |................|

CCP (sent) -- Compression Control Protocol
Conf-Req (byte seq 4)
** This is rejected later, so I did not bother looking up CCP bytes)


[3852] 19:18:47:078:
[3852] 19:18:47:078: InsertInTimerQ called portid=10,Id=4,Protocol=80fd,EventType=0,fAuth=0
[3852] 19:18:47:078: FsmOpen event received for protocol 8021 on port 6
[3852] 19:18:47:078: FsmThisLayerStarted called for protocol = 8021, port = 6
[3852] 19:18:47:078: FsmUp event received for protocol 8021 on port 6
[3852] 19:18:47:078: <PPP packet sent at 07/09/2008 01:18:47:078
[3852] 19:18:47:078: <Protocol = IPCP, Type = Configure-Req, Length = 0x24, Id = 0x5, Port = 6
[3852] 19:18:47:078: <80 21 01 05 00 22 03 06 00 00 00 00 81 06 00 00 |.!..."..........|
[3852] 19:18:47:078: <00 00 82 06 00 00 00 00 83 06 00 00 00 00 84 06 |................|
[3852] 19:18:47:078: <00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|

CCP (sent)
Conf-Req (byte seq 5)
** Rejected later...


[3852] 19:18:47:078:
[3852] 19:18:47:078: InsertInTimerQ called portid=10,Id=5,Protocol=8021,EventType=0,fAuth=0
[3696] 19:18:47:093: Packet received (18 bytes) for hPort 6
[3852] 19:18:47:093: >PPP packet received at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: >Protocol = LCP, Type = Protocol-Reject, Length = 0x12, Id = 0x3, Port = 6
[3852] 19:18:47:093: >C0 21 08 03 00 10 80 FD 01 04 00 0A 12 06 00 00 |.!..............|
[3852] 19:18:47:093: >00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|

LCP (recv)
Proto-Rej CCP (See above)


[3852] 19:18:47:093:
[3852] 19:18:47:093: PPP Protocol Reject, Protocol = 80fd
[3852] 19:18:47:093: RemoveFromTimerQ called portid=10,Id=4,Protocol=80fd,EventType=0,fAuth=0
[3852] 19:18:47:093: FsmThisLayerFinished called for protocol = 80fd, port = 6
[3696] 19:18:47:093: Packet received (12 bytes) for hPort 6
[3852] 19:18:47:093: >PPP packet received at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: >Protocol = IPCP, Type = Configure-Req, Length = 0xc, Id = 0x4, Port = 6
[3852] 19:18:47:093: >80 21 01 04 00 0A 03 06 A9 FE 01 01 00 00 00 00 |.!..............|

IPCP (recv)
Conf-Req (byte seq 4)
03 IP Addreess: A9 FE 01 01 (169.254.1.1, I assume the phone want's this address)


[3852] 19:18:47:093:
[3852] 19:18:47:093: <PPP packet sent at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: <Protocol = IPCP, Type = Configure-Ack, Length = 0xc, Id = 0x4, Port = 6
[3852] 19:18:47:093: <80 21 02 04 00 0A 03 06 A9 FE 01 01 00 00 00 00 |.!..............|

IPCP (sent)
Conf-Ack
IP Address A9 FE 01 01


[3852] 19:18:47:093:
[3696] 19:18:47:093: Packet received (18 bytes) for hPort 6
[3852] 19:18:47:093: >PPP packet received at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: >Protocol = IPCP, Type = Configure-Reject, Length = 0x12, Id = 0x5, Port = 6
[3852] 19:18:47:093: >80 21 04 05 00 10 82 06 00 00 00 00 84 06 00 00 |.!..............|
[3852] 19:18:47:093: >00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|

IPCP (recv)
Conf-Rej
82 Primary NBNS Server Address (I cannot find the Conf-Req send for NBNS)
84 Secondary " " " "


[3852] 19:18:47:093:
[3852] 19:18:47:093: RemoveFromTimerQ called portid=10,Id=5,Protocol=8021,EventType=0,fAuth=0
[3852] 19:18:47:093: <PPP packet sent at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: <Protocol = IPCP, Type = Configure-Req, Length = 0x18, Id = 0x6, Port = 6
[3852] 19:18:47:093: <80 21 01 06 00 16 03 06 00 00 00 00 81 06 00 00 |.!..............|
[3852] 19:18:47:093: <00 00 83 06 00 00 00 00 00 00 00 00 00 00 00 00 |................|

IPCP (sent)
Conf-Req
03 IP Address (0.0.0.0)
81 Pri DNS (0.0.0.0)
83 Sec DNS (0.0.0.0)


[3852] 19:18:47:093:
[3852] 19:18:47:093: InsertInTimerQ called portid=10,Id=6,Protocol=8021,EventType=0,fAuth=0
[3696] 19:18:47:093: Packet received (24 bytes) for hPort 6
[3852] 19:18:47:093: >PPP packet received at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: >Protocol = IPCP, Type = Configure-Nak, Length = 0x18, Id = 0x6, Port = 6
[3852] 19:18:47:093: >80 21 03 06 00 16 03 06 0A AB 9E 30 81 06 42 5E |.!.........0..B^|
[3852] 19:18:47:093: >09 78 83 06 42 5E 19 78 00 00 00 00 00 00 00 00 |.x..B^.x........|

IPCP (recv)
Conf-Nak (Rej w/suggested replacement)
03 IP Address: 0A AB 9E 30 (10.171.158.48)
81 Pri DNS: 42 5E 09 78 (66.94.9.120)
83 Sec DNS: 42 5E 19 78 (66.94.25.120)


[3852] 19:18:47:093:
[3852] 19:18:47:093: RemoveFromTimerQ called portid=10,Id=6,Protocol=8021,EventType=0,fAuth=0
[3852] 19:18:47:093: <PPP packet sent at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: <Protocol = IPCP, Type = Configure-Req, Length = 0x18, Id = 0x7, Port = 6
[3852] 19:18:47:093: <80 21 01 07 00 16 03 06 0A AB 9E 30 81 06 42 5E |.!.........0..B^|
[3852] 19:18:47:093: <09 78 83 06 42 5E 19 78 00 00 00 00 00 00 00 00 |.x..B^.x........|

IPCP (sent)
Conf-Req
03 IP Address: 0A AB 9E 30
81 Pri DNS: 42 5E 09 78
83 Sec DNS: 42 5E 19 78


[3852] 19:18:47:093:
[3852] 19:18:47:093: InsertInTimerQ called portid=10,Id=7,Protocol=8021,EventType=0,fAuth=0
[3696] 19:18:47:093: Packet received (24 bytes) for hPort 6
[3852] 19:18:47:093: >PPP packet received at 07/09/2008 01:18:47:093
[3852] 19:18:47:093: >Protocol = IPCP, Type = Configure-Ack, Length = 0x18, Id = 0x7, Port = 6
[3852] 19:18:47:093: >80 21 02 07 00 16 03 06 0A AB 9E 30 81 06 42 5E |.!.........0..B^|
[3852] 19:18:47:093: >09 78 83 06 42 5E 19 78 00 00 00 00 00 00 00 00 |.x..B^.x........|

IPCP (recv)
Conf-Ack
03 IP Address: 0A AB 9E 30
81 Pri DNS: 42 5E 09 78
83 Sec DNS: 42 5E 19 78

-------------------------------------------------------------

Looking closely, Windows does NOT send a PAP auth request (we know authentication is not required), but it also DOES NOT sent a "ConfRej PAP". It is after the conf-rej PAP that pppd sends that the phone responds with a TermReq.

My guess is that T-Mobile's tweaks to BBOS 4.2 have broken the ppp stack on the phone. Sending PAP auth data tail spins the phone's ppp interface (battery removal required), and PAP ConfRej causes the phone to dump the link.

I am going to build a custom pppd that does not send the PAP ConfReq and test the theory.

woodyofid 07-09-2008 03:01 AM

pppd 2.4.4 modification test
 
In file lcp.c on line 1597 is the CONFREJ call. I commented it out and sure enough, I get a full LCP and IPCP negotiation. My first pass connect died after 12 seconds and I am debugging that as a configuration issue for now.


[root@muspell blackberry]# /home/woody/blackberry/ppp/sbin/pppd call bbppp
abort on (BUSY)
abort on (NO CARRIER)
abort on (VOICE)
abort on (NO DIALTONE)
abort on (NO DIAL TONE)
abort on (NO ANSWER)
abort on (DELAYED)
abort on (ERROR)
Initializing
send (AT^M)
expect (OK)
^M
OK
-- got it

send (ATE0V1^M)
expect (OK)
^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (AT+cgdcont=1,"IP","wap.voicestream.com"^M)
expect (OK)
^M
^M
OK
-- got it

send (ATS0=0^M)
expect (OK)
^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (ATE0V1^M)
expect (OK)
^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (AT+cgdcont=1,"IP","wap.voicestream.com"^M)
Dialing
expect (OK)
^M
^M
OK
-- got it

send (ATDT*99#^M)
expect (CONNECT)
^M
^M
CONNECT
-- got it

send ()
Serial connection established.
using channel 3
Using interface ppp0
Connect: ppp0 <--> /dev/rfcomm0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xab0fa16f> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0xf <asyncmap 0x0> <auth pap>]
No auth is possible
Not rejecting PAP (Woody)
sent [LCP ConfAck id=0xf <asyncmap 0x0> <auth pap>]
rcvd [LCP ConfRej id=0x1 <magic 0xab0fa16f> <pcomp> <accomp>]
sent [LCP ConfReq id=0x2 <asyncmap 0x0>]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [IPCP ConfReq id=0x10 <addr 169.254.1.1>]
sent [IPCP ConfAck id=0x10 <addr 169.254.1.1>]
rcvd [IPCP ConfNak id=0x1 <addr 10.171.158.48> <ms-dns1 66.94.9.120> <ms-dns3 66.94.25.120>]
sent [IPCP ConfReq id=0x2 <addr 10.171.158.48> <ms-dns1 66.94.9.120> <ms-dns3 66.94.25.120>]
rcvd [IPCP ConfAck id=0x2 <addr 10.171.158.48> <ms-dns1 66.94.9.120> <ms-dns3 66.94.25.120>]
not replacing existing default route via 192.168.151.1
local IP address 10.171.158.48
remote IP address 169.254.1.1
primary DNS address 66.94.9.120
secondary DNS address 66.94.25.120
Script /etc/ppp/ip-up started (pid 20389)
Script /etc/ppp/ip-up finished (pid 20389), status = 0x0
rcvd [IPCP ConfReq id=0x11 <addr 169.254.1.1>]
Connect time 0.1 minutes.
Sent 0 bytes, received 10 bytes.
Script /etc/ppp/ip-down started (pid 20398)
sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfAck id=0x11 <addr 169.254.1.1>]
rcvd [IPCP ConfNak id=0x3 <addr 10.171.158.48> <ms-dns1 66.94.9.120> <ms-dns3 66.94.25.120>]
sent [IPCP ConfReq id=0x4 <addr 10.171.158.48> <ms-dns1 66.94.9.120> <ms-dns3 66.94.25.120>]
rcvd [IPCP ConfAck id=0x4 <addr 10.171.158.48> <ms-dns1 66.94.9.120> <ms-dns3 66.94.25.120>]
not replacing existing default route via 192.168.151.1
local IP address 10.171.158.48
remote IP address 169.254.1.1
primary DNS address 66.94.9.120
secondary DNS address 66.94.25.120
Script /etc/ppp/ip-down finished (pid 20398), status = 0x0
Script /etc/ppp/ip-up started (pid 20413)
Script /etc/ppp/ip-up finished (pid 20413), status = 0x0
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
rcvd [IPCP ConfReq id=0x12 <addr 169.254.1.1>]
Connect time 0.1 minutes.
Sent 12 bytes, received 10 bytes.
Script /etc/ppp/ip-down started (pid 20422)
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfAck id=0x12 <addr 169.254.1.1>]
Script /etc/ppp/ip-down finished (pid 20422), status = 0x0
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
rcvd [LCP ProtRej id=0x13 80 fd 01 01 00 0c 1a 04 78 00 18 04 78 00]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
Terminating on signal 2
sent [LCP TermReq id=0x3 "User request"]
rcvd [LCP TermAck id=0x3]
Connection terminated.
abort on (BUSY)
abort on (ERROR)
abort on (NO DIALTONE)

Sending break to the modem
send (\K^M)
send (\K^M)
send (\K^M)
send (\d\d+++\d\dATH^M)
expect (OK)
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (ATE0V1^M)
expect (OK)
^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (AT+cgdcont=1,"IP","wap.voicestream.com"^M)
expect (OK)
^M
^M
OK
-- got it

send (ATS0=0^M)

PDP context detached
Serial link disconnected.

woodyofid 07-09-2008 04:11 AM

Some days you can't win....

[root@muspell blackberry]# /home/woody/blackberry/ppp/sbin/pppd call bbppp
abort on (BUSY)
abort on (NO CARRIER)
abort on (VOICE)
abort on (NO DIALTONE)
abort on (NO DIAL TONE)
abort on (NO ANSWER)
abort on (DELAYED)
abort on (ERROR)
Initializing
send (AT^M)
expect (OK)
AT^M
^M
OK
-- got it

send (ATE0V1^M)
expect (OK)
^M
ATE0V1^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (AT+cgdcont=1,"IP","wap.voicestream.com"^M)
expect (OK)
^M
^M
OK
-- got it

send (ATS0=0^M)
expect (OK)
^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (ATE0V1^M)
expect (OK)
^M
^M
OK
-- got it

send (AT^M)
expect (OK)
^M
^M
OK
-- got it

send (AT+cgdcont=1,"IP","wap.voicestream.com"^M)
Dialing
expect (OK)
^M
^M
OK
-- got it

send (ATDT*99#^M)
expect (CONNECT)
^M
^M
CONNECT
-- got it

send ()
Serial connection established.
using channel 14
Using interface ppp0
Connect: ppp0 <--> /dev/rfcomm0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x86255d0d> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x0 <asyncmap 0x0> <auth pap>]
No auth is possible
Not rejecting PAP (Woody)
sent [LCP ConfAck id=0x0 <asyncmap 0x0> <auth pap>]
rcvd [LCP ConfRej id=0x1 <magic 0x86255d0d> <pcomp> <accomp>]
sent [LCP ConfReq id=0x2 <asyncmap 0x0>]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [IPCP ConfReq id=0x1 <addr 169.254.1.1>]
sent [IPCP ConfAck id=0x1 <addr 169.254.1.1>]
rcvd [IPCP ConfRej id=0x1 <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0>]
rcvd [IPCP ConfNak id=0x2 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x3 <addr 0.0.0.0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x3 <addr 0.0.0.0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x3 <addr 0.0.0.0>]
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
rcvd [LCP ProtRej id=0x2 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
sent [IPCP ConfReq id=0x3 <addr 0.0.0.0>]
rcvd [IPCP ConfNak id=0x3 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0>]
IPCP: timeout sending Config-Requests
sent [LCP TermReq id=0x3 "No network protocols running"]
sent [LCP TermReq id=0x4 "No network protocols running"]
Connection terminated.
abort on (BUSY)
abort on (ERROR)
abort on (NO DIALTONE)

Sending break to the modem
send (\K^M)
send (\K^M)
send (\K^M)
send (\d\d+++\d\dATH^M)
expect (OK)
alarm
Failed
disconnect script failed
Modem hangup

rivviepop 07-09-2008 01:48 PM

Most folks are running 4.2.2.184 with their 8320 (those that are not using the new 4.5 betas), have you considered ditching the .180 release and upgrading your device? The .184 is completely stable and very widespread amongst all the carriers (except T-Mobile, they always suck with OS releases).

Perhaps it might help in this PAP problem - it's worth a shot, I've been running .184 forever and a day and it's solid as a rock, but I don't use my device as a modem at all to help you test.

aeroport 07-12-2008 01:40 PM

Novie breaking into BB btooth Apple Tmobile land!
 
Hello to you dedicated survivor of this hellish experiment called BB to MAC!

Have you any further clues or progress about whether or not it would be possible to tether a 8320 Curve to an Apple MacBook Pro?
I've been trying for the last 5hrs, and nothing!
However, I don't have the expertise that you have obviously.:oops:
Any advice would be of enormous help and highly appreciated!!![/b]

woodyofid 08-20-2008 02:47 AM

Success! Gave up on T-Mo's BB software
 
Sorry for the delay but other life activities and responsibilities got in the way...

I was probably close to getting pppd working with Tmo's BB 4.2.2.180 release, but I just did not have the time (and desire) find the last detail to make it stable.

I gave up on trying to fix what is really T-mobile's problem (their 4.2.2.180 release is broken). Instead I loaded the 4.5.0.57 release (see the latest release thread under the 8300 forum). Three hours of reloading apps and preferences not all related to the modem, but to my use of the phone in general, and the modem came alive first try using my distro's stock pppd (supplied a bogus username and password to make pppd happy).

This post is over the phone via the bluetooth interface. Nothing more than pppd and a correct bluetooth configuration required, no XmBlackberry, bcharge, etc.., Although I suspect those would work the same.

The upside: my phone can record video and watch youtube (no laptop required). More ways to waste time in an airport!

dharmabum 08-26-2008 08:44 PM

It looks from the debugging output of pppd that your bb wants to talk PAP. Have you made sure to include the following two lines in your /etc/ppp/options?:

auth
+pap

woodyofid 08-27-2008 11:21 AM

Yes pppd was configured to speak pap. The BB gets unhappy if you do not give it a username and password (even though it does not use them). I did get a successful full connect one time, if only for a few seconds. Even when the I could not establish a connection fully, I still got to the CONF portion of the negotiation prior to the BB ppp thread spinning down and requiring that I pull the BB's battery (hard reboot) before I could get the BB to talk ANY ppp again.

Judging from other users' (Linux and Mac) experience, this is specific to T-Mo's release of the 4.2 BB OS. I upgraded to a RIM stock OS and it works like a champ. Some mobile providers do post-rim release modification/development prior to releasing to their customers. I went to a RIM stock 4.5 release and other uses moving to a RIM stock 4.2 release have also reported not having problems.

zquestz 12-22-2008 09:37 PM

There is a solution. However your phone will still crap out and require a restart occasionally.

The solution is inside the XmBlackberry software. You want to look at "gprs_protocol_fix". They describe the problem in detail, and how to fix it in your ppp connect scripts.

Here's the script I use /etc/ppp/peers/curve

debug
nodetach
connect /etc/ppp/peers/gprs-connect-chat
disconnect /etc/ppp/peers/gprs-disconnect-chat
pty "/usr/local/sbin/gprs_protocol_fix /dev/rfcomm0"
115200
noipdefault
defaultroute
nomultilink
ipcp-restart 7
ipcp-accept-local
ipcp-accept-remote
lcp-echo-interval 0
lcp-echo-failure 999
modem
noauth
nocrtscts
usepeerdns
novj
user guest
password guest

I use small connect/disconnect scripts, you can change this on your own, as this is dependent on your provider. =)

My curve only seems to work via bluetooth, no matter what it won't see the modem over usb. Also, on T-Mobile it is terribly slow over EDGE.


All times are GMT -5. The time now is 09:23 AM.

Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.