Hi all,
I am having issues with a SIM300 modem in that it won't connect over PPP with GPRS. I have tried a Wavecom 1800 modem with the development board and it works so I suspect there is something in the packet that is causing the issue.
I can see from the debug that the software send a TxPAP message with the correct format of data (after I fixed the bug in ppp.cpp) but there is no reply from the remote network and it simply sends a new request.
I need to run a sniffer on a PC with 2 serial ports to decode the packet that is being sent and received so I can check that the data from the network is correct or possibly missing some bytes. BPS rate is 57600.
Anyone know of such an application I can use for this?
Cheers,
Dave...
Looking for serial port sniffer for PPP decoding
Re: Looking for serial port sniffer for PPP decoding
Hi all, as an aside to my request for the sniffer, I still have the issue with a SIM300 modem not connecting over PPP and looking for some assistance from PPP experts if you're out there?
I have connected a Wavecom modem via the development platform and it works, handshaking included! My own designed PCB has RXD, TXD and RTS and CTS from UART2 connected to the SIM300 modem. I can open a serial port at either 57600 or 115200 and talk to the modem, sending AT commands etc. No problems there.
I then start PPP and I can see it send the autobaud, rest and init strings to the modem with no errors. Then I see connect and then the packets start. This is the debug out of the SIM300 first. I have included comments in the middle of the debug outputs.
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Wait time out
Auto baud done
Modem Reset Done
Setup String Done
connected
Starting PPP
LCP -State:STARTING
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[0B][ 07020802020600000000
LCP -State:REQ_SENT
IPCP-State:STARTING
PPP RxLCP -CONF_REQid[0F][ 010406400304C02305060C3C65C902060000000007020802
LCP_OPT_MRU read 1600 - GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
LCP_OPT_MAGIC read and is GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
The above all matches up with the received telegram.
PPP TxLCP -CONF_ACKid[0F][ 010406400304C02305060000000002060000000007020802
We send back, with the MAGIC number set to ZERO to indicate no loop back.
LCP -State:ACK_SENT
PPP RxLCP -CONF_ACKid[0B][ 07020802020600000000
We get back an ACK with the LCP_OPT_ACFC and LCP_OPT_PFC config and magic number is ZERO's.
LCP -State:Authenticating
Setting RX ACCM:00000000
Setting RX ACCM:00000000
Setting TX ACCM:00000000
Sent PAP request
Sending PAP packet
PPP TxPAP -CONF_REQid[0C][ 0377617006776170313233
The above shows that it sent "wap" and "wap123" as the username and
password which is the correct settings for this ISP (Telkomsel)
PAP Tick
It seems to timeout and we get the initial CONF_REQ again from network.
PPP RxLCP -CONF_REQid[10][ 010406400304C02305060C3C65C902060000000007020802
LCP_OPT_MRU read 1600 - GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
LCP_OPT_MAGIC read and is GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
Reseting Both ACCMS
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
LCP Down setting ABORTLCP Down
This line above seems to be causing the Pap tick loop to abort.
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[0D][ 07020802020600000000
PPP TxLCP -CONF_ACKid[10][ 010406400304C02305060000000002060000000007020802
LCP -State:ACK_SENT
PPP RxLCP -CONF_ACKid[0D][ 07020802020600000000
LCP -State:Authenticating
Setting RX ACCM:00000000
Setting RX ACCM:00000000
Setting TX ACCM:00000000
Sent PAP request
Sending PAP packet
PPP TxPAP -CONF_REQid[0E][ 037761700677617031
No Pap tick after sending the packet
aborted!
PPP Session ends(Hanging up)
Hung Up
----------------------------------------------------------
Now the Wavecom debug output.
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Auto baud done
Modem Reset Done
Setup String Done
connected
Starting PPP
LCP -State:STARTING
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[00][ 07020802020600000000
LCP -State:REQ_SENT
IPCP-StPPPPutChar Line:611 num=2
ate:STARTING
PPP RxLCP -CONF_REQid[01][ 010405DC020600000000070208020304C023
LCP_OPT_MRU read 1500 - GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
PPP TxLCP -CONF_ACKid[01][ 010405DC020600000000070208020304C023
LCP -State:ACK_SENT
LCP -0000C021TO+
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[01][ 07020802020600000000
PPP RxLCP -CONF_REQid[02][ 010405DC020600000000070208020304C023
LCP_OPT_MRU read 1500 - GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
PPP TxLCP -CONF_ACKid[02][ 010405DC020600000000070208020304C023
LCP -State:ACK_SENT
PPP RxLCP -CONF_ACKid[01][ 07020802020600000000
LCP -State:Authenticating
Setting RX ACCM:00000000
Setting RX ACCM:00000000
Setting TX ACCM:00000000
Sent PAP request
Sending PAP packet
PPP TxPAP -CONF_REQid[01][ 0377617006776170313233
PPP RxPAP -CONF_ACKid[01][ 0857656C636F6D6521
And at the end we get an RxPAP reply!!
---------------------------------
What is strange is that we don't get the same LCP configuration from the network for each modem. Now I am no familiar with the how the network actually makes the initial GPRS connect (I am awaiting a call from a Nokia network engineer) so not sure if this is normal.
This is the LCP configuration that comes into the SIM300
PPP RxLCP -CONF_REQid[0F][ 010406400304C02305060C3C65C902060000000007020802
This is the Wavecom LCP received
PPP RxLCP -CONF_REQid[01][ 010405DC020600000000070208020304C023
Other than the different MRU length and the MAGIC number inclusion, these look correct.
Any and all help appreciated?
Dave...
I have connected a Wavecom modem via the development platform and it works, handshaking included! My own designed PCB has RXD, TXD and RTS and CTS from UART2 connected to the SIM300 modem. I can open a serial port at either 57600 or 115200 and talk to the modem, sending AT commands etc. No problems there.
I then start PPP and I can see it send the autobaud, rest and init strings to the modem with no errors. Then I see connect and then the packets start. This is the debug out of the SIM300 first. I have included comments in the middle of the debug outputs.
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Wait time out
Auto baud done
Modem Reset Done
Setup String Done
connected
Starting PPP
LCP -State:STARTING
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[0B][ 07020802020600000000
LCP -State:REQ_SENT
IPCP-State:STARTING
PPP RxLCP -CONF_REQid[0F][ 010406400304C02305060C3C65C902060000000007020802
LCP_OPT_MRU read 1600 - GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
LCP_OPT_MAGIC read and is GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
The above all matches up with the received telegram.
PPP TxLCP -CONF_ACKid[0F][ 010406400304C02305060000000002060000000007020802
We send back, with the MAGIC number set to ZERO to indicate no loop back.
LCP -State:ACK_SENT
PPP RxLCP -CONF_ACKid[0B][ 07020802020600000000
We get back an ACK with the LCP_OPT_ACFC and LCP_OPT_PFC config and magic number is ZERO's.
LCP -State:Authenticating
Setting RX ACCM:00000000
Setting RX ACCM:00000000
Setting TX ACCM:00000000
Sent PAP request
Sending PAP packet
PPP TxPAP -CONF_REQid[0C][ 0377617006776170313233
The above shows that it sent "wap" and "wap123" as the username and
password which is the correct settings for this ISP (Telkomsel)
PAP Tick
It seems to timeout and we get the initial CONF_REQ again from network.
PPP RxLCP -CONF_REQid[10][ 010406400304C02305060C3C65C902060000000007020802
LCP_OPT_MRU read 1600 - GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
LCP_OPT_MAGIC read and is GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
Reseting Both ACCMS
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
LCP Down setting ABORTLCP Down
This line above seems to be causing the Pap tick loop to abort.
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[0D][ 07020802020600000000
PPP TxLCP -CONF_ACKid[10][ 010406400304C02305060000000002060000000007020802
LCP -State:ACK_SENT
PPP RxLCP -CONF_ACKid[0D][ 07020802020600000000
LCP -State:Authenticating
Setting RX ACCM:00000000
Setting RX ACCM:00000000
Setting TX ACCM:00000000
Sent PAP request
Sending PAP packet
PPP TxPAP -CONF_REQid[0E][ 037761700677617031
No Pap tick after sending the packet
aborted!
PPP Session ends(Hanging up)
Hung Up
----------------------------------------------------------
Now the Wavecom debug output.
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Setting RX ACCM:FFFFFFFF
Setting TX ACCM:FFFFFFFF
Auto baud done
Modem Reset Done
Setup String Done
connected
Starting PPP
LCP -State:STARTING
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[00][ 07020802020600000000
LCP -State:REQ_SENT
IPCP-StPPPPutChar Line:611 num=2
ate:STARTING
PPP RxLCP -CONF_REQid[01][ 010405DC020600000000070208020304C023
LCP_OPT_MRU read 1500 - GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
PPP TxLCP -CONF_ACKid[01][ 010405DC020600000000070208020304C023
LCP -State:ACK_SENT
LCP -0000C021TO+
We are sending a config request with: LCP_OPT_PFC, FLAGS_RX_ACFC,
LCP_OPT_ACCM =
0x0,
PPP TxLCP -CONF_REQid[01][ 07020802020600000000
PPP RxLCP -CONF_REQid[02][ 010405DC020600000000070208020304C023
LCP_OPT_MRU read 1500 - GOOD(ACK)
LCP_OPT_ACCM read 0 - GOOD(ACK)
LCP_OPT_PFC read and is GOOD(ACK)
LCP_OPT_ACFC read and is GOOD(ACK)
LCP_OPT_AUTH read 0xC023 - GOOD(ACK), they want PAP
PPP TxLCP -CONF_ACKid[02][ 010405DC020600000000070208020304C023
LCP -State:ACK_SENT
PPP RxLCP -CONF_ACKid[01][ 07020802020600000000
LCP -State:Authenticating
Setting RX ACCM:00000000
Setting RX ACCM:00000000
Setting TX ACCM:00000000
Sent PAP request
Sending PAP packet
PPP TxPAP -CONF_REQid[01][ 0377617006776170313233
PPP RxPAP -CONF_ACKid[01][ 0857656C636F6D6521
And at the end we get an RxPAP reply!!
---------------------------------
What is strange is that we don't get the same LCP configuration from the network for each modem. Now I am no familiar with the how the network actually makes the initial GPRS connect (I am awaiting a call from a Nokia network engineer) so not sure if this is normal.
This is the LCP configuration that comes into the SIM300
PPP RxLCP -CONF_REQid[0F][ 010406400304C02305060C3C65C902060000000007020802
This is the Wavecom LCP received
PPP RxLCP -CONF_REQid[01][ 010405DC020600000000070208020304C023
Other than the different MRU length and the MAGIC number inclusion, these look correct.
Any and all help appreciated?
Dave...