|
SIM300DZ, передача данных, Разные ответы у разных GSM-операторов |
|
|
|
Apr 8 2008, 05:45
|
Участник

Группа: Новичок
Сообщений: 21
Регистрация: 18-03-08
Из: удалить этот аккаунт!
Пользователь №: 36 006

|
Здравствуйте, уважаемые.
Проблема заключается в следующем: у двух разных GSM-операторов по разному проходит операция передачи данных. У первого все правильно:
ATD(номер)(без ";")
CONNECT 9600 (данные)+++ATH0
NO CARRIER ATH
OK
У второго же (МТС) вот так:
ATD(номер)(без ";")
CONNECT 9600 (данные)+++ATH0 UUUUUUUUUUяUU ERROR
Вот эти UUUU - это 01010101010101... (0x55 0x55 ...). Что это такое, откуда берется, почему? Искал по форуму, но ничего похожего не нашел, поэтому создаю тему (если кто уже сталкивался с этим дайте плз ссылку).
SIMCOM_Ltd SIMCOM_SIM300D Revision:1008B12SIM300D32_SST34HF3284
Сообщение отредактировал Mingrief - Apr 8 2008, 05:48
--------------------
удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!
|
|
|
|
|
Apr 8 2008, 07:23
|
Участник

Группа: Новичок
Сообщений: 21
Регистрация: 18-03-08
Из: удалить этот аккаунт!
Пользователь №: 36 006

|
Цитата(CADiLO @ Apr 8 2008, 08:05)  Не уверен что это используется оператором, но мы использовали эту последовательность для синхронизации "манчестера". Принимая "55" или инверсные ему "АА" мы узнавали в какой фазе передавать и скорость передачи. Если этот ответ не зависит от GSM-оператора, тогда откуда он берется? В описании на АТ-команды SIM300_ATC_V2.00 (кстати, впервые вижу описание без оглавления, как-то не удобно) я ничего подобного не нашел. Простите, еще я не понял что значит "мы использовали"? Как я догадываюсь, Вы, CADiLO, имеете возможность как-то влиять на прошивку и "служебная" операция по синхронизации фазы и скорости передачи "вылезла" в ненужном месте - похоже на глюк прошивки. Поправьте меня если ошибаюсь.
--------------------
удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!
|
|
|
|
|
Apr 9 2008, 08:14
|
Частый гость
 
Группа: Участник
Сообщений: 142
Регистрация: 20-08-07
Из: Тула
Пользователь №: 29 919

|
Цитата(Mingrief @ Apr 8 2008, 09:45)  Проблема заключается в следующем: у двух разных GSM-операторов по разному проходит операция передачи данных. Вот тут надо определиться: передача данных или разрыв соединения? Судя по твоему логу, второе. Цитата У второго же (МТС) вот так:
ATD(номер)(без ";")
CONNECT 9600 (данные)+++ATH0 UUUUUUUUUUяUU ERROR
Вот эти UUUU - это 01010101010101... (0x55 0x55 ...). Что это такое, откуда берется, почему? Похоже, это пучит прошивку и она выдает наружу всякий мусор. Ты ведь уже передал данные, так? И хочешь разорвать соединение? А в ответ вместо NO CARRIER всякая фигня с ERROR на конце приходит? Явно прошивка. Оператор тут чисто опосредованно - допустим, используется такой вид соединения, который в прошивке неправильно обрабатывается. Цитата Revision:1008B12SIM300D32_SST34HF3284 Или перешивать до победного (я не помню, что нынче последнее для "D"), либо забить и ждать в программе _любого_ ответа модема - либо 0x0A, "NO CARRIER", 0x0D - либо 0x0A, "ERROR", 0x0D. Остальное тупо игнорировать.
|
|
|
|
|
Apr 9 2008, 10:06
|

Участник

Группа: Участник
Сообщений: 17
Регистрация: 9-04-08
Из: Украина, Запорожье
Пользователь №: 36 598

|
Цитата(stream @ Apr 9 2008, 11:14)  либо забить и ждать в программе _любого_ ответа модема - либо 0x0A, "NO CARRIER", 0x0D - либо 0x0A, "ERROR", 0x0D. Остальное тупо игнорировать. Когда производство единичное можно под глюки любой прошивки подстроиться. А так кто его знает, что начнет очередной модуль выдавать в серии?
--------------------
Ковчег был построен дилетантом, профессионалы построили Титаник
|
|
|
|
|
Apr 9 2008, 10:19
|
Частый гость
 
Группа: Участник
Сообщений: 142
Регистрация: 20-08-07
Из: Тула
Пользователь №: 29 919

|
Цитата(ChYM @ Apr 9 2008, 14:06)  Когда производство единичное можно под глюки любой прошивки подстроиться. А так кто его знает, что начнет очередной модуль выдавать в серии? К сожалению, это везде жизнь такая - безотносительно к симкому. Например, в одной софтине пришлось подстраиваться под глюки японской версии Windows - в русской и английской все было нормально. Хочешь сделать нормальное изделие - при смене компонента делай тщательную проверку. А предложенный способ обхода хорош тем, что универсален - будет работать и с багом, и когда (если) баг исправят.
|
|
|
|
|
Apr 9 2008, 11:34
|
Участник

Группа: Новичок
Сообщений: 21
Регистрация: 18-03-08
Из: удалить этот аккаунт!
Пользователь №: 36 006

|
Спасибо всем ответившим. Собственно так и поступил - в случае _неполучения_ правильной последовательности завершения соединения от симкома, сам прекращаю соединение +++ATH. Данные то передал-получил как положено, да и модем после еррора не виснет, работает нормально. В новом варианте все нормально работает. Еще раз всем спасибо и удачи!
--------------------
удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!
|
|
|
|
|
Apr 9 2008, 13:24
|
Частый гость
 
Группа: Участник
Сообщений: 142
Регистрация: 20-08-07
Из: Тула
Пользователь №: 29 919

|
Цитата(Mingrief @ Apr 9 2008, 15:34)  Собственно так и поступил - в случае _неполучения_ правильной последовательности завершения соединения от симкома, сам прекращаю соединение +++ATH. Данные то передал-получил как положено, да и модем после еррора не виснет, работает нормально. Так все-таки интересно -- "+++ATH0" в логах - это что такое? Это ты посылаешь или оно само приходит из модема? Если приходит - то у тебя и на том конце зоопарк отменный. Перед +++ пауза недостаточна, или после +++ маленькую паузу хочет.
|
|
|
|
|
Apr 9 2008, 14:37
|
Участник

Группа: Новичок
Сообщений: 21
Регистрация: 18-03-08
Из: удалить этот аккаунт!
Пользователь №: 36 006

|
Цитата(stream @ Apr 9 2008, 15:24)  Так все-таки интересно -- "+++ATH0" в логах - это что такое? Это ты посылаешь или оно само приходит из модема?
Если приходит - то у тебя и на том конце зоопарк отменный. Перед +++ пауза недостаточна, или после +++ маленькую паузу хочет. +++ATH0 - это с того конца прилетает, я тут влиять никак не могу. На счет пауз сейчас замерил: (данные от МК в SIM300DZ) (пауза около 3с) +++ATH0 (одним пакетом от SIM300DZ) (пауза 0,7с) NO CARRIER (от SIM300DZ) (нет паузы) ATH (от МК) (пауза 5мс) OK (от SIM300DZ)
--------------------
удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!удалить этот аккаунт!
|
|
|
|
|
Apr 10 2008, 18:27
|

Участник

Группа: Участник
Сообщений: 17
Регистрация: 9-04-08
Из: Украина, Запорожье
Пользователь №: 36 598

|
Цитата(edo @ Apr 10 2008, 14:26)  проще всего распаять dtr и сказать модему at&d1 - я думаю дропать dtr винда умеет. SimCom c DTR-ом как раз и не дружит. У меня нормально отрабатывает только +++ и затем АТН0, а c &D1 и &D2 пока добиться от нескольких модулей нормальной реакции на DTR не удалось
--------------------
Ковчег был построен дилетантом, профессионалы построили Титаник
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|