Главная > Оборудование умного дома > Зависает USB модем - решение

Зависает USB модем - решение


12-05-2012, 23:25. Разместил: sluggard
При корректном подключении USB модема в системе появляется 3 порта. ..tts/0, ../tts/1, ../tts/2 в других прошивкам может располагаться и обзываться по другому но смысл тот же.
Зависший модем можно перезагрузить послав команду в третий порт:
chat -e -t5 '' 'AT+CFUN=1,1' 'OK' </dev/usb/tts/2 >/dev/usb/tts/2


теперь можем написать простенький скрипт и добавить его в крон
#!/bin/bash
ping -c 3 8.8.8.8
if [ $? != 0 ]; then
chat -e -t5 '' 'AT+CFUN=1,1' 'OK' </dev/usb/tts/2 >/dev/usb/tts/2
fi


Я прописал на своем роутере данный скрип в cron и он исполняется каждые пять минут.
Если USB модем завис, то он автоматически перезагружается!

Update 02.01.2014.

Приобрел новый usb модем фирмы ZTE и данный скрипт наотрез отказался работать с данным модемам, на модеме HUAWEI E171 скрипт работает без нареканий.

Пошел другим путем:
Роутер на zyxel keenetic 2 поддерживает программное управление питанием usb портов.
Написал простой скрипт управления зависшим модемом для 2 версии роутеров keenetic:
#!/bin/sh

#logger "Test modem reboot script."
ping -c 5 8.8.8.8
if [ $? != 0 ]; then
logger "INTERNET - OFF! Reboot USB Modem!"
logger "USB power - OFF!"
ledctl 53
ledctl 55
sleep 5
logger "USB power - ON!"
ledctl 52
ledctl 54
fi

Данный скрипт отключает питание на usb портах и снова включает при пропаже ответов от "google.ru".
Вернуться назад