- Паутина - http://pauk.org.ua -

«Перезагрузка» юсб-устройств

Posted By Паук On 14.03.10 @ 22:12 In Hard & Soft,mobile | 35 Comments

Иногда подключенный к компу юсб-модем/телефон выпадает в осадок. При подключении к инету выпадает «в модеме произошла аппаратная ошибка», или софт какой не работает… Помогает только отключение и включение девайса. А если это нужно сделать в автоматически? У меня была задача перегрузить модем с командной строки. Гугль признался о двух прогах.

Первая — это devcon [1] от M$. Из описания на офсайте: «DevCon — это программа с интерфейсом командной строки, которая используется в качестве альтернативы диспетчеру устройств С ее помощью можно включать, выключать, перезапускать, обновлять, удалять и опрашивать отдельные устройства или группы устройств.»

Получаем список юсб- девайсов:
devcon status usb\*
и дальше
devcon restart «USB\VID_19D2&PID_FFFE*»
будет перезагружен cdma-модем ZTE AC8700

Если к компу подключены несколько устройств одного производителя — нужно указывать как pid так и vid, потому как если указать сам vid девайса (например, usb\vid_19d2*) — будут перезагружены все zte-модемы, которые подключены. Ну и в данном случае название устройства нужно взять в двойные кавычки »

Единственное, что мне не нравится: если модем используется (например, запущен софт или подключен инет) — то устройство не перезагрузится.

Вторая прога — USBDeview [2]. Работает как в оконном, так и в консольном режиме.
USBDeview /disable_by_pid 19d2;fffe — отключит модем и
USBDeview /enable_by_pid 19d2;fffe снова включит его.

Здесь уже если приказал «вырубить», то проге наплевать — используется ли устройство, аль нет: отключит питание не спрашивая.

Загружаем: devcon [3], usbdeview [4].


35 Comments (Open | Close)

35 Comments To "«Перезагрузка» юсб-устройств"

#1 Comment By Lisicin On 14.04.10 @ 15:44

Пользуюсь вторым решение — USBDeview.

#2 Comment By AiS On 16.04.10 @ 01:22

Пользовался и тем и тем, но в консольном режиме с USBDeview не получается.
Как например, просмотреть серийные номера и т.п.
Как я не пробывал, не получается ничего подобного, и к тому же запускается окно USBDeview.
Подскажите на примере, пожалуйста.

#3 Comment By Паук On 16.04.10 @ 19:03

AiS, если ничего не получается — значит пришло время прочитать хелп.
USBDeview.exe /stab list.txt
Сохранит список устройств в текстовый фал (list.txt). Ну а дальше его обработать — дело техники.

#4 Comment By AiS On 16.04.10 @ 21:27

Паук,
хелп конечно читал, вариант вывода в файл работает, но меня интересовало аналогичное этому:
devcon status usb\*

т.е. вывод не всего и в файл, а конкретное значение и в консоль.

#5 Comment By Паук On 17.04.10 @ 13:27

Ну хоть в файл есть. Напиши разработчику предложение — может и реализует…

#6 Comment By Rimsky On 16.06.10 @ 12:04

СПАСИБИЩЕ Вам за советы и проделанную работу!
вопросик: нельзя ли к USBDeview /enable_by_pid 19d2;fffe прикрутить if, записать в батник и поставить на расписание каждую минуту, чтобы не рвать связь каждый раз, а автоматом если модем оффлайн then USBDeview /enable_by_pid 19d2;fffe
СПАСИБО!

#7 Comment By Паук On 16.06.10 @ 20:59

Rimsky, я делаю немного по другому.
Проверяю, есть ли соединение (если нет — то подключается инет), проверяю, есть ли входящий траф. Если трафа нет — пингую гугль. Если нет пинга — то модем на перезагрузку, а потом установка соединения.
До того, как делал модему перезагрузку — иногда модем зависал, нужно было руками передергивать. Теперь с марта (с момента публикации сообщения) модемы (zte mf620 и zte ac8700) еще ни разу не зависли.

#8 Comment By Rimsky On 17.06.10 @ 10:51

Этот процесс автоматизирован? или руками?

#9 Comment By Паук On 17.06.10 @ 19:46

Естественно автоматизирован)

#10 Comment By Rimsky On 18.06.10 @ 21:10

Поделитесь, пожалуйста, автоматизацией.

#11 Comment By Енот On 08.07.10 @ 11:52

Присоединяюсь к запросу, как расписал автоматом?)

#12 Comment By Паук On 09.07.10 @ 15:49

Скоро сооружу статейку ;)

#13 Comment By Rimsky On 26.07.10 @ 08:42

«Скоро» еще не наступило? :-)

#14 Comment By Паук On 04.08.10 @ 20:48

