Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM900. Перезапуск модуля.
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
RadikX
1. Осуществляю пересброс модуля SIM900(Revision: 1137B09SIM900M64_ST) в соответсвии с временной диаграмой в Hardware design (стр. 18): PWRKEY в низкий уровень на 1,5 сек (д.б > 1 сек), через 2,5 сек(д.б > 2.2сек) проверяю состояние выхода STATUS, за это время он должен установиться в высокий уровень. При неудаче производится повторный перезапуск. Проблема в том , что стабильно запускается только со второго раза. Т.е. перзапуск производится, но состояние выхода STATUS с первого раза не устанавливается.
2. Сброс по RESET в соответсвии с временной диаграмой в Hardware design (стр. 35): NRESET в низкий уровень на 50 микросекунд, через 1,5 сек (min 1,2 сек) проверяю состояние выхода STATUS, за это время он должен установиться в высокий уровень. Выход STATUS не меняется (всегда "единица"). Сброс модуля не происходит.
CADiLO
1. Если в этот момент открыта сессия GPRS, то отключение и соответственно сброс статуса может происходить до 8-9 секунд.

Кроме того в документации наверное не там смотрите - SIM900_Hardware Design_V2.05, страница 22

* модуль отключить дождавшись сброса статуса (а не по времени)
* обождать еще 800mS
* модуль включить

2. Этот сброс не рекомендуется, так как по сути это немаскируемое прерывание, а его выполнение может привести к нехорошим последствиям - например зависшей сессии обмена данными или оставит канал в предответном состоянии.
Если накопите таких зависших таймаутов за месяц много, то оператор карточку заблокирует как сбойную.

Ну и по второму пункту еще замечание - а фантомной подпитки нет на модуле? Как стыкуете с контроллером и как сделаны цепи поверкея и сброса ?
RadikX
1. Да, действительно, не туда смотрел. Спасибо за указание ошибки. Первый раз, во время включения, действительно все корректно. Рестарт надо будет переделать.
На какое максимальное время ожидание реакции STATUS следует закладываться по вашему мнению?

2. Пересброс по RESETу закладывается как крайний вариант, когда рестарт по PWRKEY по каким-либо причинам не срабатывает. Дай бог чтобы он никогда и не понадобился, но надо чтобы был. Проблема в том, что сброс RESETом вообще не происходит.
P.S.:Контроллер управляет транзисторами подключенными открытыми коллекторами к SIM900 (как в даташите).
CADiLO
Время отключения.
Исходя из стандартов при нормальной работе GPRS закрытие сессии будет 8-9 секунд.
Можно ускоренно командой оборвать сессию и потом отключаться.
Но разные операторы по разному обрабатывают оборваные сессии, поэтому я бы так не делал.

В голосовом режиме - в зависимости от текущего состояния - 1-5 секунд.


Sevlyar
Здравствуйте! У меня похожая проблема, модуль зависает через пару-тройку дней работы в режиме "включен несколько минут/выключен пару часов". После зависания модуль не реагирует ни на PWRKEY, ни на NRESET, помогает только отключение питания. Периодически, после включения модуля и настройки обмена с микроконтроллером, во время регистрации (в это время мк запрашивает статус регистрации) может произойти сброс модуля (вываливаются нули и слетают настройки модуля), после этого, если не выключать модуль, он нормально регистрируется и работает.
Все цепи сброса и сопряжения мк -- модуль проектировались по документации, все временные задержки тоже соблюдаются. Устройство уже готово выйти в серию, если бы не этот досадный глюк. Уже столько приключений с этим проектом, на целую книгу мемуаров хватит, ну да плохому танцору...
Конечно-же вот схема сего устройства (P-CAD sch). Нажмите для просмотра прикрепленного файла
Damienn
Цитата(Sevlyar @ Apr 23 2014, 09:28) *
Здравствуйте! У меня похожая проблема, модуль зависает через пару-тройку дней работы в режиме "включен несколько минут/выключен пару часов". После зависания модуль не реагирует ни на PWRKEY, ни на NRESET, помогает только отключение питания. Периодически, после включения модуля и настройки обмена с микроконтроллером, во время регистрации (в это время мк запрашивает статус регистрации) может произойти сброс модуля (вываливаются нули и слетают настройки модуля), после этого, если не выключать модуль, он нормально регистрируется и работает.
Все цепи сброса и сопряжения мк -- модуль проектировались по документации, все временные задержки тоже соблюдаются. Устройство уже готово выйти в серию, если бы не этот досадный глюк. Уже столько приключений с этим проектом, на целую книгу мемуаров хватит, ну да плохому танцору...
Конечно-же вот схема сего устройства (P-CAD sch). Нажмите для просмотра прикрепленного файла

