Цитата(zuy @ Dec 11 2009, 10:38)

Сейчас у меня возникла проблема на стадии переключения режима.
Эти модемы при начальном подключении обнаруживают себя как обычный носитель.
После запуска их программы управления, они переходят в режим модема.
Вопрос, как на уровне USB выполняется это переключение?
Я мучаюсь с одним модемом, в доке написано надо послать в него SCSI команду 0xFF с длиной 1 и он переключится.
Но это не работает.
Полный вариант:
HowToВ более сжатом варианте:
* Если модем MF626 -- ковыряйте Linux'овую программу usb_modeswitch, как я понимаю, она выполняет переключение режимов.
* Если модем MF100 (сейчас держу в руках, "повезло", блин! :-), Там вообще все просто! Посылаете USB-CDROM'у SCSI команду Eject, после чего модем сам переключает режим. У меня в пингвине просто прописано правило, при обнаружении подключения CDROM'а с указанными VID:PID, просто слать ему Eject:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2000", RUN+="/usr/bin/eject %k"
Но, как обычно, есть и ложка дегтя:
Цитата
В новой версии программы команды чуть другие и простым AT+ZOPERTE="beeline" не обойтись.
Увы, модем отправляет некую HEX строку и ждет в тответ тоже некую HEX строку.
После потрошения exe'шника, как и автор мануала, я тоже нашел код отвечающий за формирование строки ответа (как оказалось, сложного там нет ничего, exe'шник даже не запакован/закриптован), но публиковать его не собираюсь, поскольку есть идеи по использованию этого модема, также как и Вы, в своих устройствах и не хочу, чтобы Пчелайн сменил алгоритм "запроса/ответа". В прочем, найти код этой ф-ции не сложно, попробуйте сами...
Вот, собственно и все...