mich.bil 0 22 сентября, 2014 Опубликовано 22 сентября, 2014 (изменено) · Жалоба Добрый день! SIM900R внезапно начал замолкать при попытке установления GPRS соединения, хотя до этого работал нормально. Когда модуль не отвечает, светодиоды STATUS и NETLIGHT работают штатно, после перезагрузки модуль успешно соединяется с GPRS и начинает обмен данными. Модуль замолкает после комманды AT+CSTT Напряжение питания GSM 4.0В, питание микроконтроллера 2.9В. Помогите разобраться, где у меня косяк, лог прилагаю. Изменено 22 сентября, 2014 пользователем mich.bil Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zebrox 0 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба Тоже заметил подобное поведение, правда на обычном сим900. Иногда происходит уже в процессе обмена, а иногда в процессе установки жпрс сессии/подключения. Фантомную запитку не нашел. Помогает перезагрузка с выключением питания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба Нигде последовательность команд не перепутали? У меня на тестовом скрипте из апнотеса таких проблем нет. И еще - при проблеме с командами, пожалуйста называйте версию фирмваре. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mich.bil 0 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба Версия: 1137B01SIM900R64_ST_ENHANCE_EAT Убрал проверку счета при загрузке, и система начала стартовать с каждого раза... возвращаю проверку - начинает виснуть... Какие особенности могут быть, связанные с USSD запросом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dac 0 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба SIM900R внезапно начал замолкать при попытке установления GPRS соединения попробуйте паузы между командами увеличить. был такой прикол, если слишком короткая пауза - менее 0,6с, или отправить следующий запрос до получения ответа или заданного интервала, который может быть до 60с на некторые команды, зависает наглухо. решил таким образом - пауза после получения ответа до следующей команды - 0,5с, время на ожидание ответа обычное 5с, и до 60с на отдельные команды. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба Да, такое возможно. До получения ответа следующую команду лучше не давать - есть случаи когда последующая отменяет предыдущую, а OS модуля путается в ответах. Это происходит когда обе команды - "операторозависимые" - особенность стека GSM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mich.bil 0 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба Проблема именно с проверкой счета. Какую задержку надо ставить после получения 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 секунд, стало гораздо лучше.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dac 0 22 сентября, 2014 Опубликовано 22 сентября, 2014 · Жалоба Поднял задержку после получения USSD до 20 секунд, стало гораздо лучше....лучше увеличьте время ожидания ответа до 60с, а задержку ПОСЛЕ получения ответа достаточно 1с. хотя могу ошибаться, я проверкой баланса не интересовался Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrewlekar 0 23 сентября, 2014 Опубликовано 23 сентября, 2014 · Жалоба Попробуйте USSD запрос через AT+CUSSD выполнять. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-dizel- 0 21 ноября, 2014 Опубликовано 21 ноября, 2014 · Жалоба Возможно стоит не здесь вопрос задать, но похожая проблема. Модуль WS6318. Обмен по UART. Шлю команду "АТ", принимаю ответ "ОК" и сразу же шлю следующую команду не делая паузы, её уже не принимает, терминал показывает идёт передача с ошибками. Если поставить паузу 2мс между приёмом и следующей передачей - всё корректно. Подскажите как обычно это решается какую паузу делают или есть другие варианты. В документации на модуль не нашёл рекомендаций как правильно работать по UART. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 21 ноября, 2014 Опубликовано 21 ноября, 2014 · Жалоба Нечто подобное было и с SIM900 - судя по всему, это проблемы автодетекта скорости. Попробуйте запретить автодетект, зафиксировав скорость обмена с модулем. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-dizel- 0 24 ноября, 2014 Опубликовано 24 ноября, 2014 · Жалоба Дело в том, что автодетект не используется, скорсть задана вручную 115200. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Romashki 0 2 декабря, 2014 Опубликовано 2 декабря, 2014 · Жалоба Я использую такую строку для проверки счета "AT+CUSD=1,\"*111#\",15\r" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться