=== Заметки злого админа » Новости (в основном, хардварные) === Немного сумбурный пост, сразу обо всем. В прошлом посте я писал, что скоро у меня будет хорошо, я буду пинать балду целыми днями и грести деньги лопатой. С деньгами вроде бы, все в порядке. А вот с загрузкой все сбылось лишь частично. Я стал больше спать (это огромный плюс), стало меньше гемора на работе. Но на работу ходить все-таки приходится. Также, на носу огромный заказ, который надолго лишит меня сна. Заказ очень интересный, но об этом позже. Пытаюсь заставить себя написать что-нибудь про Втуз, но пока не прет. А теперь о железе. Недавно у меня дома появилось некоторое подобие интернета  USB модем от Билайн (ZTE MF180). Я уже имел опыт работы с подобными модемами и хочу выразить разработчикам свое глубочайшее [censored]. НУ ЗАЧЕМ они делают так, чтобы после подключения модем виделся, как USB CDROM с драйверами. Чтобы модем увиделся как COM- порт, надо запустить программу с этого диска, а под линуксом использовать usb_modeswitch. Почему нельзя было положить в коробку диск с драйвером под Windows, а под Линуксом просто сразу появлялся бы /dev/ttyUSB0? Или чтобы диск с дровами и ком-порты появлялись бы одновременно, а не после использования костылей? Увы, как всегда, во всем виновата политика. Когда программа usb_modeswitch с кровью и мясом отдирает от модема драйвер usb- storage, становятся видны долгожданные порты. Но почему их несколько, когда для передачи данных используется всего один? Итак, мы нашли нужный порт и запустили pppd, который благополучно подключился, через интерфейс побежал трафик. Но через пару минут модем зависает, и вернуть его в рабочее состояние можно только путем выдергивания и вставки в USB порт. Срок работы модема до отваливания примерно стабилен. Что за фигня? Оказывается, оператор сотовой связи, нанесший свое лого на модем, очень не хочет, чтобы в него совали чужие симки. Об этом уже неоднократно писали, поэтому повторяться не буду. Кроме того, по каким-то соображениям нас хотят заставить пользоваться только родной программой, устанавливаемой с диска, встроенного в модем. Виндузятники по этому поводу не заморачиваются, а у пользователей других ОС возникают проблемы. Путем реверс-инжиниринга было установлено, что программа посылает в дополнительные ком-порты всякие текстовые строки, от которых модему становится хорошо, и он не отваливается. Со старыми версиями модема прокатывал такой трюк: while (/bin/true); do echo "AT+ZOPERTE=\"beeline\"" >/dev/ttyUSB1; sleep 60; echo "send alive..."; done К сожалению, эту халяву прикрыли и придумали более сложный и извращенный алгоритм. Теперь надо читать из модема какие-то непонятные строки, по непонятному алгоритму вычислять ответ и посылать его в модем. Но народ решил и эту проблему, появилась замечательная программа. К сожалению, без исходников, но все равно автору большое спасибо. Все вышеописанное я проделывал на своем роутере. Но и тут возникли косяки. Иногда (в основном, при большой загрузке процессора) модем отваливался с такими ругательствами: Oct 23 23:08:46 localhost kernel: [ 4247.664562] option: option_instat_callback: error -71 Oct 23 23:08:46 localhost kernel: [ 4247.665531] ehci_hcd 0000:00: 0f.5: force halt; handshake dffd8014 00004000 00000000 -> -110 Oct 23 23:08:46 localhost kernel: [ 4247.665531] ehci_hcd 0000:00: 0f.5: can't reschedule qh df3a4900, err -110 Oct 23 23:08:46 localhost kernel: [ 4247.665531] option: option_instat_callback: error -108 Oct 23 23:08:46 localhost kernel: [ 4247.665531] ehci_hcd 0000:00: 0f.5: force halt; handshake dffd8014 00004000 00004000 -> -110 Oct 23 23:08:46 localhost kernel: [ 4247.665531] ehci_hcd 0000:00: 0f.5: HC died; cleaning up Oct 23 23:08:46 localhost kernel: [ 4247.665531] usb 1-2: USB disconnect, address 4 Oct 23 23:08:46 localhost kernel: [ 4247.689699] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2 Oct 23 23:08:46 localhost kernel: [ 4247.690788] option 1-2:1.3: device disconnected Я копал интернет, пересобирал ядро, совершал другие развратные действия. А потом подумал: а вдруг ему питания не хватает? Подключил модем через хаб с питанием, вроде бы пока живет. Отсюда мораль: USB в этом компе слабовато по питанию. Мой переносной винт тоже не раскручивался при подключении к роутеру. Всплыл еще один косяк: перегрев. После того, как я из-за тормозов поменял флешку на винт, нарушились потоки воздуха в корпусе. Если начинать что-то компилировать с закрытой крышкой, процессор перегревался и начинал тупить, а чуть позже перегревался и отваливался винт. Надо сверлить в крышке дырки и вешать вентилятор от корпуса. Другого решения нет. .