|
Сбой связи после неоднократных дозвонов на модуль SIM300C |
|
|
|
Sep 10 2009, 22:47
|

Местный
  
Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480

|
Уважаемые здравствуйте.
Сижу вот отлаживаю модуль SIM300C Украина. В SIM300C установлена карточка МТС. Звоню на модуль с телефона, в котором тоже установлен МТС, модуль по звонку чего то там делает и отбивает звонок. Час ночи, перестают проходить звонки на модуль, мой телефон просто пикает и отключается. Звоню на модуль с телефона, в котором, установлена карточка Киев Стар, телефон пишет сбой связи. Если звонить с телефона на телефон то все проходит.
Вчера было тоже самое, после некоторого количества звонков (или тоже после часа ночи).
Что же это такое может быть? Оператор что ли обрубает, типа иди спать. Подскажите, если кто с подобным сталкивался.
Звонков было не так и много 30-40.
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 14)
|
Sep 11 2009, 06:15
|

Местный
  
Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480

|
Цитата(=F8= @ Sep 11 2009, 07:10)  А состояние модуля у вас как-то контролируется? Не то, чтоб СИМ300 часто зависал но на всякий случай это делать надо. А если надежность связи критична то лучше использовать резервную сим-карту другого оператора. Состояние модуля я в тот момент не проверял так как он у меня на столе лежит. Я его полностью обесточивал, он прекрасно регистрируется в сети. Причем делал это неоднократно. Вот с утра встал, проверяю все работает, сейчас считаю звонки на него и буду ждать часа ночи, нужно выяснить закономерность это или совпадение По ходу вопрос а как вы проверяете состояние модуля? У меня на данном этапе сделан примерно следующий алгоритм. В модуль идет AT команда я читаю ЭХО. если эха нет то повторный запрос до 5 раз. Нет ответа отключаем модуль и снимаем с него питание (переинициализация). ЭХО есть но нет ответа на команду которую ждем в течении тайм аута (для каждый АТ команды можно установить свой тайм аут). Тайм аут закончился повторные запросы 5 раз и в случае неудачи переинициализация. Это как бы низкий уровень. Уровень чуть выше пока не придумал (нужно форум почитать). Но думаю что периодически, в режиме ожидания буду посылать некий набор АТ команд в модуль и ловить ответ. Наверное нужно смотреть на команды связанные с уровнем сигнала от соты.
|
|
|
|
|
Sep 11 2009, 10:03
|
Знающий
   
Группа: Свой
Сообщений: 567
Регистрация: 7-07-07
Из: Донецк
Пользователь №: 28 954

|
Цитата(Pat @ Sep 11 2009, 09:15)  По ходу вопрос а как вы проверяете состояние модуля?
У меня на данном этапе сделан примерно следующий алгоритм. В модуль идет AT команда я читаю ЭХО. если эха нет то повторный запрос до 5 раз. Нет ответа отключаем модуль и снимаем с него питание (переинициализация). Как минимум AT+CREG? //Регистрация в сети AT+CSQ //Уровень сигнала Если планируется передача данных по GPRS нужно добавить проверку AT+CGREG? AT+CGATT? Просто AT необязательно т.к. если пройдут это команды то и AT тоже пройдет. Между командами делаю паузу около 50-100мс, но это больше по принципу "хуже не будет". Если имеются какие-то специфические настройки вроде то периодически их повторяю.
|
|
|
|
|
Sep 11 2009, 21:20
|

Местный
  
Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480

|
Цитата(etoja @ Sep 11 2009, 08:36)  Да программа в вашем микроконтроллере виснет, всего-то и делов. Не виснет я под отладчиком гоняю и вижу чего он там вытворяет, да и причем тут программа если модуль сам по себе работает. Цитата(=F8= @ Sep 11 2009, 12:03)  Как минимум Просто AT необязательно т.к. если пройдут это команды то и AT тоже пройдет. Между командами делаю паузу около 50-100мс, но это больше по принципу "хуже не будет". АТ я имел в виду АТ+*** Вот пауза обязательна ибо уже нарвался на клина после некоторых команд нельзя сразу ничего писать.
|
|
|
|
|
Sep 14 2009, 17:37
|

Местный
  
Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480

|
Цитата(=F8= @ Sep 11 2009, 12:03)  Как минимум AT+CREG? //Регистрация в сети AT+CSQ //Уровень сигнала Да вот задумался я. Допустим проверил AT+CREG? если зарегистрированы работаем дальше, а вот что делать если нет? С уровнем сигнала еще более непонятно Если уровень слабый то совсем на связь не выходим, или пытаемся дозвониться в случае тревоги и какое значение уровня считать слабым?
|
|
|
|
|
Sep 14 2009, 19:07
|

Местный
  
Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480

