Pause PPP to send AT command

Zoptune
Posts: 18
Joined: Mon May 27, 2019 11:02 pm

Pause PPP to send AT command

Postby Zoptune » Tue Apr 13, 2021 6:09 pm

Hi all,

I'm currently working on a project that uses SIM7000 modem to connect to an MQTT broker.
I started from the PPPoS client example as SIM800 and SIM7000 are using (almost) the same AT commands.
So I integrated the MQTT client component and it works well, I can connect to the broker ans send messages.

Now I want to be able to pause the PPP (and MQTT) connection, to send send an AT command and to resume the connection.

This is possible as stated in the documentation of the SIM7000 using the "+++" escape character and is already implemented in the example via the function

Code: Select all

dte->change_mode
It works but the problem is that the network stack and the MQTT internal task does not know that the connection is paused.
For example the internal MQTT task timeouts during the mode switch and has to reconnect to the broker instead of continuing the discussion with the broker as if nothing happened.

Is there a way to completely pause the network stack so I can send AT command without being disturbed by the network stack which could try to send network data ?

Any advice is welcome, thanks :)

duskotodevski
Posts: 3
Joined: Mon Sep 19, 2022 5:59 pm

Re: Pause PPP to send AT command

Postby duskotodevski » Thu Sep 22, 2022 12:06 pm

Hi Zoptune,

I see this was long time ago, but have you had any luck solving the problem? Can you share your solution?

Also I have a problem connecting to 4G on my SIM7000G - the thread for the issue is here:
viewtopic.php?f=2&t=29837&sid=d73115810 ... 99c562a64a

If you have any thoughts plese drop a line oor two.

Thanks and regards.

Zoptune
Posts: 18
Joined: Mon May 27, 2019 11:02 pm

Re: Pause PPP to send AT command

Postby Zoptune » Sun Nov 27, 2022 11:07 am

Hi duskotodevski,

Unfortunately I could not find a direct solution to my problem.

In the meantime I discovered the existence of the CMUX operation mode which allows to "split" a UART communication link in multiple virtual links allowing you to have one in data mode and the other one in command mode.

I could not make it work with the SIM7000 but at that time I implemented the client on my own.
Now in the latest release of the "esp_modem" component there is an integrated CMUX client so it might be worth to give it a try because it is not clear if CMUX is supported by the SIM7000 or not.

Otherwise you could switch to a modem that supports this feature like the SIM7600.

Good luck and don't forget to update this post with your results for others :)

Who is online

Users browsing this forum: Baidu [Spider] and 84 guests