было типо такого - в момент регистрации модуль фигачит на полной мощности - при плохой разводке и несогласованной антенне засирался UART - пропадала связь с модулем именно в момент регистрации. Решилось заменой антенны. Хотя, если глючит сам модуль - мб провал по питанию? На всех операторах аналогичная картина?
CADiLO
>>>Все цепи сброса и сопряжения мк -- модуль проектировались по документации

не совсем - UART RX/TX по уровням согласовали, а RTS/CTS кто будет согласовывать???
контроллер питается от аккумулятора и как минимум один из его выходов превышает допустимое напряжение для входа модуля.

в никуда идет DTR, зато STATUS завели сразу на 2 ноги контроллера и зачем-то наружу......

перепроверяйте и доделывайте.....
Sevlyar
Цитата(CADiLO @ Apr 23 2014, 13:56) *
>>>Все цепи сброса и сопряжения мк -- модуль проектировались по документации

не совсем - UART RX/TX по уровням согласовали, а RTS/CTS кто будет согласовывать???
контроллер питается от аккумулятора и как минимум один из его выходов превышает допустимое напряжение для входа модуля.

в никуда идет DTR, зато STATUS завели сразу на 2 ноги контроллера и зачем-то наружу......

перепроверяйте и доделывайте.....

Благодарю, что оперативно ответили, RTS/CTS, DTR, RI не используются, выводы МК для этих линий находятся постоянно в HI-Z. Насчет статуса - это ошибка в схеме (из-за неверной подписи пина, в печатке все нормально), сейчас нет возможности быстро исправить. Получается что STATUS подключен только к PC2, а PB2 идет на внешний разъем.

Это симптомы паразитной запитки, как я понимаю?
И да, такая проблема на всех операторах. А насчет провала по питанию, если это происходит, то модули у меня обычно просто отключались.
CADiLO
Питание и запитка через выводы - копать в эту сторону. Где-то недосмотрели.
Sevlyar
Цитата(CADiLO @ Apr 23 2014, 14:58) *
Питание и запитка через выводы - копать в эту сторону. Где-то недосмотрели.

А какие уровни должны быть на пинах модуля, если только подали питание, и все выводы микроконтроллера находятся в hi-z? Я уже все схему и устройство "облизал", уже на пять раз проверил согласование уровней и корректность инициализации. Уже начинаю грешить на флюс. Померял напряжения на выводах - нигде нет положительного уровня, даже 0,01В. Вот уровни на некоторых пинах:
DTR: -3.9V;
RI: -4.15V;
DCD: -4.15V;
DTR: -4.15V;
CTS: -3.87V;
RTS: -3.57V;
TXD: -3.87V;
RXD: -4.15V.
CADiLO
Только не говорите что мерили тестером относительно плюсового провода. sm.gif
В противном случае просто перепутали питание с GND.

ssokol
Цитата(CADiLO @ Apr 28 2014, 09:55) *
Только не говорите что мерили тестером относительно плюсового провода. sm.gif
В противном случае просто перепутали питание с GND.

