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

 
 
 
Reply to this topicStart new topic
> SIM900R перестает отвечать во время соединения с GPRS
mich.bil
сообщение Sep 22 2014, 10:00
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 12-09-08
Из: Украина, Херсон
Пользователь №: 40 146



Добрый день!

SIM900R внезапно начал замолкать при попытке установления GPRS соединения, хотя до этого работал нормально. Когда модуль не отвечает, светодиоды STATUS и NETLIGHT работают штатно, после перезагрузки модуль успешно соединяется с GPRS и начинает обмен данными. Модуль замолкает после комманды AT+CSTT

Напряжение питания GSM 4.0В, питание микроконтроллера 2.9В.

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

Сообщение отредактировал mich.bil - Sep 22 2014, 10:02
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
zebrox
сообщение Sep 22 2014, 10:08
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 121
Регистрация: 17-04-09
Пользователь №: 47 838



Тоже заметил подобное поведение, правда на обычном сим900.
Иногда происходит уже в процессе обмена, а иногда в процессе установки жпрс сессии/подключения.
Фантомную запитку не нашел.
Помогает перезагрузка с выключением питания.
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Sep 22 2014, 10:14
Сообщение #3


Гуру
******

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



Нигде последовательность команд не перепутали?

У меня на тестовом скрипте из апнотеса таких проблем нет.

И еще - при проблеме с командами, пожалуйста называйте версию фирмваре.


--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
Go to the top of the page
 
+Quote Post
mich.bil
сообщение Sep 22 2014, 10:45
Сообщение #4





Группа: Участник
Сообщений: 13
Регистрация: 12-09-08
Из: Украина, Херсон
Пользователь №: 40 146



Версия:
1137B01SIM900R64_ST_ENHANCE_EAT

Убрал проверку счета при загрузке, и система начала стартовать с каждого раза... возвращаю проверку - начинает виснуть... Какие особенности могут быть, связанные с USSD запросом?
Go to the top of the page
 
+Quote Post
dac
сообщение Sep 22 2014, 10:46
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 600
Регистрация: 27-05-05
Пользователь №: 5 482



QUOTE (mich.bil @ Sep 22 2014, 16:00) *
SIM900R внезапно начал замолкать при попытке установления GPRS соединения

попробуйте паузы между командами увеличить. был такой прикол, если слишком короткая пауза - менее 0,6с, или отправить следующий запрос до получения ответа или заданного интервала, который может быть до 60с на некторые команды, зависает наглухо. решил таким образом - пауза после получения ответа до следующей команды - 0,5с, время на ожидание ответа обычное 5с, и до 60с на отдельные команды.
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Sep 22 2014, 10:52
Сообщение #6


Гуру
******

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



Да, такое возможно. До получения ответа следующую команду лучше не давать - есть случаи когда последующая отменяет предыдущую, а OS модуля путается в ответах.
Это происходит когда обе команды - "операторозависимые" - особенность стека GSM.


--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
Go to the top of the page
 
+Quote Post
mich.bil
сообщение Sep 22 2014, 11:01
Сообщение #7





Группа: Участник
Сообщений: 13
Регистрация: 12-09-08
Из: Украина, Херсон
Пользователь №: 40 146



Проблема именно с проверкой счета. Какую задержку надо ставить после получения USSD ответа?

Когда я удаляю 2 последние строчки, система начинает запускаться абсолютно нормально.

Serial->println("Forcing echo off");
gsm.SendATCmdWaitResp("ATE0", 500, 50, "OK", 5);
delay(1000);
gsm.SendCmdWaitSTR("ATD*111#",13000);
delay(10000);

Поднял задержку после получения USSD до 20 секунд, стало гораздо лучше....
Go to the top of the page
 
+Quote Post
dac
сообщение Sep 22 2014, 15:38
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 600
Регистрация: 27-05-05
Пользователь №: 5 482



QUOTE (mich.bil @ Sep 22 2014, 17:01) *
Поднял задержку после получения USSD до 20 секунд, стало гораздо лучше....
лучше увеличьте время ожидания ответа до 60с, а задержку ПОСЛЕ получения ответа достаточно 1с.
хотя могу ошибаться, я проверкой баланса не интересовался
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Sep 23 2014, 07:19
Сообщение #9


Знающий
****

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



Попробуйте USSD запрос через AT+CUSSD выполнять.
Go to the top of the page
 
+Quote Post
-dizel-
сообщение Nov 21 2014, 15:33
Сообщение #10





Группа: Участник
Сообщений: 10
Регистрация: 22-05-13
Пользователь №: 76 941



Возможно стоит не здесь вопрос задать, но похожая проблема.
Модуль WS6318. Обмен по UART. Шлю команду "АТ", принимаю ответ "ОК" и сразу же шлю следующую команду не делая паузы, её уже не принимает, терминал показывает идёт передача с ошибками. Если поставить паузу 2мс между приёмом и следующей передачей - всё корректно. Подскажите как обычно это решается какую паузу делают или есть другие варианты. В документации на модуль не нашёл рекомендаций как правильно работать по UART.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Nov 21 2014, 16:41
Сообщение #11


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Нечто подобное было и с SIM900 - судя по всему, это проблемы автодетекта скорости. Попробуйте запретить автодетект, зафиксировав скорость обмена с модулем.
Go to the top of the page
 
+Quote Post
-dizel-
сообщение Nov 24 2014, 07:24
Сообщение #12





Группа: Участник
Сообщений: 10
Регистрация: 22-05-13
Пользователь №: 76 941



Дело в том, что автодетект не используется, скорсть задана вручную 115200.
Go to the top of the page
 
+Quote Post
Romashki
сообщение Dec 2 2014, 12:51
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 209
Регистрация: 5-12-10
Пользователь №: 61 419



Я использую такую строку для проверки счета "AT+CUSD=1,\"*111#\",15\r"
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 01:08
Рейтинг@Mail.ru


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