реклама на сайте
подробности

 
 
> M10: неизвестная ошибка при аттаче к GPRS-сервису.
jokolemene
сообщение Jan 5 2012, 17:01
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 14-03-10
Пользователь №: 55 950



Всем здравствуйте!

Продолжаю писать программу для дивайса, в котором установлен M10 (Revision: M10BR06). При попытке аттача к GPRS-сервису (сразу после инициализации модуля) командой "AT+CGATT=1" появляется сообщение об ошибке "+CME ERROR: unknown". В большинстве случаев после выполнения пятисекундной задержки и повторной передачи команды "AT+CGATT=1" GPRS-сервис поднимается нормально, но один раз эта ошибка появлялась в течение нескольких минут. При этом в то-же самое время другой дивайс с модулем SIM340DZ и карточкой того-же самого провайдера поднял GPRS и соединился с сервером "на ура". Проблема не связана с каким-то конкретным оператором - проверялось на разных операторах с разными карточками (VegaLine и Tele2). Вот кусок лога работы дивайса:

Код
[00:00:00] {MAIN} ADC(0)=712; Vbat=4.17В
[00:00:00] {GSM } Включаем GSM-модуль
[00:00:02] {GSM }  ANSW: RDY
[00:00:02] {GSM }  COMM: AT+IPR?
[00:00:02] {GSM }  ANSW: +CFUN: 1
[00:00:02] {GSM }  ANSW: +CPIN: SIM PIN
[00:00:02] {GSM }  ANSW: AT+IPR?
[00:00:02] {GSM }  ANSW: +IPR: 38400
[00:00:02] {GSM }  ANSW: OK
[00:00:02] {GSM }  COMM: AT+IFC?
[00:00:03] {GSM }  ANSW: AT+IFC?
[00:00:03] {GSM }  ANSW: +IFC: 0,0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: ATZ
[00:00:03] {GSM }  ANSW: ATZ
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: ATE0
[00:00:03] {GSM }  ANSW: ATE0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: ATX4
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+CMEE=2
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+CREG=0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+QIURC=0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM } Проверяем наличие и залоченность SIM-карты
[00:00:03] {GSM }  COMM: AT+CPIN?
[00:00:03] {GSM }  ANSW: +CPIN: SIM PIN
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM } Включена защита PIN-кодом
[00:00:03] {GSM } Считываем ID SIM-карты
[00:00:03] {GSM }  COMM: AT+QCCID
[00:00:03] {GSM }  ANSW: 89997776112013633181
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM } Считываем количество оставшихся попыток набора PIN-кода
[00:00:03] {GSM }  COMM: AT+QTRPIN
[00:00:03] {GSM }  ANSW: +QTRPIN: 3,3,10,10
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM } Пытаемся разлочить карточку
[00:00:03] {GSM }  COMM: AT+CPIN=2586
[00:00:03] {GSM }  ANSW: +CPIN: READY
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM } Проверяем наличие и залоченность SIM-карты
[00:00:03] {GSM }  COMM: AT+CPIN?
[00:00:03] {GSM }  ANSW: +CPIN: READY
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM } SIM-карточка открыта
[00:00:03] {GSM } Проверяем регистрацию в сети
[00:00:03] {GSM }  COMM: AT+CREG?
[00:00:04] {GSM }  ANSW: +CREG: 0,2
[00:00:04] {GSM }  ANSW: OK
[00:00:04] {GSM } Поиск сети
[00:00:04] {GSM } Измеряем уровень сигнала
[00:00:04] {GSM }  COMM: AT+CSQ
[00:00:04] {GSM }  ANSW: +CSQ: 99,99
[00:00:04] {GSM }  ANSW: OK
[00:00:04] {GSM } Уровень сигнала = -113 dBm
[00:00:08] {GSM } Проверяем регистрацию в сети
[00:00:08] {GSM }  COMM: AT+CREG?
[00:00:08] {GSM }  ANSW: +CREG: 0,2
[00:00:08] {GSM }  ANSW: OK
[00:00:08] {GSM } Поиск сети
[00:00:08] {GSM } Измеряем уровень сигнала
[00:00:08] {GSM }  COMM: AT+CSQ
[00:00:08] {GSM }  ANSW: +CSQ: 23,0
[00:00:08] {GSM }  ANSW: OK
[00:00:08] {GSM } Уровень сигнала = -67 dBm
[00:00:10] {MAIN} ADC(0)=687; Vbat=4.03В
[00:00:13] {GSM } Проверяем регистрацию в сети
[00:00:13] {GSM }  COMM: AT+CREG?
[00:00:13] {GSM }  ANSW: +CREG: 0,1
[00:00:13] {GSM }  ANSW: OK
[00:00:13] {GSM } Есть регистрация в сети
[00:00:13] {GSM } Измеряем уровень сигнала
[00:00:13] {GSM }  COMM: AT+CSQ
[00:00:13] {GSM }  ANSW: +CSQ: 23,0
[00:00:13] {GSM }  ANSW: OK
[00:00:13] {GSM } Уровень сигнала = -67 dBm
[00:00:13] {TCP } Проверяем состояние канала
[00:00:13] {GSM }  COMM: AT+QISTAT
[00:00:13] {GSM }  ANSW: OK
[00:00:13] {GSM }  ANSW: STATE: IP INITIAL
[00:00:13] {TCP } Подключаем GPRS-сервис
[00:00:13] {GSM }  COMM: AT+CGATT=1
[00:00:13] {GSM }  ANSW: +CME ERROR: unknown
[00:00:13] {TCP } ERROR: нет ответа 'OK'
[00:00:15] {TCP } Проверяем состояние канала
[00:00:15] {GSM }  COMM: AT+QISTAT
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM }  ANSW: STATE: IP INITIAL
[00:00:15] {TCP } GPRS-канал закрыт
[00:00:15] {TCP } ERROR: неудачная попытка открыть GPRS-канал


