Examples/PPPoS: Add mandatory delay after +++ command

Switching back from data (PPP) mode to command mode must be done is the following sequence:
* No characters entered for T1 time (1 second)
* "+++" characters entered with no characters in between (1 second)
* No characters entered for T1 timer (1 second)
(per specification of SIM800 SIM800_Series_AT_Command_Manual_V1.09.pdf)

Related https://github.com/espressif/esp-idf/issues/7608
pull/7868/head
David Cermak 2021-10-18 12:56:39 +02:00
rodzic a0371c1a8f
commit 28d534ad33
1 zmienionych plików z 1 dodań i 0 usunięć

Wyświetl plik

@ -92,6 +92,7 @@ static esp_err_t sim800_set_working_mode(modem_dce_t *dce, modem_mode_t mode)
DCE_CHECK(dce->state == MODEM_STATE_SUCCESS, "sync failed", err);
} else {
DCE_CHECK(dce->state == MODEM_STATE_SUCCESS, "enter command mode failed", err);
vTaskDelay(pdMS_TO_TICKS(1000)); // spec: 1s delay after `+++` command
}
ESP_LOGD(DCE_TAG, "enter command mode ok");
dce->mode = MODEM_COMMAND_MODE;