1. Вступление
А вы знаете, что настроить bluetooth соединение с PC на Linux совсем не сложно?
Итак, сейчас мы создадим подключение к телефону\PDA, примонтируем файловую систему телефона к оной на ПК и создадим GPRS\EDGE подключение.
Железо, на котором тестировал — ноутбук ASUS M51TR, мобилки — Motorola L9, Motorola E398. Все это на Kubuntu 8.10.
Необходимые пакеты:
- fuse-utils
- obexftp
- obexfs
- obextool
- bluez-utils
2. Находим телефон.
Для этого, нам нужно знать MAC-адрес телефона и номера каналов неободимых нам сервисов.
С помощью sdptool ищем наш телефон в зоне досягаемости:
sdptool browse
Она выведет в терминал что-то вроде этого:
Inquiring ...
Browsing 00:17:E4:1B:D2:E3 ...
Где 00:17:E4:1B:D2:E3 и есть мак-адрес.
А далее последуют описания сервисов, которые предоставляет сотовый телефон, например, для Dial-Up Networking:
Service Name: Dial-up Networking Gateway
Service Description: Dial-up Networking Gateway
Service Provider: Motorola
Service RecHandle: 0x10001
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
[сократил, так как много ненужной нам инфы]
Жирным выше я выделил ключевые моменты.
Service Name — название сервиса.
Service Provider — в большинстве случаев — модель телефона (полезно, когда найдено много устройств).
Channel — второй обязательный пункт, после MAC-адреса.
Ицем номера каналов для нужных сервисов (DUN, FTP) и регистрируем:
sdptool add DUN
sdptool add FTP
3. Подключаем
Редактируем файл /etc/bluetooth/rfcomm.conf, добавляя подключения:
rfcomm0 {
bind yes;
device 00:17:E4:1B:D2:E3;
channel 1;
comment "Dialup Networking Gateway";
}
bind — автоматически подключать устройство при старте системы,
device — MAC-адрес,
channel — канал.
Каждый новый сервис добавляется как rfcommN, где N — число. Элементарно, просто страхуюсь ;)
Сохраняемся и проверяем работоспособность:
sudo rfcomm bind all
rfcomm
Получаем на выхлопе следующее:
rfcomm0: 00:17:E4:1B:D2:E3 channel 1 clean
rfcomm1: 00:17:E4:1B:D2:E3 channel 9 clean
rfcomm2: 00:17:E4:1B:D2:E3 channel 8 clean
Если так, то все ОК, девайсы найдены и подключены, если нет — проверьте rfcomm.conf
4. Монтируем
Нужен сервис — OBEX FTP.
Создаем точку монтирования:
sudo mkdir -m777 /media/mobile
Добавляем пользователя в группу fuse, что бы он мог монтировать ФС:
sudo usermod -aG fuse username
Монтируем*:
obexfs -b00:17:E4:1B:D2:E3 -B9 /media/mobile
-b = MAC
-B = channel
или
obexfs -t /dev/rfcomm0 /media/mobile
Затем:
cd /media/mobile
ls
Вуаля:
audio MMC(Removable) picture video
Размонтирование, все просто:
umount /media/mobile
*Возможно при первом подключении будет выдан запрос на спаривание устройств. Введите, например, «1234» на телефоне, а затем на ПК.
5. GPRS\EDGE
Нужен сервис — DUN (Dial-Up Networking)
У меня KDE, так что запускаем kppp.
Configure -> Modems -> New -> Device,
где Modem device сконфигуренный вами девайс\канал для DUN (см. /etc/bluetooth/rfcomm.conf)
Все там же: переходим на таб Modem->Modem Commands
(дальше настройки для белорусского MТС, смотрите на сайте оператора):
Initialization String 1: AT+CGDCONT=1,«IP»,«mts»
Initialization String 2: ATZ
Что бы проверить, нажмите Query Modem.
Модем настроен, настраиваем подключение:
Главное окошко настроек -> Accounts -> New -> Manual Setup
Указываем имя, допустим, MTS BY
Добавляем номер телефона: *99# или *99***1#.
Готово. Выбираем в kppp аккаунт и модем, и в сеть!
(kppp->use modem -> %configured modem% ->Connect)
Спасибо за внимание!
UPD: переименовал топик, что бы не путать ;)