не((
туго со временем, чтобы расписать все «от а до я»

#15 Comment By Rimsky On 24.08.10 @ 07:28

Оченно просим сделать!

#16 Comment By Interest On 17.11.10 @ 01:40

Странно, а у меня UsbDeview не отключаем модем Huawei, хотя пробовал и в консоли и в программе

#17 Comment By Паук On 17.11.10 @ 11:26

Мой ZTE AC8700 обе проги перегружают без лишних телодвижений, а вот ZTE MF620… Если модем в сети — то он не перегрузится, для начала нужно его вырубить с сети командой at+cfun=0 в терминале.
Пробуй.

#18 Comment By Interest On 17.11.10 @ 18:02

пробовал, все равно не получатся, сам модем уже не работает, а вот корневой usb концентратор все равно работает
поступил таким образом:
сначала в гипертерминале отключаем модем, после его перезагружаем из гипертерминала командой, и пока не перезагрузился включаем devcon (usbdeview) и отключаем корневой usb концентратор, только таким образом получилось отключить usb
только вот возник сразу же попутный вопрос: а можно ли как-нибудь прописать команды для 3g модема из командной строки, т.е. сделать bat-файл, в котором бы запускался терминал или его аналог и далее в этом файле содержались бы команды для модема. получается, что запускаем bat-файл и из него передаются команды на модем и он отключается? искал, пока такое решение нигде не нашел, может Вы, что сможете придумать и подсказать?

#19 Comment By Паук On 17.11.10 @ 19:40

Можно
Либо echo at+cfum=1 > com7
но не всегда работает
Или через putty: нужно в нем создать профиль modem и файл init c содержимым at+cfum=1
Затем plink -load modem < init

#20 Comment By Interest On 18.11.10 @ 15:40

а файл init, с каким должен быть расширением, может txt? и где ог создается, произвольно в Блокноте….или это делается как-то в самом putty не смог разобраться…
а насчет команды echo at+cfun=1 >com7 бесполезно, много раз пробовал, не выходит

#21 Comment By Interest On 18.11.10 @ 17:57

погуглил, что-то не получилось найти информацию об этом файле ini, что это такое? и как его создавать?

#22 Comment By Паук On 18.11.10 @ 18:42

Interest, файл обычный текстовик. Можно без расширения txt, если будеш создавать init.txt — тогда делаеш plink -load modem < init.txt

#23 Comment By Interest On 18.11.10 @ 22:25

Pauk, странно и таким образом не хочет, просто зависает командная строка и все. после создания профиля modem и набора в командной строке plink -load modem можно задавать команды, как если бы просто набрал plink, а как только добавляю < init, никакой реакции со стороны модема и командная строка зависает, в ней нельзя ничего набрать

#24 Comment By Паук On 19.11.10 @ 10:09

Странно
У меня отправляется в порт команда, которая в файле «инит» + после этого в командной строке появляется ответ модема…

#25 Comment By Interest On 19.11.10 @ 17:56

Pauk, агромистое спасибо за советы! вроде получилось, только с помощью другой программы easyport, порядок действий похожий, что и с plink, однако, чего он не хочет с «инит» работать нет знаю.
узнал только что об совмещенной команде: at+cfun=1,1 в ходе которой модем перезагружается и снова регистрируется в сети. очень нужно, чтобы модем перезагружался и модем не включался снова после перезагрузки, а лишьт принудительно командой. для этого случая пробовал набрать at+cfun=0,1 — пишет +CME ERROR: operation not supported, что это может значить? может прошивка модема не та, почему это не поддерживается?

#26 Comment By Interest On 19.11.10 @ 17:59

а вот еще, в чем разница между командой at+cfun=1 и at+cfun=6. как бы эти команды перерегистритруют модем, а в чем разница, не могу понять…на сайтах разные мнения, единого мнения нет

#27 Comment By Паук On 20.11.10 @ 14:18

Нужно читать талмуд по ат-командам именно для твоего производителя, т.к. даже для основных команд каждый изобретает свой велосипед

#28 Comment By Interest On 21.11.10 @ 13:56

нашел талмуд, однако и там о совмещенной команде не написано, тем нее менее, Паук, спасибо за помощь!!!

#29 Comment By Мурат On 25.11.10 @ 10:53

Привет Паук.
Хотел узнать ты не разбираешься в воркшопе?
Вопрос такой, можно ли поменять ЕСН в чистой руимке, через сотовый телефон подключенный к ПК через воркшоп. Воркшоп телефон видит и читает данные с руимки. Ну вот не знаю может ли он поменять.
просто у меня демо версия воркшопа. А полную установить почему то не могу.
Убедительная просьба ответьте мне пожалуйста на ящик. [5]

Большое вам спасибо!

#30 Comment By Netwalker On 01.12.10 @ 18:47

Вот ТЕСТОВЫЙ cmd скрипт с пингованием инета.
Настройки изменить под себя (имя соединения, логин, пароль, ID модема)
Используйте на свой страх и риск, за последствия (и кучерявые руки) не ручаюсь.

[6] или [7]

#31 Comment By B@rs On 23.08.12 @ 06:59

Попробуй программу MonConnInet
Автоматически перезагрузит любой модем, команду перезагрузки указать в настройках программы

#32 Comment By Паук On 23.08.12 @ 09:23

B@rs, ну и причем тут dsl модемы с интерфейсом ethernet к USB модемам?

#33 Comment By kir On 09.01.13 @ 17:50

Можно скрипт ещё раз выложить?Спасибо.

#34 Comment By Kmr On 17.09.17 @ 06:22

Подниму эту тему ещё разок. Есть десятая винда и йота модем. Последний виснет наглухо раз в 6 часов. Вышеуказанными способами победить не удалось. Devcon в 10ке отказывается работать. В линуксе все более менее ясно и осуществимо. Есть какие нибудь варианты с десяткой?

#35 Comment By Teddie On 31.10.17 @ 20:19

в режиме совместимости не пробовали запускать?


Article printed from Паутина: http://pauk.org.ua

URL to article: http://pauk.org.ua/?p=636

URLs in this post:

[1] devcon: http://support.microsoft.com/kb/311272/ru

[2] USBDeview: http://www.nirsoft.net/utils/usb_devices_view.html

[3] devcon: http://pauk.org.ua/wp-content/uploads/2010/03/devcon.exe

[4] usbdeview: http://pauk.org.ua/wp-content/uploads/2010/03/usbdeview.zip

[5] : mailto:mmg737@mail.ru

[6] : http://rghost.ru/3446006

[7] : http://depositfiles.com/files/z2frqfdio

© 2013 Паутина.