Вопрос: что это за ошибка - "unknown"? И как от неё избавиться?

Сообщение отредактировал jokolemene - Jan 6 2012, 10:35
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
jokolemene
сообщение Jan 6 2012, 05:58
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 14-03-10
Пользователь №: 55 950



Я же говорю, что через пять секунд после "unknown" дивайс даёт эту команду повторно, получает "ОК" и дальше работает нормально. APN задаётся чуть позже - перед выполнением команды "AT+QIACT". Опять-же, точно такой-же дивайс, но с модулем SIM340DZ, аттачится к GPRS-сервису с пол-пинка, работая по точно такому-же алгоритму. Тем не менее, сделал для проверки установку APN заранее. Вот лог результата:

Код
[00:00:00] {MAIN} ADC(0)=715; Vbat=4.19В
[00:00:00] {GSM } Включаем GSM-модуль
[00:00:03] {GSM }  ANSW: RDY
[00:00:03] {GSM }  COMM: AT+IPR?
[00:00:03] {GSM }  ANSW: AT+IPR?
[00:00:03] {GSM }  ANSW: +IPR: 38400
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+IFC?
[00:00:03] {GSM }  ANSW: AT+IFC?
[00:00:03] {GSM }  ANSW: +IFC: 0,0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: ATZ
[00:00:03] {GSM }  ANSW: ATZ
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: ATE0
[00:00:03] {GSM }  ANSW: ATE0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: ATX4
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+CMEE=2
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+CREG=0
[00:00:03] {GSM }  ANSW: OK
[00:00:03] {GSM }  COMM: AT+QIURC=0
[00:00:03] {GSM }  ANSW: OK
[00:00:09] {GSM } Проверяем наличие и залоченность SIM-карты
[00:00:09] {GSM }  COMM: AT+CPIN?
[00:00:09] {GSM }  ANSW: +CPIN: SIM PIN
[00:00:09] {GSM }  ANSW: OK
[00:00:09] {GSM } Включена защита PIN-кодом
[00:00:09] {GSM } Считываем ID SIM-карты
[00:00:09] {GSM }  COMM: AT+QCCID
[00:00:09] {GSM }  ANSW: 89997776112013633181
[00:00:09] {GSM }  ANSW: OK
[00:00:09] {GSM } Считываем количество оставшихся попыток набора PIN-кода
[00:00:09] {GSM }  COMM: AT+QTRPIN
[00:00:09] {GSM }  ANSW: +QTRPIN: 3,3,10,10
[00:00:09] {GSM }  ANSW: OK
[00:00:09] {GSM } Пытаемся разлочить карточку
[00:00:09] {GSM }  COMM: AT+CPIN=2586
[00:00:09] {GSM }  ANSW: +CPIN: READY
[00:00:09] {GSM }  ANSW: OK
[00:00:09] {GSM } Проверяем наличие и залоченность SIM-карты
[00:00:09] {GSM }  COMM: AT+CPIN?
[00:00:09] {GSM }  ANSW: +CPIN: READY
[00:00:09] {GSM }  ANSW: OK
[00:00:09] {GSM } SIM-карточка открыта
[00:00:10] {GSM } Проверяем регистрацию в сети
[00:00:10] {GSM }  COMM: AT+CREG?
[00:00:10] {GSM }  ANSW: +CREG: 0,2
[00:00:10] {GSM }  ANSW: OK
[00:00:10] {GSM } Поиск сети
[00:00:10] {GSM } Измеряем уровень сигнала
[00:00:10] {GSM }  COMM: AT+CSQ
[00:00:10] {GSM }  ANSW: +CSQ: 99,99
[00:00:10] {GSM }  ANSW: OK
[00:00:10] {GSM } Уровень сигнала = -113 dBm
[00:00:10] {MAIN} ADC(0)=714; Vbat=4.18В
[00:00:15] {GSM } Проверяем регистрацию в сети
[00:00:15] {GSM }  COMM: AT+CREG?
[00:00:15] {GSM }  ANSW: +CREG: 0,1
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM } Есть регистрация в сети
[00:00:15] {GSM } Измеряем уровень сигнала
[00:00:15] {GSM }  COMM: AT+CSQ
[00:00:15] {GSM }  ANSW: +CSQ: 20,0
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM } Уровень сигнала = -73 dBm
[00:00:15] {TCP } Проверяем состояние канала
[00:00:15] {GSM }  COMM: AT+QISTAT
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM }  ANSW: STATE: IP INITIAL
[00:00:15] {TCP } Устанавливаем имя точки доступа, логин и пароль
[00:00:15] {GSM } Считываем номер оператора из GSM-модуля
[00:00:15] {GSM }  COMM: AT+COPS=0,2
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM }  COMM: AT+COPS?
[00:00:15] {GSM }  ANSW: +COPS: 0,2,"40177"
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM }  COMM: AT+CGDCONT=1,"IP","internet"
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {GSM }  COMM: AT+QIREGAPP="internet","",""
[00:00:15] {GSM }  ANSW: OK
[00:00:15] {TCP } Подключаем GPRS-сервис
[00:00:15] {GSM }  COMM: AT+CGATT=1
[00:00:15] {GSM }  ANSW: +CME ERROR: unknown
[00:00:15] {TCP } ERROR: нет ответа 'OK'


Дополнение:
Проблема решилась так: не давать команду "AT+CGATT" совсем. Никогда. Такой "workaround" пока-что работает. Буду наблюдать. Но в любом случае "unknown" - это баг. Негоже модулю выдавать такие сообщения об ошибках на вполне легальные команды.

Сообщение отредактировал jokolemene - Jan 6 2012, 05:58
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 18:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01304 секунд с 7
ELECTRONIX ©2004-2016