Ключевые слова:mobile, linux, usb, driver, hardware, phone, ppp, gprs, (найти похожие документы)
From: Овчар Сергей <serega [at] doma dot net dot ua>
Newsgroups: email
Date: Sun, 19 Nov 2006 17:02:14 +0000 (UTC)
Subject: Настройка Linux для работы с мобильным телефоном "Sony Ericson W810i"
Здравствуйте уважаемые пользователи Linux.
Всвязи с досадным отсутствием полезной информации(возможно, плохо искал)
по прикручиванию в Linuxe мобил от производителя Sony Ericson (на момент
написания данной статьи), я решил сам написать и разместить ее для таких
как я любителей поизвращаться.
Для меня основными задачами были обмен файлами между телефоном и
компьютером, и использование телефона в качестве gprs-модема. Модель
телефона - Sony Ericson W810i. Подключение к компьютеру посредством
Data-кабеля. Поскольку кабель был в комплекте стандартоной поставки
телефона, я не счел необходимым покупку адаптера bluetooth. Дистрибутив
- Debian 3.1r-хз, хотя полагаю, все нижеперечисленные действия будут
справедливы и для многих других дистрибутивов. Версия ядра 2.6.15.
Использую такое старье, исключительно из возможости любоваться
bootsplash. Потому как для более новых ядер его еще не сделали.
Для определения телефона как устройств (должно быть 2 ,или 1, в
зависимости от режима работы данной модели), необходимо в ядре включить
следующие опции.
в меню редактирования опций ядра make menuconfig:
USB support --->
<M> Support for Host-side USB
[*] USB device filesystem
[*] Enforce USB bandwidth allocation (EXPERIMENTAL)
<M> EHCI HCD (USB 2.0) support
<M> OHCI HCD support
<M> UHCI HCD (most Intel and VIA) support
<M> USB Modem (CDC ACM) support
<M> USB Mass Storage support
[*] Datafab Compact Flash Reader support (EXPERIMENTAL)
[*] Microtech/ZiO! CompactFlash/SmartMedia support
[*] Lexar Jumpshot Compact Flash Reader (EXPERIMENTAL)
SCSI device support --->
<M> SCSI device support
[*] legacy /proc/scsi/ support
<M> SCSI disk support
или вручную править конфиг. Кому как удобнее:
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB=m
CONFIG_USB_DEVICEFS=y
CONFIG_USB_BANDWIDTH=y
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_UHCI_HCD=m
CONFIG_USB_ACM=m
CONFIG_USB_STORAGE=m
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_DPCM=y
CONFIG_USB_STORAGE_JUMPSHOT=y
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_PL2303=m
Также должна быть включена поддержка виндовых файловых систем.
Загружаемся на новом ядре, и смотрим правильно ли определились
устройства. Не загружая иксов втыкаем шнур с телефоном в USB порт. На
экране компьютера должна появиться отладочная информация,
свидетельствующая об обнаружении устройств. На экране телефона должно
появиться меню выбора режима работы. В случае выбора режима "Передача
файлов", в консоли появится отчет о загрузке соответствующих модулей, и
определении устройств sda1 - электронный диск телефона, и sbd1 -
электронный диск флешки. Для систем с жесткми дисками на интерфейсе SATA
(для ядер 2.6.*) этим устройствам будут даны имена соответственно sdb1 и
sdc1. В случае выбора режима "Режим телефона", в консоли появится отчет
об обнаружении USB модема (Communication Device Class Abstract Control
Model interface) /dev/ttyACM0.
Далее, для обмена файлами правим /etc/fstab:
В конец дописываем две строки
/dev/sda1 /mnt/flash auto rw,users,noauto 0 0
/dev/sdb1 /mnt/flash1 auto rw,users,noauto 0 0
теперь регистрируемся пользователеми создаем на рабочем столе два значка
устройств для sda1 и sdb1. Подключаем телефон к компьютеру, выбираем в
телефоне режим обмена файлами, ждем несколько секунд, пока растормозятся
комп и телефон, и кликаем по значкам устройств. Если все сделано
правильно, то должны открыться окна с содержимым памяти телефона, и
флешки.
Для использования телефона в качастве GPRS-модема делаем следующее
создаем два файла
/etc/ppp/mobile скрипт дозвона, содержащий:
ECHO ON
ABORT '\nBUSY\r'
ABORT '\nERROR\r'
ABORT '\nNO ANSWER\r'
ABORT '\nNO CARRIER\r'
ABORT '\nNO DIALTONE\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
REPORT CONNECT
'' \rAT
TIMEOUT 12
# OK ATH
OK ATZE1
OK AT+CGDCONT=1,"IP","www.umc.ua"
OK ATD*99***1#
CONNECT c
и /etc/ppp/peers/mobile содержащий эти и другие pppd опции:
local lock /dev/ttyACM0 115200
connect '/usr/sbin/chat -f /etc/ppp/mobile'
noauth
novjccomp nopcomp noaccomp nodeflate novj nobsdcomp
ipcp-accept-local ipcp-accept-remote
usepeerdns noipdefault defaultroute
ipcp-restart 4
lcp-restart 4
persist maxfail 0 holdoff 1
user ""
В случае необходимости правим эти скрипты под своего оператора мобильной
связи.
Для дозвона - pppd call mobile
Для завершения соединения - poff mobile.
Вопросы, предложения и замечания по повоу данной статьи, просьба присылать сюда:
serega [at] doma dot net dot ua
ovserg [at] kah dot hs dot ukrtel dot net
ася 282-768-746
Автор статьи - Овчар Сергей.
13 ноября 2006 года. 13-23