Популярные новости

Наша кнопочка

    Вам понравился наш портал? Добавьте код баннера на ваш сайт/блог посредством нажатия на кнопочку:

Голосования

Вам нравится Linux?
Да, обожаю
Нет, на нем в игры не поиграешь :"(
Неплохо, для работы пойдет :)
Юзаю и Linux и Windows

 

Ubuntu-часы

Ubutu 11.10

Ubuntu 11.04 it's here

Мини Чат

Написалdazar4ik
Уважаемые гости и пользователи нашего проекта! Если вы хотите помочь нашему проекту в развитии, не стесняйтись и добавляйте ваши статьи по освоению OS Linux.
Написалdazar4ik
нр123,новинькие :)
Написалнр123
dazar4ik,дарова
Написалdazar4ik
Приветствую всех посетителей моего сайта!
НаписалISKREEM
Отличный сайт :D
НаписалJoker_kms
Доброго времени суток всем. Кирил, хороший сайт сделал laughing
НаписалMr.OFF
Кирилл выходи на связь! wink
НаписалEXCLUSIVE
Кирилл ты когда уже будешь на связи
НаписалMr.OFF
EXCLUSIVE,
ку!
НаписалEXCLUSIVE
Ку Ку
НаписалMr.OFF
dazar4ik,
Вообще норм!
Написалdazar4ik
Поставил переходы. Можете затестить ;)
Написалdazar4ik
Поменял цвет для модераторов.
НаписалMr.OFF
А что такое?
НаписалTalia
Дазарчик, вылазь, я знаю что ты тут!
НаписалTalia
а чего это у вас в чате такая тишина гробовая?

Только зарегистрированные пользователи могут отправлять сообщения.

Кто Оnline

Пользователи: - отсутствуют
Гостей: 0
Роботы: crawl Bot

Облако тегов

Требуется для просмотраFlash Player 9 или выше.

Друзья сайта

Yamobilko - Все что нужно вашему телефону... Данильченко Игорь Васильевич - Обо мне, фотки, статьи и другое... Linux 
  Format - главное в мире Linux LiNewb Проект OpenNET
linuxworld - весь Linux на ладони. » Статьи » Bluetooth и Linux на примере Nokia 7650
0

Bluetooth и Linux на примере Nokia 7650

Автор: dazar4ik   Просмотров: 1260   Дата: 7-11-2011, 15:20

Bluetooth и Linux на примере Nokia 7650


Введение


Одной из причин на покупку моего телефона, Nokia 7650, была поддержка Bluetooth, и мне пришлось потрудиться, чтобы настроить его под Linux, и использовать телефон в качестве простой цифровой камеры и т.п. В этой статье я и опишу, чего мне удалось добиться. Однако, проблем с поддержкой bluetooth у Linux хватает, особенно с точки зрения приложений. Например, я так и не настроил синхронизацию календаря и адресной книжки…


Bluetooth, изобретенный голландским инженером в шведской корпорации Ericsson в 1994 году, получил свою название от Harald'а Blaatand (на английском «Bluetooth») II, короля Дании 940—981 годов до нашей эры, который был хорошим связным. Связь предназначена для подключения электронных устройств путем использования коротких радио-сигналов на дистанции не более чем, примерно, 10 метров. Скорость передачи данных составляет 1 МБит/с, из которых 20 процентов может расходоваться на посторонние вещи (header-информация и т.п.).


Существует множество устройств, поддерживающих bluetooth, среди них телефоны, КПК, принтеры и клавиатуры. Большинство из них могут быть использованы в Linux, однако, как я уже писал в введении, статья посвящена телефонам.


Подключаемся с помощью Bluez


Существует четыре реализации bluetooth в Linux, но только Bluez и Affix распространяются под лицензией GPL. Я решил остановиться на Bluez, т.к. он присутствует в 2.4-ядрах Red Hat Linux, дистрибутива, который я использовал при написании этой статьи. Он является выбором многих других дистрибутивов, таких как SuSE, Mandrake, Debian и Gentoo.


Вам потребуются следующие установленные пакеты:


  • bluez-libs

  • bluez-sdp

  • bluez-utils

  • gnome-bluetooth


