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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> GPRS on GE864, выход в коммандный режим
gsm_starter
сообщение Mar 7 2010, 14:10
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



В общем проблема следующая хочу присоединится к GPRS в командном режиме, делаю для этого:

at+cgdcont=1,"IP","internet","0.0.0.0",0,0

OK
at#scfg=1,1,300,90,600,50

OK
AT#SGACT=1,1

#SGACT: 91.145.244.159

OK
AT#SD=1,0,25,"77.88.21.38",0,0,1

CONNECT


И попадаю в фоновый режим, я конечно могу с него выйти по "+++", но все же как-то не красиво получается...
И тем более комманды SCFGEXT, SSEND возвращают ошибку так как буд-то модем вообще не знает этих комманд (возращает не с кодом ошибки а просто error)
SELINT = 2, устанавливаю.
Господа, что я упускаю?

Сообщение отредактировал gsm_starter - Mar 7 2010, 14:14
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Mar 8 2010, 22:11
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Что по вашему обозначает фоновый режим?
После connect вы получаете прямое соединение с сервером.
Переход в командный режим (управление модемомом) по +++.
Возврат в online mode по SO=1.

Не нравится переключаться из command mode в online mode переходите в режим мультиплексирования (CMUX). Управлять модемом проще от этого не станет но зато будет 3 независимых канала один из которых можно использовать для работы с сервером а один для управления модемом.

Сообщение отредактировал mempfis_ - Mar 8 2010, 22:18
Go to the top of the page
 
+Quote Post
gsm_starter
сообщение Mar 9 2010, 14:09
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



В документации на GPRS просто было написано что последний параметр в команде #SD, обозначает, если 0, то фоновый режим, 1 если коммандный. Разница в том что ф воновом команды не обрабатываются а все отправленное в ком-порт идет на сервер. А в коммандном для отправки сообщений необходимо использовать команду #SSEND (прием сообщений осуществляется через SRING).
Но вот выйти в коммандный режим не выходит, а комманды SCFGEXT, SSEND вообще возвращают ошибку как буд-то не существую. В чем проблема?
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Mar 9 2010, 15:08
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(gsm_starter @ Mar 9 2010, 18:09) *
В документации на GPRS просто было написано что последний параметр в команде #SD, обозначает, если 0, то фоновый режим, 1 если коммандный. Разница в том что ф воновом команды не обрабатываются а все отправленное в ком-порт идет на сервер. А в коммандном для отправки сообщений необходимо использовать команду #SSEND (прием сообщений осуществляется через SRING).
Но вот выйти в коммандный режим не выходит, а комманды SCFGEXT, SSEND вообще возвращают ошибку как буд-то не существую. В чем проблема?


Ну так попробуйте подключится в online-mode (SD=1,0,80,"www.google.com" например).
Получайте connect. По +++ выходите в command mode. Делаете всё что нужно возвращаетесь в online mode по AT#SO=1
Если связь оборвётся то в command mode вам вернётся сообщение NO CARRIER.

Проверил на воём GE864-PY - команды SCFGEXT, SSEND, SRECV он не поддерживает в принципе.
А команду SD всегда выполняет в online mode (даже если установить последний бит в команде).
Go to the top of the page
 
+Quote Post
gsm_starter
сообщение May 5 2010, 12:49
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



Цитата(mempfis_ @ Mar 9 2010, 18:08) *
Ну так попробуйте подключится в online-mode (SD=1,0,80,"www.google.com" например).
Получайте connect. По +++ выходите в command mode. Делаете всё что нужно возвращаетесь в online mode по AT#SO=1
Если связь оборвётся то в command mode вам вернётся сообщение NO CARRIER.

Проверил на воём GE864-PY - команды SCFGEXT, SSEND, SRECV он не поддерживает в принципе.
А команду SD всегда выполняет в online mode (даже если установить последний бит в команде).


Зачем тогда писать в даташите на AT-команды что они поддерживаются? Вообще их не понимаю.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение May 6 2010, 06:47
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(gsm_starter @ May 5 2010, 15:49) *
Зачем тогда писать в даташите на AT-команды что они поддерживаются? Вообще их не понимаю.


Вероятно это общий список АТ-команд для всех модемов телит. Конкретные модели могут не поддерживать некоторые команды.
Go to the top of the page
 
+Quote Post
gsm_starter
сообщение Jun 21 2010, 20:10
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



Такая проблема. Я работаю с сервером, когда нужно выйт я как вы и советовали использую "+++". Так вот проблема в том что сервер получает эту строку "+++" в виде данных, это он характеризует как некорректные данные и закрывает сокет. У меня вопрос, как этого избежать? Как выйти с онлайн-режима ничего не слав при этом на сервер? В железе используется только rx и tx.
Go to the top of the page
 
+Quote Post
av-master
сообщение Jun 22 2010, 06:08
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 857
Регистрация: 14-05-05
Из: Украина
Пользователь №: 4 998



подобрать длительность пауз между плюсами.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Jun 22 2010, 06:43
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(gsm_starter @ Jun 21 2010, 23:10) *
Такая проблема. Я работаю с сервером, когда нужно выйт я как вы и советовали использую "+++". Так вот проблема в том что сервер получает эту строку "+++" в виде данных, это он характеризует как некорректные данные и закрывает сокет. У меня вопрос, как этого избежать? Как выйти с онлайн-режима ничего не слав при этом на сервер? В железе используется только rx и tx.


Вы как эти +++ подаёте?
Нужно подавать просто +++ без \r\n в конце.
Мои ge864/863 всегда понимают что это команда перехода в командный режим, даже если они в online-режиме.
Go to the top of the page
 
+Quote Post
gsm_starter
сообщение Jun 22 2010, 08:43
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



Цитата(av-master @ Jun 22 2010, 09:08) *
подобрать длительность пауз между плюсами.

Пробовал ждать по 2 секунды до и после.

Цитата(mempfis_ @ Jun 22 2010, 09:43) *
Вы как эти +++ подаёте?
Нужно подавать просто +++ без \r\n в конце.
Мои ge864/863 всегда понимают что это команда перехода в командный режим, даже если они в online-режиме.

Разумеется без \r\n в конце. Шлю исключительно 3 байта.

У меня вопрос может нужно модуль сперва как-то сконфигурировать. Какими командами вы начинаете работу с самим модулем и какими коммандами переводите его в онлайн-режим?

Сообщение отредактировал gsm_starter - Jun 22 2010, 08:47
Go to the top of the page
 
+Quote Post
tamam
сообщение Jun 22 2010, 09:23
Сообщение #11


Участник
*

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



Для модема GM864-GPS использовал команду запрета передачи ESC последовательности еа сервер:

AT#SKIPESC=1

Модем возвращается в командный режим без передачи +++ на сервер.

Ошибся чуток, модем GM862-GPS.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Jun 22 2010, 10:24
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(gsm_starter @ Jun 22 2010, 11:43) *
Пробовал ждать по 2 секунды до и после.

У меня вопрос может нужно модуль сперва как-то сконфигурировать. Какими командами вы начинаете работу с самим модулем и какими коммандами переводите его в онлайн-режим?


Если настройки сокета такие как в первом посте
Код
at#scfg=1,1,300,90,600,50

то таймаут отправки данных составляет 5 секунд (50 сотен милисекунд). Нужно ждать не менее 5 секунд.
Никаих особых настроек не выполняю - всё приблизительно как в первом вашем посте.

Через терминал отправляю настройки как у Вас. Только таймаут у меня 1 - 100 мС и всё прекрасно работает.
Перепроверил - даже с 5секундным таймаутом всё хорошо работает
Go to the top of the page
 
+Quote Post
gsm_starter
сообщение Jun 22 2010, 13:44
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



Цитата(tamam @ Jun 22 2010, 12:23) *
Для модема GM864-GPS использовал команду запрета передачи ESC последовательности еа сервер:

AT#SKIPESC=1

Модем возвращается в командный режим без передачи +++ на сервер.

Ошибся чуток, модем GM862-GPS.

Проблема решилась AT#SKIPESC=1.
СПАСИБО.
Теперь можно вообще никаких пауз не выдерживать.
Go to the top of the page
 
+Quote Post
gsm_starter
сообщение Jul 21 2010, 15:33
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 21
Регистрация: 14-01-10
Пользователь №: 54 809



У меня вопрос ещё по поводу AT#SD.
Бывает такое что сервер недоступен и ожидание от это команды очень длинное. И самое интересное что иногда команда дает ответ через 45 секунд иногда через 75. И что самое плохое, это то что по время ожидания если выполнить какую-то команду, то ответа и от неё не дождешся, возможно во время работы этой команды они игнорируются.
У меня вопрос, как задать время ожидания комманды AT#SD? И можно ли как-то обрубить выполнение? К примеру я пусть таймаут большой, если мне ничего больше не нужно делать я могу и подождать, но тут вдруг мне нужно позвонить, то можно как-то сбросить выполнение комманды недожидаясь ответа и выполнить другую?
Go to the top of the page
 
+Quote Post
tamam
сообщение Jul 22 2010, 07:11
Сообщение #15


Участник
*

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



В описании АТ команд для Telit, насколько я помню, указано максимальное время ответа для команд.
И еще там прямо написано, что надо обязательно дождаться ответа перед подачей следующей команды.
Иначе их модем просто игнорирует.

Так что, скорее всего, придется ждать ответа.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 06:16
Рейтинг@Mail.ru


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