Похоже модуль запитан минусом, а на земле плюс sm.gif
CADiLO
По схеме вроде правильно, разве что АКК перевернули при включении.
RadikX
Перезапускаю модуль SIM900 через PWRKEY с контролем ноги STATUS, после выключения коммутирую симки. Все отлично, если после перезапуска отправить хотя бы одну АТ-команду. Если перезапустить модуль без отправки команды, то модуль стабильно на некоторое время зависает (STATUS не восстанавливается более 12 сек). Если проигнорировать зависание положение ноги статус и начать отправлять АТ-команды, то модуль некоторое время отвечает, и команды через четыре перестает отвечать. Через 3-4 перезапуска снова начинает работать.
Pavel☺
Цитата(RadikX @ May 19 2014, 12:14) *
Перезапускаю модуль SIM900 через PWRKEY с контролем ноги STATUS, после выключения коммутирую симки. Все отлично, если после перезапуска отправить хотя бы одну АТ-команду. Если перезапустить модуль без отправки команды, то модуль стабильно на некоторое время зависает (STATUS не восстанавливается более 12 сек). Если проигнорировать зависание положение ноги статус и начать отправлять АТ-команды, то модуль некоторое время отвечает, и команды через четыре перестает отвечать. Через 3-4 перезапуска снова начинает работать.

Вы понимаете, что перезапуск через PWRKEY ничем не отличается от выключения по PWRKEY и включения по PWRKEY?
Так что, если выполнены требования по таймингу:

то на ножке STATUS через 2 сек появится высокий уровень..
прочитайте поподробнее HardwareManual: http://mt-system.ru/documentation/opisanie...a-sim900-ver-25
Pavel☺
Цитата(RadikX @ May 19 2014, 12:14) *
Перезапускаю модуль SIM900 через PWRKEY с контролем ноги STATUS, после выключения коммутирую симки. Все отлично, если после перезапуска отправить хотя бы одну АТ-команду. Если перезапустить модуль без отправки команды, то модуль стабильно на некоторое время зависает (STATUS не восстанавливается более 12 сек). Если проигнорировать зависание положение ноги статус и начать отправлять АТ-команды, то модуль некоторое время отвечает, и команды через четыре перестает отвечать. Через 3-4 перезапуска снова начинает работать.

Вы понимаете, что перезапуск через PWRKEY ничем не отличается от выключения по PWRKEY и включения по PWRKEY?
Так что, если выполнены требования по таймингу:

то на ножке STATUS через 2 сек появится высокий уровень..
прочитайте поподробнее HardwareManual: http://mt-system.ru/documentation/opisanie...a-sim900-ver-25
RadikX
Цитата(Pavel☺ @ May 19 2014, 16:41) *
Вы понимаете, что перезапуск через PWRKEY ничем не отличается от выключения по PWRKEY и включения по PWRKEY?
Так что, если выполнены требования по таймингу:

то на ножке STATUS через 2 сек появится высокий уровень..
прочитайте поподробнее HardwareManual: http://mt-system.ru/documentation/opisanie...a-sim900-ver-25

Да, понимаю. Автомат так и построен: выключение, задержка, включение. Все по указанному мануалу, времена даже с запасом. Перезапуск происходит корректно, если после него начать посылать ат-комманды. Если сделать перезапуск модуля и, ничего не посылая, сделать еще один перезапуск, STATUS с большой вероятностью впадает в ступор, т.е либо не детектируется успешное выключение модуля, либо не детектируется успешное включение..
CADiLO
>>>>Перезапускаю модуль SIM900 через PWRKEY с контролем ноги STATUS, после выключения коммутирую симки.

Необязательно полностью перезапускать. Достаточно CFUN=0, переключить симки и потом CFUN=1.
Если симка роуминговая то иногда после переключения принудительно регистрируем через COPS.

>>>Все отлично, если после перезапуска отправить хотя бы одну АТ-команду. Если перезапустить модуль без отправки команды, то модуль стабильно на некоторое >>>время зависает (STATUS не восстанавливается более 12 сек). Если проигнорировать зависание положение ноги статус и начать отправлять АТ-команды, то модуль >>>некоторое время отвечает, и команды через четыре перестает отвечать. Через 3-4 перезапуска снова начинает работать.


Не бывает - смотрите питание модуля, наводки от антенны и фантомку. Где-то прокололись.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.