После установки необходимо ввести свой bluetooth pincode под root'ом:


# echo "your_pin_here" > /etc/bluetooth/pin

В "/etc/bluetooth/hcid.conf" укажите название своего bluetooth-устройства, чтобы он мог быть распознан компьютером при сканировании на наличие bluetooth-устройств в дальнейшем.


Запустите bluetooth daemon:


# /etc/init.d/bluetooth start

Теперь пора проверить пару вещей, запустим hciconfig:


$ /usr/sbin/hciconfig -a


hci0: Type: USB
BD Address: 00:00:00:00:00:00 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:331 acl:1 sco:0 events:46 errors:0
TX bytes:1412 acl:0 sco:0 commands:39 errors:0
Features: 0xff 0xff 0x0f 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'BlueZ'
Class: 0x000100
Service Classes: Unspecified
Device Class: Computer, Uncategorized
HCI Ver: 1.1 (0x1) HCI Rev: 0x1e7 LMP Ver: 1.1 (0x1) LMP Subver: 0x1e7
Manufacturer: Cambridge Silicon Radio (10)


Как мы видим, все работает после запуска инициализационного bluetooth-скрипта. Проверим, нашелся ли наш телефон:


$ hcitool scan


Scanning ...
00:02:EE:A0:25:90 Nokia7650


Если телефон не найден, проверьте, включен ли bluetooth в его настройках. Посмотрим, способен ли телефон на все, о чем говорилось в рекламе Nokia:


$ sdptool browse 00:02:EE:A0:25:90


Browsing 00:02:EE:A0:25:90 ...
Service Name: Fax
Service RecHandle: 0x10000
Service Class ID List:
"Fax" (0x1111)
"Generic Telephony" (0x1204)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Profile Descriptor List:
"Fax" (0x1111)
Version: 0x0100


Service Name: Dial-up Networking
Service RecHandle: 0x10001
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100


Service Name: Bluetooth Serial Port
Service RecHandle: 0x10003
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100


Service Name: OBEX Object Push
Service RecHandle: 0x10004
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 9
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100


Service Name: OBEX File Transfer
Service RecHandle: 0x1000d
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 10
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100


Похоже, все в порядке.


Знакомимся с OpenOBEX


Пора поиграться с тем, что откроет нам доступ ко всем сервисам. Во-первых, это OpenOBEX — open-source версия протокола Object Exchange (OBEX). По словам самого проекта, «OBEX — протокол сессий, и может быть лучше всего описан как бинарный HTTP-протокол». Он используется для отправки/закачки файлов между bluetooth-устройствами.


OpenOBEX должен быть установлен после всех проинсталлированных нами до этого rpm.


Погружемся в GNOME


Для использования протокола OpenOBEX мы обратимся к GNOME, так как похоже, что для него существует наиболее зрелое ПО подобного рода (и очень простое в использовании). Если вам не нравится GNOME или вы предпочитаете только CLI, то можете подыскать и другие достойные OBEX-программы.


Теперь мы можем закчивать файлы на телефон, но для начала попробуем определить адрес телефона:


  • запустите (под обычным пользователем)

$ gnome-bluetooth-admin

и нажмите [scan].


Через несколько секунд появится список bluetooth-устройств. При выборе какого-либо из них должны появится его возможности и сетевой адрес.


Теперь, когда мы знаем адрес телефона, можем загрузить на него файл с помощью команды "gnome-obex-send":


$ gnome-obex-send -dest 00:02:EE:A0:25:90 Nokia_7650_RemoteSync.SIS

Таким образом файл перекачается в основную папку телефона, как только появится соответствующая надпись на телефоне.


Для обратного процесса, перекачивания файлов из телефона на компьютер, выберите «Bluetooth file sharing» в главном меню в «system tools > more system tools». Теперь в Gnome появится иконка с bluetooth. Когда что-нибудь будет отправляться с телефона на ПК, иконка будет начинать двигаться, а файлы помещаться в домашний каталог.


5. Открытые источники




 (голосов: 1)
Вернутся

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.