Вроде я раньше такого не наблюдал, или просто надолго не оставлял модуль включенным. И вообще, похоже, я недопонимаю логику включения сервиса. Инициализирую модуль, не затрагивая ничего, связанного с GPRS, через некоторое время появляется "Call Ready", модуль регистрируется, и:
at+cgatt?;+cgreg?
+CGATT: 1
+CGREG: 0,1
Даже несмотря на то, что я не давал принудительно AT+CGREG=1. Однако по прошествии некоторого времени переставала работать команда AT+CIPSTART, сразу "ERROR". Ничего не мог понять, пока не посмотрел:
at+cgatt?;+cgreg?
+CGATT: 0
+CGREG: 0,2
происходит довольно часто, закономерности не уловил...
Почему состояние регистрации GPRS меняется на 2 ? И как правильнее обойти эту ситуацию ? Пока ничего умнее, чем просто выдавать AT+CGATT=1 перед попыткой соединения в голову не приходит. Да, а что будет после этой команды, если тарифный план не предусматривает использование GPRS ? Или надо все ж еже проверять и результат "AT+CGREG?" ?