Ping fails while using AT+WMUX



I am working on a Q24 modem, here is its information:
657c09gg.Q24PL001 1956992 042407 11:29

When I connect without +WMUX, I can ping my system, and 90% of the pings arrive to destination.
When I use +WMUX, sometimes ping just fails, or less than 50% of the pings arrive to destination.
Although, when I ping google from my system, it just works fine!

I am also wondering about some answers I get from the modem right after sending AT+WMUX:
-> STATUS PCK (content is C0)
-> STATUS PCK (content is 40)
The documentation says that I should only get one STATUS.

If I try to answer with STATUS, then my LCP or IPCP requests are failing.

Did any of you experienced such a problem ?

BTW: I am working with Linux & pppd. I wrote a sublayer that handles data/command multiplexing.



It is not mandatory that you receive only a single status message… Actually the “Status” packet is used to convey the status (ON or OFF) of the hardware pins (DTR, DSR, CTS and RI etc) to the target device. By default, the target considers these bits as OFF; thereby as long as a status packet is not received the OFF state is reported to the network. When the multiplexing mode is activated (+WMUX=1), module sends the status packet which set the status of all the pins to the right value. Hardware flow control make use of CTS, RTS , DTR, DSR pins, whenever the state of any of these hardware pins changes, status packet is sent to the target device carrying the status of these pins.

Status packets are received whenever thestate of the Serial interface is changed. For example, the Wireless CPU will send a READY status packet (DD 00 10 ED) before sendingdata over the serial interface and then a BUSY status packet after it has finished sending the data…

have you tried to test the same scenario on windows…?? it could be a problem of linux though i dont think so… :unamused:


Thanks, I’ll try to check if I get any other packet.

But, still, my problem is not solved, my ping results are just very bad… I checked all the data going through the serial port, and none of it is discarded by my program.

Here is how I proceed :
|MODEM| < /dev/ttyS5 > |PROGRAM| < /dev/ptyX > |PPPD|

If someone has had this kind of situation, I’d be glad to know what was the solution.