Итак. Всем привет.
Попробую написать ПОЛНУЮ инструкцию по подключению 3G модемов к нашей 4.4.2 от CUSP
Немного теории для понимания.
Любой 3G модем работает в двух режимах:
1. Zero-CD
2. Modem mode
Первый нужен для того чтобы на любом ПК с Win можно было поставить драйвера и программу связи.
Второй собственно сам режим только модема и ничего более.
В идеале, необходимо для Вашего конкретного модема в интернете найти AT команду, которая навсегда переведет наш девайс в режим модема....это упростит все намного....
Затем в терминале ее послать модему - и все.
Так же отправляем модему команду
AT+CGMM и запоминаем\записываем ответ
На этом легкая подготовка закончена.
Если же команду найти не уалось, будем надеяться, что сам андроид переключит как надо.
Для этого там есть программа с названием usb_modeswitch
У нас нифига не виндовз, а юникс-совместимая система и тут не все так просто... ОДнако будем поработать=)
Самое главное у нас есть ROOT права - а это уже 80% победы =)
Нам понадобяться:
1. Root Explorer
2. Terminal Emulator
3. VID и PID вашего модема (мой для примера 12d1 155b - режим ZeroCD, 12d1 1506 - режим модема)
Хочу отметить что, модем в режиме "только модем" генерирует vid и pid именно модем режима а не ZeroCD
Получение желанных ttyUSB....
(Я буду все делать на примере свеже купленного девайса HUawei E3131 для МТС)
Запускаем рут эксплорер
Идем в папку
/etc/usb_modeswitch.d и ищем там файл с названием, совпадающим с VID и PID вашего модема
(в моем случае это 12d1:155b)
Хочу обратить внимание, что файл должен быть с ДВОЕТОЧИЕМ. Китайцы лепят как получается, то с двоеточием то с нижним подчеркиванием.
Если у вас файлик с подчеркиванием, то его нужно переименовать чтоб вместо подчеркивания стало двоеточие
Пример: 12d1_155b переименовываем в 12d1:155b
Окей.
вставляем модем в порт usb и смотрим что происходит.
Если андроид не прыгнул на флешку - уже хорошо. Это значит что андроид не распознал модем как флешку либо отработала правитьно команда usb_modeswitch, выполняемая автоматически
Если прыгнул как на флешку, значит напортачили где-то с конфигур. файлами
Запускаем терминал и вводим команду lsusb
должны увидеть список usb устройств среди которых будем и ваш модем.
Самое время посмотреть что сделало ядро андроида, для этого вводим в терминале:
suпотом
dmesg | tail -50и смотрим что вышло.
Здесь теперь у нас два пути развитися событий=)
1. Модем определился системой и появились устройства
/dev/ttyUSB0 ttyUSB1 и тд
В логе увидим что типа:
usb 2-4: GSM modem (1-port) converter now attached to ttyUSB02. Модем нихрена не определился =) Как у меня=)
ВИдим что-то типа такого и все:
usb 1-1.1: new high-speed USB device number 7 using ehci_hcdи ничего связанного с ttyUSB и GSM-modem
Далее решение по пункту 1
Все что нам осталось, это добавить правильные данные в файл
/etc/ppp/modem_configнапример у меня модем на команду AT+CGMM ответил E3131
значит мне нужно чтобы в этом файле была строчка
E3131 12d1:1506 /dev/ttyUSB2 /dev/ttyUSB0 0где
E3131 овтет на команду AT+CGMM
12d1:1506 - VID и PID девайса в режиме модема, посмотреть и проверить можно ПОСЛЕ подключения командой lsusb
далее думаю менять не надо... у большинства будет ок, но если нет то придется играть значениями USB0-3 в двух параметрах
Сохраняем файлик.
Переподключаем модем - и видим заветную иконку сигнала и 3G в статус баре.
Ура - у нас есть инет через 3G модем.
Теперь подойдем ко второму пути.... более сложному, в случае если после подключения модема устройства ttyUSB в системе не создаются.
В этом ничего страшного нет, просто ядро , вернее его драйвер usb-serial не знает этого устройства. Девайсы новые, просто отсутствуют в исходниках ядра китайцев. =)
У нас есть ROOT поэтому мы ядру поможем.
Однако есть одно НО. Ядро будет знать это устройство только пока работает. При перезагрузке системы - ядро опять не будет его знать.
Мы поступим просто - создадим скрипт, который будет выполняться при запуске системы и обучать ядро нашему девайсу и все будет ок.
Для этого надо:
Открываем Root Explorer и идем в папку
/data/localв ней создаем файл
userinit.sh и в этот файл пишем такую строчку
echo "12d1 1506" > /sys/bus/usb-serial/drivers/option1/new_id
здесь
12d1 1506 это vid и pid
МОЕГО модема, вам же надо эти значения заменить на
своиСохраняем файл.
Устанавливаем права для файла userinit.sh на запуск для всехПерезапускаем систему.... и радуемся инету с новейшим модемом 3G
Фуф
Немного красоты моей=) Все работает четко! Система почти идеальна!!!!
Для меня осталось только два косяка....
1. Наложение фоном радио... решу напайкой резисторов...
2. Хреново радио ловит даже с активной антеной бош на лобовухе... Что делать ума не приложу

Если у кого-то не получиться что-то по модемам - обращайтесь, я помогу.
Всем удачи в инете на нашей 4.4.2 =)
Главный экран =)

Модем от МТС Е3131 - работает чудно!

СМС-ки полетели =)
