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

 
 
> Обнаружение перезапуска SIM900x
Frolov Kirill
сообщение Mar 18 2013, 15:54
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 2-02-11
Пользователь №: 62 643



Приём какой последовательности символов из последовательного порта можно считать признаком тихого перезапуска (когда он просто пишет RDY, перезапускается и делает вид, что работает дальше, только половину настроек не сохранил) ?

"RDY" нельзя (может встретиться в ответе на команду).

А последовательность FE FE FE FE )(идёт перед 0D 0A RDY 0D 0A), похоже, можно. Но где в документации гарантируется получениие FE FE FE FE ?

PS: а если у меня через UDP бинарные данные, там же вполне может быть и FE FE FE FE... Ещё одна причина, почему данные должны быть в HEX.

PPS: почему бы не использовать BREAK в таком случае (со стороны модема), но похоже, он это не умеет. И DSR у него нет.

Сообщение отредактировал Frolov Kirill - Mar 18 2013, 15:58
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
_Артём_
сообщение Mar 18 2013, 21:07
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Frolov Kirill @ Mar 18 2013, 17:54) *

Может использовать STATUS?

Цитата(Frolov Kirill @ Mar 18 2013, 17:54) *
PS: а если у меня через UDP бинарные данные, там же вполне может быть и FE FE FE FE... Ещё одна причина, почему данные должны быть в HEX.

UDP/TCP данные можно предварять заголовком (+IPD<длина>:) или запрашивать их когда нужно программе в МК, а не когда модем решит выдать данные.
Go to the top of the page
 
+Quote Post
Aurochs
сообщение Mar 18 2013, 21:59
Сообщение #3


Ортодокс
***

Группа: Свой
Сообщений: 219
Регистрация: 26-10-07
Из: Смела, Украина
Пользователь №: 31 775



Цитата(Frolov Kirill @ Mar 18 2013, 17:54) *
"RDY" нельзя (может встретиться в ответе на команду).

Очень интересно. Это же на какую-такую команду Вам удалось получить ответ RDY?
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Mar 19 2013, 05:02
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



RDY и +CPIN: READY стоит использовать как индикаторы перезапуска. Также NORMAL POWER DOWN стоит отслеживать.
Go to the top of the page
 
+Quote Post
Frolov Kirill
сообщение Mar 19 2013, 11:25
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 212
Регистрация: 2-02-11
Пользователь №: 62 643



Цитата(_Артём_) *
Может использовать STATUS?


При перезапуске программы в модеме состояния сигналов могут не изменяться.

Цитата(_Артём_ @ Mar 19 2013, 01:07) *
UDP/TCP данные можно предварять заголовком (+IPD<длина>:) или запрашивать их когда нужно программе в МК, а не когда модем решит выдать данные.


Это не значит, что в принимаемых данных не может быть слова "RDY". Или что модем не может перезапуститься в этот момент.

Цитата(Aurochs @ Mar 19 2013, 01:59) *
Очень интересно. Это же на какую-такую команду Вам удалось получить ответ RDY?


Это бывает происходит и без команд и в ответ на разные команды, которые в другое время выполняются без проблем. Часто при отправке SMS. Но статистики никто не собирал и однозначно сказать ничего нельзя. В некоторых версиях модема некоторые команды всегда вызывали перезапуск, но там обошли, да и в новых версиях там нет проблем.

Цитата(andrewlekar @ Mar 19 2013, 09:02) *
RDY и +CPIN: READY стоит использовать как индикаторы перезапуска. Также NORMAL POWER DOWN стоит отслеживать.


Никакое соообщение от модема, вообще никакое, при наличии возможных бинарных данных (из-за +IPD) не может гарантированно сообщать о перезапуске. Потому, что эта же строка может встретиться в передаваемых данных. И не передавать такие строки тоже не вариант. Потому, что модем будет обрабатывать любой принятый UDP-пакет, например, а послать его может из интернета кто угодно.

Пока я склоняюсь к варианту FE FE FE 0D 0A RDY 0D 0A. При условии, что нет приёма (+IPD). Инае этот вариант следует отмести. Либо следует использовать CMUX, но это по ряду причин сложно. Либо обнаруживать факт перезапуска опросом какой-либо настройки, однозначно сбрасываемой при перезапуске. Но какой именно и где гарантия, что оно не изменится в будущем?

Пожелание для SIMCOM: предусмотреть передачу BREAK при перезапуске программы (перед RDY). BREAK внеполосной сигнал и не может встретиться в принимаемых UDP-данных. И/или лучше предусмотреть приём данных в HEX (шеснадцатеричном) виде. Как это сделано для SMS (и на то были веские причины). Тогда данные однозначно не пересекаются с ответами модема. И, наконец, явно указать в документации, что мол посылка FE FE FE FE таки гарантируется.




Сообщение отредактировал Frolov Kirill - Mar 19 2013, 11:17
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Mar 19 2013, 14:28
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



Я не понял главного - у вас модем САМ ПЕРЕЗАПУСКАЕТСЯ????? Если так - то ищите причину, просто так он этого не делает.
Или питание проседает или на сброс наводка идет.
Потому что если вы его сбрасываете, то всегда знаете момент перезапуска.




--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Mar 19 2013, 18:10
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



Цитата
Никакое соообщение от модема, вообще никакое, при наличии возможных бинарных данных (из-за +IPD) не может гарантированно сообщать о перезапуске.

Это факт, спорить не буду. Но когда вы читаете данные с сокета, то вы воспринимаете их как данные, а не как команду. Поэтому даже в крайне маловероятном случае перезапуска модуля во время обработки данных с сокета, в худшем случае вы пропустите команду RDY (будет воспринята как часть данных). Для вас так критично в 100% случаев отлавливать перезапуск модема? Или 99,999% будет достаточно?
Цитата
И/или лучше предусмотреть приём данных в HEX (шеснадцатеричном) виде

Это хорошее предложение. Но стек у симкома купленый - менять они там ничё не будут.
Go to the top of the page
 
+Quote Post

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

 


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


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