Pause PPP to send AT command
Posted: 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
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
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
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