EmbeddedRelated.com
Forums
Memfault Beyond the Launch

RCM3700 refuses to serXputs("+++");

Started by yasj...@ysmgroup.net July 13, 2011
Hi there,

as the title says, my RCM3700 refuses to put "+++" (Hayes escape-sequence or "return to AT-interface"-sequence).
I've successfully put up a PPPlink with my GPRS provider, but when I want to terminate the link, the serial-spy reads only one + at most.
I'm setting up the interface through ifconfig(/*...*/), set IFS_PPP_MODEMESCAPE to 1 (also tried 0), and after I want to detach i send (delay)+++(delay) directly to the port, just to be sure. The rabbit simply refuses to put all three of the pluses. Is there something I should be aware about here?

Thanks in advance,

Yasja S. de Miranda
You cannot use the serial port driver and the PPP driver at the same time. They both want control of the transmit interrupt (and receive). You send your first "+" then the transmit interrupt fires, but it gets handled by the PPP driver, so the next serial characer is never loaded.

--- In r..., yasja@... wrote:
>
> Hi there,
>
> as the title says, my RCM3700 refuses to put "+++" (Hayes escape-sequence or "return to AT-interface"-sequence).
> I've successfully put up a PPPlink with my GPRS provider, but when I want to terminate the link, the serial-spy reads only one + at most.
> I'm setting up the interface through ifconfig(/*...*/), set IFS_PPP_MODEMESCAPE to 1 (also tried 0), and after I want to detach i send (delay)+++(delay) directly to the port, just to be sure. The rabbit simply refuses to put all three of the pluses. Is there something I should be aware about here?
>
> Thanks in advance,
>
> Yasja S. de Miranda
>

Hi Joey,

Thanks for your quick reply. Is it so that i have to serXclose(); the port after i've sent the configuration commands (e.g. AT+CGDCONT stuff) and let the PPP driver take over? And if so, IFS_PPP_MODEMESCAPE to 1? If that's the case I know just what i've done wrong and it sounds so obvious.

Thanks in advance,

Yasja S. de Miranda
Not sure what you are trying to do exactly.

To set-up the PPP session, just set the PPP control string IFS_PPP_SENDEXPECT. The PPP stack will handle all the initialization for you.

If you are trying to break into an existing session, you must re-open (serXopen) the port to reinstall the interrupt handles. This will remove PPP handlers.

--- In r..., yasja@... wrote:
>
> Hi Joey,
>
> Thanks for your quick reply. Is it so that i have to serXclose(); the port after i've sent the configuration commands (e.g. AT+CGDCONT stuff) and let the PPP driver take over? And if so, IFS_PPP_MODEMESCAPE to 1? If that's the case I know just what i've done wrong and it sounds so obvious.
>
> Thanks in advance,
>
> Yasja S. de Miranda
>


Memfault Beyond the Launch