|
Цитата(Harbinger @ Sep 14 2009, 20:52)  AT+COPS=0 - принудительная регистрация в домашней сети... Ждать порой приходится несколько минут, если регистрация не прошла (обычно таки не проходит, т.к. причина физического характера), будет некий +CME ERROR, придётся уже с ним работать... это довольно стрёмный момент. Вот про этот стремный момент и хотелось бы услышать. Что делать может стоит отключать питание модуля и перезапускать инициализацию в надежде что регистрация не прошла по причине внутреннего глюка SIM300 Цитата(Harbinger @ Sep 14 2009, 20:52)  После подачи команды на принудительную регистрацию модуль будет ругаться занятостью (+CME ERROR:515) на всякий чих... Ругаться на всякий чих... в процессе ожидания регистрации по AT+COPS=0 или постоянно и после того как регистрация прошла.
|
|
|
|
|
Sep 15 2009, 05:41
|
Знающий
   
Группа: Свой
Сообщений: 567
Регистрация: 7-07-07
Из: Донецк
Пользователь №: 28 954

|
Цитата(Pat @ Sep 14 2009, 20:37)  Да вот задумался я. Допустим проверил AT+CREG? если зарегистрированы работаем дальше, а вот что делать если нет? Перезагружать модуль, все равно этим все и кончится. Сначала попытаться сделать это корректно, если не получается - отключить питание. Количество выполняемых подряд перезагрузок лучше ограничить. Если зарегистрироваться в сети, после нескольких перезагрузок, все равно не удается - заморгать всеми красными лампочками какие есть  . Цитата С уровнем сигнала еще более непонятно Если уровень слабый то совсем на связь не выходим, или пытаемся дозвониться в случае тревоги и какое значение уровня считать слабым? 1 Просто выдать уровень сигнала пользователю и пусть он сам решает, что делать. 2 То-же что и с CREG, только подождать несколько минут - может уровень сигнала сам восстановиться. 3 Комбинация вариантов 1 и 2. Постоянно выдаем уровень сигнала и если он очень низкий в течении длительного времени - перезагружаемся. PS Я в своих девайсах перезагрузку по низкому уровню сигнала не делаю, несколько раз пробовал сделать такое, но стабильности в работе это не добавило. Делал также проверку работоспособности с попмощью периодической отправки USSD запросов - тоже особо ничего не дало. В общем если модуль и сота в порядке то и проверки регистрации достаточно если нет то как не извращайся... Только индикация уровня сигнала обязательна, а то юзеры они такие - поставят девайс в подвале без выносной антенны и удивляются чего оно не работает...
|
|
|
|
|
Sep 15 2009, 09:27
|

Местный
  
Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480

|
Спасибо всем, я тоже думал зачем принудительное его регистрировать если лучше перезапустить. Есть следующий вопрос по начальным установкам. У меня пока сделано так 1) Включаем питание и проверяем корректность 2) Подаем команду AT для настройки автобоундинга 3) Спрашиваем какая скорость UART установлена AT+IPR? Если 19200 то работаем дальше если стоит автоопределение то AT+IPR=19200 и AT&W0 4) По рекомендациям форума если карточка тормознутая (не знаю правда с чего ей быть тормознутой но раз народ на грабли наступал то) AT+CPMS=\"SM\",\"SM\",\"SM с последующем ожиданием корректного ответа 5) Устанавливаем текущую память SIM AT+CPBS=\"SM\" 6) Считываем из SIM карты настройки AT+CPBR= 7) Для дальнейшей работы AT+COLP=1 После чего переходим в основной режим работы Если на любом шаге пошло что то не так, делаем несколько перепосылок команды и в случае неудачи переинициализация. Подскажите что сюда еще можно (нужно) добавить? GPRS не будет использоваться а до SMS еще не дошел ход. Цитата(HARMHARM @ Sep 15 2009, 07:15)  Я делаю перезагрузку с отключением питания раз минут в пять. Раз нет регистрации, то нет и лишнего расхода счетчика в симке... Поясните пожалуйста что такое - "лишний расход счетчика в симке" И еще вопрос  Сейчас работаю с SIM300C в конечном устройстве планируется поставить SIM300D как с вопросом совместимости глюков и команд этих модулей.
|
|
|
|
|
Sep 15 2009, 09:58
|
Знающий
   
Группа: Свой
Сообщений: 567
Регистрация: 7-07-07
Из: Донецк
Пользователь №: 28 954

|
2 замечания. 1 По возможности используйте скорость 115200. 2 Настройки лучше хранить в еепром. Но это ИМХО. Цитата Поясните пожалуйста что такое - "лишний расход счетчика в симке" Сим карта имеет счетчик на включения и после определенного количества(что-то порядка 50000) запусков... Так-что с перезагрузками лучше не перегибать палку.
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|