unDEFER 0 6 марта, 2012 Опубликовано 6 марта, 2012 · Жалоба Здравствуйте! На свою голову попробовал использовать мультиканальный (мульплексорный) режим на модеме Siemens MC35i. Воспользовался под Linux для этого утилитой gsmmux. Ну это не суть. Утилита инициирует мультиплексорный режим последовательностью команд: AT+IPR=57600 AT AT&S0 AT\Q3 AT+CMUX=0 Других логов к сожалению нет, известно только, что на AT+CMUX=0 ответа "OK" от модема получено не было. После этого он вообще ни на что не отвечает. А ужас весь в том, что и после перезагрузки работоспособность модема не восстанавливается. Ещё более ужасное, что решив что модем умер, я попробовал тоже самое проделать над другим модемом (точно модель смогу назвать завтра, если необходимо) и он вошёл в точно такой же "рыбий" режим. На последовательность байт (0xC3, 0x01), которые вроде бы должны вернуть привычный AT-режим, модем тоже не реагирует. Но индикатор ведёт себя должным образом сигнализируя о том, что соединение со станцией установлено или не установлено если SIM-карты нет. При включении питания на COM-порт приходит какая-то последовательность байт. Не уверен что это важно, но завтра постараюсь перевести её с каракулей в нормальную HEX-последовательность. Я не верю в то что эти модемы умерли безвозвратно, но чего же они ожидают теперь на входе? Помогите, пожалуйста! И заранее спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
unDEFER 0 7 марта, 2012 Опубликовано 7 марта, 2012 · Жалоба Второй модем называется iRZ automation MC52iT. Ответ при включении: 00 f8 66 98 66 66 98 e6 98 06 66 06 86 98 06 66 e6 80 98 80 В общем начальный 00 и конечный 80, вроде как говорит о том что это не совсем мусор. Буду расшифровывать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
unDEFER 0 7 марта, 2012 Опубликовано 7 марта, 2012 · Жалоба Ответ при включении: 00 f8 66 98 66 66 98 e6 98 06 66 06 86 98 06 66 e6 80 98 80 Долгое изучение спецификаций "Multiplexer User's Guide" от Siemens и протокола GSM07.10 позволяет заключить, что это ответ не в формате этого протокола.. Похоже на тупик, не знаю куда копать дальше.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 9 7 марта, 2012 Опубликовано 7 марта, 2012 · Жалоба Посмотрите может этот документ вам поможет. Ну и на список литературы в конце статьи гляньте.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
unDEFER 0 7 марта, 2012 Опубликовано 7 марта, 2012 (изменено) · Жалоба Посмотрите может этот документ вам поможет. Ну и на список литературы в конце статьи гляньте.... Да, как я уже говорил не похоже это почему-то на MUX-протокол. Вот, заметил что, если запихивать в COM-порт случайную последовательность, то на выходе тоже получаются разные последовательности. В основном это перемежающиеся "0x06 0x66 0xFE", где 0x66 может повторятся от 0 до 6 раз. В частности этот вывод возникает после посылки последовательности "0x09 0x20" много раз. При этом у модема есть некий таймаут в 30 секунд, если прервать посылать что либо на вход, то через 30 секунд возникает ответ: e6 80 98 80 66 86 98 86 98 e6 98 18 66 1e 98 80 А совсем редко при посылке случайной последовательности возникают и более интересные ответы. Вот только один из них: e0 f8 1e 98 86 06 06 1e 1e e0 fe 86 fe e6 fe fe 78 7e 06 18 06 e0 fe 1e 98 80 Вынимать их довольно сложно, какой-то закономерности в них я не нашёл, но они бывают разными. Бывают ответы без "0x06 0x66 0xfe" и очень длинные. Например: 06 06 7e 86 9e 98 e0 86 e0 e6 e6 9e e6 e6 06 |...~............| 00000140 1e 7e 80 e6 80 fe e0 66 86 18 86 18 86 06 78 18 |.~.....f......x.| 00000150 fe 18 66 60 fe e6 e0 00 98 9e e0 e0 9e 98 98 80 |..f`............| 00000160 00 86 80 80 fe fe e0 e0 06 80 60 06 1e e0 f8 80 |..........`.....| 00000170 e6 60 18 86 60 86 66 9e 60 78 18 fe 78 9e 66 00 |.`..`.f.`x..x.f.| 00000180 78 78 60 98 98 1e 66 1e 7e 86 18 1e 18 fe 18 7e |xx`...f.~......~| 00000190 80 00 66 80 66 1e 98 9e 80 9e 98 9e 7e 78 80 e0 |..f.f.......~x..| 000001a0 7e f8 80 00 1e e6 7e 7e f8 60 60 98 06 f8 60 7e |~.....~~.``...`~| 000001b0 78 66 fe 00 98 e6 fe f8 e0 98 1e f8 f8 78 e6 e0 |xf...........x..| 000001c0 9e f8 7e 7e e6 7e e6 86 f8 e0 18 78 78 66 66 18 |..~~.~.....xxff.| 000001d0 80 66 9e 60 98 98 00 80 e0 06 78 06 e0 e0 66 18 |.f.`......x...f.| 000001e0 7e fe 66 f8 9e 9e 80 e0 86 78 78 1e 98 fe e6 98 |~.f......xx.....| 000001f0 e6 9e 80 86 9e 66 1e 18 00 e6 e6 7e 9e e6 18 e6 |.....f.....~....| 00000200 66 7e 66 00 98 9e 60 98 1e 9e 86 86 86 1e 9e 00 |f~f...`.........| 00000210 e0 86 f8 f8 80 80 00 18 80 18 06 86 e6 e6 78 00 |..............x.| 00000220 00 e6 f8 06 18 60 80 7e e6 98 66 e0 9e 98 06 06 |.....`.~..f.....| 00000230 f8 66 60 66 86 18 e6 00 06 98 18 00 9e fe 98 e0 |.f`f............| 00000240 66 86 60 9e e0 66 98 66 1e f8 60 7e 80 9e fe f8 |f.`..f.f..`~....| 00000250 fe 78 06 9e 7e e6 e0 e0 e0 e0 80 66 86 f8 66 80 |.x..~......f..f.| 00000260 9e e6 98 80 1e 7e 66 78 78 98 60 86 66 86 00 9e |.....~fxx.`.f...| 00000270 e0 e6 06 60 98 9e f8 e0 e6 f8 e0 e0 98 66 80 9e |...`.........f..| 00000280 e6 78 78 86 7e 7e 1e 86 86 06 78 e6 60 1e 86 f8 |.xx.~~....x.`...| 00000290 78 1e 18 e6 86 80 80 86 9e e6 e0 fe 86 86 60 80 |x.............`.| 000002a0 60 fe 00 80 f8 1e 86 e6 98 80 78 e0 78 fe 86 00 |`.........x.x...| 000002b0 66 fe 98 80 86 06 e6 e6 60 86 98 80 98 e6 9e 86 |f.......`.......| 000002c0 66 98 f8 86 86 e0 7e e6 00 06 9e e0 86 60 80 86 |f.....~......`..| 000002d0 f8 86 e6 e6 e6 fe 9e fe 9e 86 e0 06 78 60 86 86 |............x`..| 000002e0 e6 86 7e 80 66 9e 66 fe fe 7e 98 f8 86 86 9e 60 |..~.f.f..~.....`| 000002f0 86 18 7e 66 1e 18 66 fe 18 f8 e6 f8 86 80 1e f8 |..~f..f.........| 00000300 86 98 e0 18 80 7e 66 9e 00 1e 66 9e 9e 1e 86 00 |.....~f...f.....| 00000310 60 80 60 06 60 78 06 60 e0 f8 7e 66 66 86 86 00 |`.`.`x.`..~ff...| 00000320 e6 e6 06 e6 9e 7e 60 60 80 86 f8 f8 66 9e 86 18 |.....~``....f...| 00000330 66 06 98 18 f8 78 78 7e 98 80 f8 9e 9e 60 18 06 |f....xx~.....`..| 00000340 06 60 18 00 9e fe 06 e6 e0 7e 1e 80 7e 1e 78 98 |.`.......~..~.x.| 00000350 80 1e 9e f8 9e 06 98 e0 98 9e 86 86 fe 1e fe 78 |...............x| 00000360 86 e0 80 80 00 18 80 1e 06 80 00 18 80 86 fe 06 |................| 00000370 18 9e 1e 7e 7e 7e e0 98 86 e6 9e 9e 86 e6 e6 7e |...~~~.........~| 00000380 e6 66 00 18 7e 18 98 9e e6 e6 86 fe 66 80 00 18 |.f..~.......f...| 00000390 80 1e 60 86 80 1e e6 86 86 00 98 e0 e0 e0 00 1e |..`.............| 000003a0 80 e6 78 06 e0 f8 80 9e 80 e6 9e 98 7e 86 e0 e6 |..x.........~...| 000003b0 86 e6 60 1e 86 00 98 00 e6 e6 fe 1e 80 06 f8 86 |..`.............| 000003c0 9e 66 f8 86 78 60 1e fe 98 9e 00 86 66 e6 e6 86 |.f..x`......f...| 000003d0 80 06 18 86 e0 f8 86 98 1e f8 66 78 f8 86 e0 e6 |..........fx....| 000003e0 e6 00 1e 06 80 e6 66 98 e6 f8 86 78 18 98 9e fe |......f....x....| 000003f0 9e 7e 9e e0 06 78 06 e6 9e fe 1e 00 86 80 80 e0 |.~...x..........| 00000400 18 98 fe 86 66 e0 e6 f8 86 60 f8 f8 1e 18 fe 1e |....f....`......| 00000410 66 86 78 80 86 80 f8 86 e0 06 60 9e 66 86 80 1e |f.x.......`.f...| 00000420 60 00 e0 78 80 e6 e0 06 18 f8 9e 80 9e 86 e6 78 |`..x...........x| 00000430 86 66 e6 18 f8 f8 fe fe 1e 06 e0 86 e6 80 78 98 |.f............x.| 00000440 e0 e6 98 fe e6 e6 66 00 86 9e 00 78 80 00 86 98 |......f....x....| 00000450 e6 98 fe 9e 18 66 98 9e 86 7e 06 fe Возникла мысль, что все эти последовательности результат некого преобразования байтов в 16-битовые слова. По крайней мере из 423 таких дуплей уникальными являются 201. В принципе это, конечно, ещё ничего не значит. Поэтому я просто попробую проанализировать на выходных 100 Килобайтный лог ответов этого модема. В общем даже без 100 Кб видно, что корректными в этой кодировке считаются только 16 значений байта: 00, 06, 18, 1e, 60, 66, 78, 7e, 80, 86, 98, 9e, e0, e6, f8, fe Изменено 7 марта, 2012 пользователем unDEFER Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ys1797 0 7 марта, 2012 Опубликовано 7 марта, 2012 · Жалоба На последовательность байт (0xC3, 0x01), которые вроде бы должны вернуть привычный AT-режим, модем тоже не реагирует. Для закрытия используется mux фрейм, т.е. не просто два байта, а : FLAG (0xF9) Адрес для 0 канала тип кадра UIH (0xEF) длина 0x02 Ваши 0xC3 и 0x01 байт CRC FLAG (0xF9) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
psL 0 7 марта, 2012 Опубликовано 7 марта, 2012 · Жалоба возможно битрейт не 57600, отсюда несовпадение с форматом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
unDEFER 0 7 марта, 2012 Опубликовано 7 марта, 2012 · Жалоба Для закрытия используется mux фрейм, т.е. не просто два байта, а : FLAG (0xF9) Адрес для 0 канала тип кадра UIH (0xEF) длина 0x02 Ваши 0xC3 и 0x01 байт CRC FLAG (0xF9) Ну, да, я в курсе, я это делал опять же тем же кодом из gsmmux, он там автоматически во фрейм всё это засовывает. (gsmmux вообщем сам пытается закрыть MUX режим, если нет ответа на "AT"). Но судя по стандарту ответы модема тоже ведь должны быть в том же формате. Но там фреймов 0xF9 и в помине нет. А главное - по стандарту он и вовсе не должен был войти ни в какой режим, так как по таймаут'у должен был вернуться к приёму AT-команд. К сожалению не знаю что происходит если модем работает со скоростью 57600, а скорость порта у меня установлена 115200. Я только пробовал устанавливать скорость порта 57600, и в этом случае я получаю такие же ответы во время включения. Да и в gsmmux не думаю, что могли так глупо не учесть скорость. Ну и наконец я даже Multiplexer драйвер под Windows пробовал ставить, но он точно также не может найти его. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
psL 0 8 марта, 2012 Опубликовано 8 марта, 2012 · Жалоба К сожалению не знаю что происходит если модем работает со скоростью 57600, а скорость порта у меня установлена 115200. Я только пробовал устанавливать скорость порта 57600, и в этом случае я получаю такие же ответы во время включения. AT+IPR=57600 это установка соответствующей скорости. Одинаковых ответов не может быть на разных скоростях, если только модем не в режиме autodetect (AT+IPR=0). Может все таки подключить модем к какому-нибудь терминалу и перебрать все скорости по порядку или осциллографом посмотреть реальную скорость? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
unDEFER 0 8 марта, 2012 Опубликовано 8 марта, 2012 (изменено) · Жалоба AT+IPR=57600 это установка соответствующей скорости. Одинаковых ответов не может быть на разных скоростях, если только модем не в режиме autodetect (AT+IPR=0). Может все таки подключить модем к какому-нибудь терминалу и перебрать все скорости по порядку или осциллографом посмотреть реальную скорость? Спасибо, я попробую ещё раз погонять разные скорости, но это уже будет в воскресенье. Просто странно, что этого ни одна утилита не делает автоматически. Вообще поиск в Google по строке из 16 всевозможных значений байта, выдаёт всего 2 ответа: на одной страничке человек кажется пытается расшифровать протокол управления каким-то контроллером телескопа и у него там есть какие-то задвоения контрольных последовательностей, что-то не сходится. а на другой в неком форуме человек тут же извиняется, что увидел что скорость должна быть 9600 . а не 19200. Кроме того значения этих "корректных" значений байта в двоичной форме наводит на мысль, что это как бы "размазанные" (раздвоенные) на скорости биты: 00000000 00000110 00011000 00011110 01100000 01100110 01111000 01111110 10000000 10000110 10011000 10011110 11100000 11100110 11111000 11111110 Наконец, так часто встречающиеся "98 80" в ответах модема (в двоичной форме "10011000 10000000"). В принципе похоже на "AT" (Шестнадцатиричное "41 54", двоичное "01000001 01010100"), особенно если отсечь биты с 3-го по 6-ой. На порядок можно внимание не обращать, так как "80 98" встречается отнюдь не реже. И если я прав, то "06" и "66" это точно такие же размазанно усечённые "\r" или "\n". Пока выходные может попробую ещё что-то порасшифровывать в призме этой теории. Изменено 8 марта, 2012 пользователем unDEFER Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
psL 0 8 марта, 2012 Опубликовано 8 марта, 2012 · Жалоба Если программа терминала будет перебирать скорости (число бит, четность и т.п.) для оконечного оборудования, то она сойдет с ума. В оконечном оборудовании (модеме) это проще сделать, потому что, например, модем знает что ему придет от терминала - возврат каретки или AT, а терминал ничего не знает про оконечное оборудование. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
unDEFER 0 11 марта, 2012 Опубликовано 11 марта, 2012 · Жалоба Если программа терминала будет перебирать скорости (число бит, четность и т.п.) для оконечного оборудования, то она сойдет с ума. В оконечном оборудовании (модеме) это проще сделать, потому что, например, модем знает что ему придет от терминала - возврат каретки или AT, а терминал ничего не знает про оконечное оборудование. Спасибо, Вам огромное, вы действительно правы! Установка скорости порта на 57600 решила проблему. Да, в Интернете везде указано о важности установки верной скорости, но просто немного поработав на режиме автоматического определения скорости, для меня стало неожиданностью, что gsmmux устанавливает режим постоянной скорости. Кроме того там отключилось эхо, и я вероятно не донабрав "AT" решил, что оно не работает когда пытался первый раз установить верную скорость. Кстати, вот, на самом деле какое сообщение присылает модем при старте (его не видно при автоматическом определении скорости, так как видимо до посылки команды модем ещё не знает нужную скорость): "^SYSSTART". А при таймауте: "ERROR". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться