I use the following subroutine to closee the PPP connection and power down the CELL210.
Sub CELL210_PowerDown
If NOT ForceModemOn
'Close PPP connection
PPPClose
'Put cell modem into deep sleep to conserve power
Do Until (modem_is_off = TRUE)
SerialFlush(CellCOMPort) 'clean out any garbage characters that might have come in.
SerialOut(CellCOMPort, CRLF , "CELL2xx>", 1, 200) 'Send a CRLF and wait CELL2xx prompt before continuing on.
SerialOut(CellCOMPort, "deep sleep" & CRLF, CRLF, 1, 200)
SerialIn(returned_value,CellCOMPort, 100, CHR(13), 1000)
If(returned_value = "Sleep enabled." & CHR(13)) Then
modem_is_off = TRUE
EndIf
returned_value = ""
Loop
SerialClose (CellCOMPort)
EndIf
EndSub
The process works but I notice under "PPP Network Status" on the "Deployment>PPP" tab in DevConfig the following states. Is there a reason for the "close failed" and "Failed to meet protocol." statements?
ppp state: User interrupt. -> close failed
IP: 0.0.0.0
gw: 0.0.0.0
ppp state: close failed -> Failed to meet protocol.
IP: 0.0.0.0
gw: 0.0.0.0