Пятница, 29.03.2024, 11:51 | Приветствую Вас Гость

Information inovation!

Главная » Статьи » Компы! » linux

Ubuntu + Bluetooth + GPRS [Руководство]
Срабатывало в Убунту 6.06. и 7.04 (обе AMD-64), какое ядро в первом случае, не помню, во втором 2.6.20.15. Телефон Nokia-6230, bluetooth-модуль Tekram TM304.

Один нюанс. В Убунту 6.06 такого не замечал, а вот в 7.04, если при загрузке компа синий зуб был подключен, иногда наблюдались проблемы с выходом в сеть. При включении модуля уже при работающем компе проблем не возникает. Благо, у меня имеются USB-разъемы на лицевой панели, так что проблем с этим нет. Кстати, на одном форуме кто-то уже жаловался на подобную проблему. Других траблов не замечено.

Итак, что нам нужно: компьютер, на котором установлена ось Ubuntu, блютуз-модуль, ну и соотвественно, сотовый телефон, имеющий блютуз и поддержку GPRS, что в настоящее время совсем не проблема.
Шаг первый: убеждаемся, что установлены пакеты: bluez-utils, gnome-bluetooth, bluez-pin (а они должны уже быть установлены).

Шаг второй: открываем консоль и пишем:
hcitool scan

Получаем ответ, что-то типа:
Scanning ...
00:13:70:E1:D6:F3 Nokia 6230

Консоль отнюдь не закрываем, а начинаем править конфиги:
sudo gedit /etc/bluetooth/hcid.conf
В данном конфиге проверяем, если нужно, раскомментируем и правим интересующие нас строчки, так чтобы
autoinit yes
security auto
pairing multi

Мой пример:
#
# HCI daemon configuration file.
#

# HCId options
options {
  # Automatically initialize new devices
  autoinit yes;

  # Security Manager mode
  # none - Security manager disabled
  # auto - Use local PIN for incoming connections
  # user - Always ask user for a PIN
  #
  security auto;

  # Pairing mode
  # none - Pairing disabled
  # multi - Allow pairing with already paired devices
  # once - Pair once and deny successive attempts
  pairing multi;

  # Default PIN code for incoming connections
  passkey "1234";
}

# Default settings for HCI devices
device {
  # Local device name
  # %d - device id
  # %h - host name
  name "%h-%d";

  # Local device class
  class 0x3e0100;

  # Default packet type
  #pkt_type DH1,DM1,HV1;

  # Inquiry and Page scan
  iscan enable; pscan enable;
  discovto 0;

  # Default link mode
  # none - no specific policy 
  # accept - always accept incoming connections
  # master - become master on incoming connections,
  # deny role switch on outgoing connections
  lm accept;

  # Default link policy
  # none - no specific policy
  # rswitch - allow role switch
  # hold - allow hold mode
  # sniff - allow sniff mode
  # park - allow park mode
  lp rswitch,hold,sniff,park;
}

Далее (шаг уже не помню который по счету, но не суть) там же открываем еще один интересный конфиг
sudo gedit /etc/bluetooth/rfcomm.conf

тут мы вспоминаем цыфирки полученные нами ранее при сканировании (адрес, на котором обнаружен наш телефончик) и меняем на эти цыфирки те, что тут имеются. Заодно и bind лучше поставить в yes, чтобы каждый раз вручную не биндить.

Мой пример в студии:
#
# RFCOMM configuration file.
#

rfcomm0 {
# # Automatically bind the device at startup
  bind yes;

# # Bluetooth address of the device
  device 00:13:70:E1:D6:F3;

# # RFCOMM channel for the connection
  channel 1;

# # Description of the connection
  comment "Example Bluetooth device";

}

Далее неплохо бы убедиться, что наш телефончик обеспечить нам поддержку DUN, то есть, собственно, интересующий нас выход в интернет. (кстати, перед следующим шагом рекомндуется немножно перезагрузиться, или, хотя бы вручную прибиндить наш дивайс, хотя тут я не уверен - не пробовал. После вышеописанных настроей при перезагрузке уже все должно работать)
Итак набираем
sdptool search --bdaddr 00:13:70:E1:D6:F3 DUN
Надеюсь, не нужно разъяснять, что адресок в данном случае каждый вписывает свой?
Заодно проверяем, что канал у нас указан правильно (см. rfcomm.conf)

