Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  почтовые системы
  Шелезяки
  UPS APC-1500
  NetMos NM9845
  cisco & syslog
  LAN card`s test
  HDD & UDMA100
  S.M.A.R.T.
  D-Link DE-200TP
  Marvell 88E8053
  D-Link DGE530T
  КПК + FreeBSD
  D-Link DWL-G520
  SkyLink-CDMA
  Atheros AR5007EG
  BlueTooth mouse
  Asus Eee PC
  atacontrol
  SkyStar-2+SlonAx
  TT budget S-1401
  SiS*Mirage*1 на D201GLY2
  NetXtreme BCM5722
  snd_hda
  Peoplenet + C-motech (3G)
  freebsd + huawei 162 gsm modem
  tw_cli
  pc_speaker
  Canon/gphotofs
  Охранная система на FreeBSD+LPT
  Даешь 220 в LPT
  Мелочи
  Файловая система
  WWW
  Security
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> Шелезяки —> BlueTooth mouse

Прикручиваем BlueTooth мышь под FreeBSD

Автор: lissyara.


    Лишился я своей старинной мышки - был у меня древний A4Tech - беспроводная, без наворотов - просто мышь... Дочка в стенку метнула - маленькая (почти два года), всё интересно =))) Пока подключил проводной логитеч - работать надо, да и удобно по-своему - из-за провода им широко не размахнёшься, сильно не ударишь =). Однако, в башке поселилась мысль про покупку новой.
   Присмотрел мышу, заказал, оплатил, привезли. Девайс - Genius Navigator R820BT.


   Первая ссылка гугля, по соответствующему запросу, приводит на рассылку FreeBSD, ссылка отуда на немного устаревший мануал. Всё что там описано - вполне работоспособно, тока описание старовато - там предлагают собирать то, что уже давно собрано в системе, и запускать руками то, для чего есть системные же скрипты.
   Итак, поехали. Предполагается, что сам Голубой Зуб у вас установлен и работает. Также, подразумевается что загружены соответствующие модули, у меня в /boot/loader.conf такой список модулей относящихся к BlueTooth устройствам:
ussr$ grep --after-context=8 "Blue Tooth" /boot/loader.conf
# Blue Tooth
ng_bt3c_load="YES"
ng_btsocket_load="YES"
ng_ubt_load="YES"
ubtbcmfw_load="YES"
ng_l2cap_load="YES"
netgraph_load="YES"
vkbd_load="YES"

ussr$

   Конкретно к мыши тут относиться только "vkbd". Остальное - к телефону жены. Пробуем опросить девайсы в округе:
ussr# hccontrol -n ubt0hci inquiry
Inquiry complete. Status: No error [00]

   Облом... Несколько секунд разочарованного кручения мышки в руках, с мыслью - "обманули подонки в интернет-магазине - девайс нерабочий" - замечаю кнопку снизу. Включается соображаловка - про то что пора бы прочесть инструкцию, хоть она и относиться к винде/MacOS - полезное из неё всегда можно извлечь. Однако - инструкция не наш путь, поэтому жму кнопку, и снова запускаю опрос:
ussr# hccontrol -n ubt0hci inquiry
Inquiry result, num_responses=1
Inquiry result #0
        BD_ADDR: 00:10:c6:ef:19:fe
        Page Scan Rep. Mode: 0x1
        Page Scan Period Mode: 00
        Page Scan Mode: 00
        Class: 00:25:80
        Clock offset: 0x43e3
Inquiry complete. Status: No error [00]
ussr#

   Это уже лучше. В округе неизвестный девайс, ибо все известные описаны в файле /etc/bluetooth/hosts. Прописываю и его там же:
ussr$ grep Genius /etc/bluetooth/hosts
00:10:c6:ef:19:fe       Genius.Navigator.R820BT
ussr$   

Теперь можно работать с именем. Потрясём девайс, посмотрим чё насыпется =)
ussr# bthidcontrol -a Genius.Navigator.R820BT query
device {
        bdaddr                  00:10:c6:ef:19:fe;
        control_psm             0x11;
        interrupt_psm           0x13;
        reconnect_initiate      true;
        battery_power           true;
        normally_connectable    false;
        hid_descriptor          {
                0x05 0x01 0x09 0x02 0xa1 0x01 0x85 0x02
                0x09 0x01 0xa1 0x00 0x05 0x09 0x19 0x01
                0x29 0x03 0x15 0x00 0x25 0x01 0x75 0x01
                0x95 0x03 0x81 0x02 0x75 0x05 0x95 0x01
                0x81 0x01 0x05 0x01 0x09 0x30 0x09 0x31
                0x09 0x38 0x15 0x81 0x25 0x7f 0x75 0x08
                0x95 0x03 0x81 0x06 0xc0 0xc0 0x05 0x0c
                0x09 0x01 0xa1 0x01 0x85 0x03 0x05 0x01
                0x09 0x02 0xa1 0x02 0x06 0x00 0xff 0x15
                0x00 0x25 0x03 0x75 0x02 0x95 0x01 0x0a
                0x01 0xfe 0x81 0x01 0x75 0x06 0x95 0x01
                0x81 0x01 0xc0 0xc0 0x05 0x0c 0x09 0x01
                0xa1 0x01 0x85 0x04 0x05 0x01 0x09 0x02
                0xa1 0x02 0x05 0x0c 0x0a 0x38 0x02 0x75
                0x08 0x95 0x01 0x15 0x81 0x25 0x7f 0x81
                0x06 0x06 0x00 0xff 0x0a 0x04 0xff 0x0a
                0x06 0xff 0x15 0x00 0x25 0x01 0x75 0x01
                0x95 0x02 0xb1 0x02 0x95 0x06 0xb1 0x01
                0xc0 0xc0 0x05 0x0c 0x09 0x02 0xa1 0x01
                0x85 0x05 0x05 0x01 0x09 0x06 0xa1 0x02
                0x05 0x06 0x09 0x20 0x15 0x00 0x25 0xff
                0x75 0x08 0x95 0x08 0x81 0x00 0x09 0x20
                0x15 0x00 0x25 0xff 0x75 0x08 0x95 0x08
                0xb1 0x00 0xc0 0xc0
        };
}
ussr#
ussr# bthidcontrol -a Genius.Navigator.R820BT Dump
Collection page=Generic_Desktop usage=Mouse
Collection page=Generic_Desktop usage=Pointer
Input   id=2 size=1 count=1 page=Button usage=Button_1 Variable,
 logical range 0..1
Input   id=2 size=1 count=1 page=Button usage=Button_2 Variable,
 logical range 0..1
Input   id=2 size=1 count=1 page=Button usage=Button_3 Variable,
 logical range 0..1
Input   id=2 size=8 count=1 page=Generic_Desktop usage=X Variable
 Relative, logical range -127..127
Input   id=2 size=8 count=1 page=Generic_Desktop usage=Y Variable
 Relative, logical range -127..127
Input   id=2 size=8 count=1 page=Generic_Desktop usage=Wheel
 Variable Relative, logical range -127..127
End collection
End collection
Collection page=Consumer usage=Consumer_Control
Collection page=Generic_Desktop usage=Mouse
End collection
Collection page=Consumer usage=Consumer_Control
Collection page=Generic_Desktop usage=Mouse
Input   id=4 size=8 count=1 page=Consumer usage=AC_Pan Variable Relative,
 logical range -127..127
Feature id=4 size=1 count=1 page=Microsoft usage=0xff04 Variable,
 logical range 0..1
Feature id=4 size=1 count=1 page=Microsoft usage=0xff06 Variable,
 logical range 0..1
End collection
End collection
Collection page=Consumer usage=Numeric_Key_Pad
Input   id=5 size=8 count=8 page=Generic_Device_Control
 usage=Battery_Strength, logical range 0..255
Feature id=5 size=8 count=8 page=Generic_Device_Control
 usage=Battery_Strength, logical range 0..255
Collection page=Generic_Desktop usage=Keyboard
End collection
ussr#     

Для работы устройства нужен листинг первой команды, сохранённый в файл /etc/bluetooth/bthidd.conf:
ussr# bthidcontrol -a Genius.Navigator.R820BT Query >> /etc/bluetooth/bthidd.conf

   После чего добавляем в /etc/rc.conf такие строки:
ussr$ grep --after-context=4 "blue devices" /etc/rc.conf
# blue devices
hcsecd_enable="YES"
sdpd_enable="YES"
bthidd_enable="YES"

ussr$

   Собственно к мыши относиться последняя - остальные у меня уже были. Стартуем даемонов руками/перезагружаемся, должно работать.

P.S. По итогам дня эксплуатации, могу тока заметить что о покупке пожалел. Говорили мужики на работе - бери логитеч, не послушался (не люблю мыши с извратами - типа форма удобная, пачка кнопок и прочее - не надо мне этих извратов, а в том магазе где брал других не было - тока гениус нормальной формы был).
   Почему пожалел.
1. Тяжёлая. Не очень существенно, но старый A4Tech при таких же аккумуляторах - AA, весил меньше. Может и не сильно меньше, но был лучше сбалансирован - центр тяжести был назад сдвинут, у этой впереди...
2. У меня тёмный стол, коврика нет - всё равно дитё его тут же утащщит - мышь плохо по нему ползает. Логитеч и A4Tech ползали абсолютно нормально. Может дело не в мыши - в тормознутости самого интерфейса - не знаю. Факт что спозиционировать мышь, например, на гиперссылке - стало тяжелей. Щас сижу с двумя сразу - в браузере реально логитечем удобней...
3. Вместо стандартного moused используется bthidd. Видимо поэтому, поведение мыши отличается от стандартного - в иксах вроде всё также, а вот в голой консоли - аж злить начинает - по двойному клику слово не выделяет, по третьему клику должно выделять строку - тоже нифига. Очень нехватает этого...



Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?f=14&t=7782.

размещено: 2008-03-25,
последнее обновление: 2008-05-01,
автор: lissyara

оценить статью:

Andy, 2008-03-26 в 10:42:41

Отдай мышь дочери, пусть повторит процесс дизассемблирования :)

Manefesto, 2008-03-26 в 15:45:44

Да ты чо.... а как её(мышь) потом дебажить то???
Паяльником со скотчем?

void*, 2008-03-27 в 10:46:48

Кмтайский суперклей - это наше фсе!

Yo>|<iG, 2008-03-27 в 18:49:51

Неграмотно обмытое железо, это напрасно выкинутые деньги :)
У меня тож какойто джениус блютузный валяеца, ниче ниделал, так работатет, но использую редко, ибо тяжелый и глючный.

lissyara, 2008-03-27 в 19:54:41

Не пью.
Так что - можно сказать что сразу были выкинуты зря =))

artem, 2008-03-28 в 12:27:03

Genius всегда были крысы не очень
A4Tech по функционалу это тот же Logitec тока дешевле и в некоторых моделях кнопки слишком громко щелкают что может раздражать спщих окружающих

У меня вопрос не совсем по теме - у меня проводная мышь( хотя это без разницы)и меня ужасно раздражает что в иксах при малейшей нагрузке она начинает при движении периодически застревать (железо современное и не глючное, в эффекты смены вида указателя выключил)!???!!
Думаю это связано с методом работы драйвера - в винде он как то пашет через прерывания - даже если система подвисла или сильно нагружена, то курсора это никак не касается.
Можно ли как то внастроить подобное во фре????

artem, 2008-03-31 в 15:03:09

тему вынес в форум
http://forum.lissyara.su/viewtopic.php?f=5&t=7893

перец, 2008-06-23 в 7:39:38

слово относится в таоем предложении пишется без Ь :)
кстати, давно есть коврики, которые сами тонкие очень, ложишь и они приклеиваются к столу, но не так, чтобы потом не оторвать, а по нормальному

Артем, 2009-04-11 в 20:03:09

перец,"таоем" или твоем?


Оставьте свой комментарий:
Ваше имя:   *
e-mail:  
жирный
наклонный
подчёркнутый
ссылка
цвет
Нынешний год:   *
 


Хостинг HOST-FOOD

2014-07-27, lissyara
gmirror

Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9

Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту

Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis

Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS

Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT

В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat

Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp

Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration

Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster

HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS

История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire

Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной

Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server

Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs

Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec

Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash

Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT

Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3

Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 57 чел.
За последние 30 мин было: 295 человек
За сегодня было
4856 показов,
1207 уникальных IP
 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0441 секунд
Из них PHP: 35%; SQL: 65%; Число SQL-запросов: 78 шт.
Исходный размер: 110812; Сжатая: 21730