Далее желательно рестартовать сервис bluetooth:
sudo /etc/init.d/bluetooth restart
или зайти в папочку и вручную запустить (ЗЫ Для Убунту 6.06 по-моему, данный сервис называется bluez-utils, или как-то так - найдете)

Теперь набираем волшебное слово pppconfig и запускается чудная утилитка, которая поможет нам создать свое подключение к сети (ну не люблю я все эти графические штуки - с ними у меня как-то не складывается).
Здесь просто отвечаем на вопросы
Вопрос первый и он же ответ: создать новое подключение
Вопрос второй: название. Лучше оставить privider (по умолчанию, далее скажу, почему лучше), либо обозвать как-то по-своему.
Вопрос третий: ну тут думаю ясно, что следует указать динамические, а не статические адреса DNS
Вопрос четвертый: протокол аутентификации указываем PAP
Вопрос пятый: вводим логин (в Билайне знаю, что beeline, у других операторов свои, у мегафона нет, но в таком случае лучше указать произвольный - оператор его проигнорирует, да и у нас проблем с выходом в сеть не будет, а вот с пустым логином могут быть)
Вопрос шестой: парол - прахады. См. предыдущий пункт, а также вспоминаем, что нам по этому поводу сообшал опсос.
Вопрос седьмой: скорость - можно оставить по умолчанию, а можно и поиграться, если уверены, что знаете, какая скорость ближе к реальности.
Вопрос восьмой: оставляем тональный способ набора
Вопрос девятый: указываем номер, как правило *99***1#
Вопрос десятый: вот тут обламываем о запрещаем автоматически определить порт и говорим "нет", откуда вытекает
Вопрос одиннадцатый: собственно порт, а именно: /dev/rfcomm0
Вопрос двенадцатый и ответ "Finished Сохранить настройки и вернуться в главное меню"
После чего выходим из данной чудной утилитки отнюдь не пытаясь через нее настраивать расширенные параметры - лучше это сделаем ручками, ибо pppconfig нам строку инициализации грамотно не пропишет.

Итак, шаг следующий:
все в той же консольке набираем:
sudo gedit /etc/chatscripts/provider (это, если мы не обозвали наше соединение по другому. Тогда пишем то, на что хватило нашей фантазии при ответе на вопрос № 2)

И вот тут-то мы и прописываем нашу строку инициализации, характерную для нашего оператора. У меня, к примеру, Билайн, соотвественно, у меня это выглядит так:

# This chatfile was generated by pppconfig 2.3.15.
# Please do not delete any of the comments. Pppconfig needs them.

# ispauth PAP
# abortstring
ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
# modeminit
'' ATZ
'' AT+CGDCONT=1,"IP","internet.beeline.ru"
# ispnumber
OK-AT-OK "ATDT*99***1#"
# ispconnect
CONNECT \d\c
# prelogin

# ispname
# isppassword
# postlogin

# end of pppconfig stuff


Надеюсь, догадались, где нужно записать свою строчечку?

Вот, собственно, и все шаги по настройке нашего интернет-соединения.
Надеюсь, Вы не забыли свой телефон в настройках синего зуба сделать доступным для обнаружения. Ах, да, нужно ведь еще с телефона найти наш комп и сделать сопряжение. ПИН-код не забыли, он ведь очень сложный и был записан несколько выше, помните: "1234".

Ну вот, если Вы последовали моему совету и оставили имя соединения provider, то само соединение устанавливается командой "pon", а разрывается, соотвественно "poff". Ну а если Вам трудно набрать три - четыре буквы в консоли, то можно сделать кнопочки с такмим командами на панельке или рабочем столе.
А вот если Вы название все-таки поменяли, например на "hachutyrnet", то и набирать, соответственно, придется "pon hachutyrnet", что гораздо сложнее и сжигает кучу калорий.

Вот теперь, пожалуй, действительно все.
Надеюсь, изложил доступно и не занудно. Во всяком случае, старался, потому и "многа букафф", надеюсь, никто не "сламал моск"?
Смайлики и недостающие знаки пунктуации расставьте по вкусу.
На этом разрешите откланяться.

Категория: linux | Добавил: Prise (06.09.2008)
Просмотров: 9196 | Комментарии: 2 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Наш опрос
Как вам мой сайт
Всего ответов: 70
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz